mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-27 19:01:33 +02:00
[lantiq] allow to load only 1 usb port on AR9 / VR9
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34700 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
553786683f
commit
36e626f26d
@ -305,6 +305,8 @@ static int ifxusb_driver_probe(struct platform_device *_pdev)
|
|||||||
int retval = 0;
|
int retval = 0;
|
||||||
struct device_node *np;
|
struct device_node *np;
|
||||||
int gpio_count;
|
int gpio_count;
|
||||||
|
u32 port_mask = 0x1;
|
||||||
|
|
||||||
#ifdef __IS_DANUBE__
|
#ifdef __IS_DANUBE__
|
||||||
np = of_find_compatible_node(NULL, NULL, "lantiq,ifxhcd-danube");
|
np = of_find_compatible_node(NULL, NULL, "lantiq,ifxhcd-danube");
|
||||||
#elif defined __IS_AMAZON_SE__
|
#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");
|
dev_err(&_pdev->dev, "failed to find hcd device node\n");
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
|
of_property_read_u32(np, "lantiq,portmask", &port_mask);
|
||||||
// Parsing and store the parameters
|
// Parsing and store the parameters
|
||||||
IFX_DEBUGPL(DBG_ENTRY, "%s() %d\n", __func__, __LINE__ );
|
IFX_DEBUGPL(DBG_ENTRY, "%s() %d\n", __func__, __LINE__ );
|
||||||
parse_parms();
|
parse_parms();
|
||||||
@ -349,6 +351,7 @@ static int ifxusb_driver_probe(struct platform_device *_pdev)
|
|||||||
ifxusb_hcd_1.dev=&_pdev->dev;
|
ifxusb_hcd_1.dev=&_pdev->dev;
|
||||||
ifxusb_hcd_2.dev=&_pdev->dev;
|
ifxusb_hcd_2.dev=&_pdev->dev;
|
||||||
|
|
||||||
|
if (port_mask & 0x1) {
|
||||||
retval = ifxusb_driver_probe_h(&ifxusb_hcd_1,
|
retval = ifxusb_driver_probe_h(&ifxusb_hcd_1,
|
||||||
IFXUSB1_IRQ,
|
IFXUSB1_IRQ,
|
||||||
IFXUSB1_IOMEM_BASE,
|
IFXUSB1_IOMEM_BASE,
|
||||||
@ -357,7 +360,9 @@ static int ifxusb_driver_probe(struct platform_device *_pdev)
|
|||||||
);
|
);
|
||||||
if(retval)
|
if(retval)
|
||||||
goto ifxusb_driver_probe_fail;
|
goto ifxusb_driver_probe_fail;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (port_mask & 0x2) {
|
||||||
retval = ifxusb_driver_probe_h(&ifxusb_hcd_2,
|
retval = ifxusb_driver_probe_h(&ifxusb_hcd_2,
|
||||||
IFXUSB2_IRQ,
|
IFXUSB2_IRQ,
|
||||||
IFXUSB2_IOMEM_BASE,
|
IFXUSB2_IOMEM_BASE,
|
||||||
@ -366,7 +371,7 @@ static int ifxusb_driver_probe(struct platform_device *_pdev)
|
|||||||
);
|
);
|
||||||
if(retval)
|
if(retval)
|
||||||
goto ifxusb_driver_probe_fail;
|
goto ifxusb_driver_probe_fail;
|
||||||
|
}
|
||||||
#elif defined(__IS_FIRST__)
|
#elif defined(__IS_FIRST__)
|
||||||
memset(&ifxusb_hcd, 0, sizeof(ifxhcd_hcd_t));
|
memset(&ifxusb_hcd, 0, sizeof(ifxhcd_hcd_t));
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user