summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/ether.c
diff options
context:
space:
mode:
authorPeter Chen <peter.chen@freescale.com>2013-09-23 11:20:08 +0800
committerNitin Garg <nitin.garg@freescale.com>2015-04-14 14:01:51 -0500
commit89931eda832db8e42038d3593163a8579d581f29 (patch)
treef7e0f49ae036c9db45d165bb3f26603aab250245 /drivers/usb/gadget/ether.c
parent1dac5bb977be0ecfd98cab8d1fbb3ce6cb6b090c (diff)
ENGR00320792-3 usb: gadget: mark init as late_initcall
Since we introduce -EPROBE_DEFER for udc driver, it will be probed at late_initcall if it is defered. When the gadget is built in, it will return "couldn't find an available UDC" at such case. That's the problem we met at below link: http://marc.info/?l=linux-usb&m=137706435611447&w=2 We have no driver's probe at gadget driver, so we can't return -EPROBE_DEFER. And it is also not suitable to defer udc_bind_to_driver if the udc is not found temporarily, since it is hard to decide the return value for usb_gadget_probe_driver. Due to above reasons, mark gadget's init as late_initcall may be a moderate solution. Signed-off-by: Peter Chen <peter.chen@freescale.com>
Diffstat (limited to 'drivers/usb/gadget/ether.c')
-rw-r--r--drivers/usb/gadget/ether.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c
index c1c113ef950c..e0722e9a843c 100644
--- a/drivers/usb/gadget/ether.c
+++ b/drivers/usb/gadget/ether.c
@@ -483,7 +483,7 @@ static int __init init(void)
{
return usb_composite_probe(&eth_driver);
}
-module_init(init);
+late_initcall(init);
static void __exit cleanup(void)
{