allow to load only 1 usb port on AR9 / VR9

SVN-Revision: 34700
owl
John Crispin 2012-12-15 11:01:05 +00:00
parent 3dac521a49
commit 66daf1ef61
1 changed files with 13 additions and 8 deletions

View File

@ -305,6 +305,8 @@ static int ifxusb_driver_probe(struct platform_device *_pdev)
int retval = 0;
struct device_node *np;
int gpio_count;
u32 port_mask = 0x1;
#ifdef __IS_DANUBE__
np = of_find_compatible_node(NULL, NULL, "lantiq,ifxhcd-danube");
#elif defined __IS_AMAZON_SE__
@ -318,7 +320,7 @@ static int ifxusb_driver_probe(struct platform_device *_pdev)
dev_err(&_pdev->dev, "failed to find hcd device node\n");
return -ENODEV;
}
of_property_read_u32(np, "lantiq,portmask", &port_mask);
// Parsing and store the parameters
IFX_DEBUGPL(DBG_ENTRY, "%s() %d\n", __func__, __LINE__ );
parse_parms();
@ -349,24 +351,27 @@ static int ifxusb_driver_probe(struct platform_device *_pdev)
ifxusb_hcd_1.dev=&_pdev->dev;
ifxusb_hcd_2.dev=&_pdev->dev;
retval = ifxusb_driver_probe_h(&ifxusb_hcd_1,
if (port_mask & 0x1) {
retval = ifxusb_driver_probe_h(&ifxusb_hcd_1,
IFXUSB1_IRQ,
IFXUSB1_IOMEM_BASE,
IFXUSB1_FIFOMEM_BASE,
IFXUSB1_FIFODBG_BASE
);
if(retval)
goto ifxusb_driver_probe_fail;
if(retval)
goto ifxusb_driver_probe_fail;
}
retval = ifxusb_driver_probe_h(&ifxusb_hcd_2,
if (port_mask & 0x2) {
retval = ifxusb_driver_probe_h(&ifxusb_hcd_2,
IFXUSB2_IRQ,
IFXUSB2_IOMEM_BASE,
IFXUSB2_FIFOMEM_BASE,
IFXUSB2_FIFODBG_BASE
);
if(retval)
goto ifxusb_driver_probe_fail;
if(retval)
goto ifxusb_driver_probe_fail;
}
#elif defined(__IS_FIRST__)
memset(&ifxusb_hcd, 0, sizeof(ifxhcd_hcd_t));