]> code.ossystems Code Review - openembedded-core.git/blob
75d4151b3b455a2348b637c671b521b8e34cdb38
[openembedded-core.git] /
1 From d1a26186ee222329a797bb0b2c8e2b5bc7d94d42 Mon Sep 17 00:00:00 2001
2 From: Arjan van de Ven <arjan@linux.intel.com>
3 Date: Fri, 18 Jul 2008 15:16:53 -0700
4 Subject: [PATCH] fastboot: turn the USB hostcontroller initcalls into async initcalls
5
6 the USB host controller init calls take a long time, mostly due to a
7 "minimally 100 msec" delay *per port* during initialization.
8 These are prime candidates for going in parallel to everything else.
9
10 The USB device ordering is not affected by this due to the
11 serialized-within-eachother property of async initcalls.
12
13 Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
14 Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 ---
16  drivers/usb/host/ehci-hcd.c |    2 +-
17  drivers/usb/host/ohci-hcd.c |    2 +-
18  drivers/usb/host/uhci-hcd.c |    2 +-
19  3 files changed, 3 insertions(+), 3 deletions(-)
20
21 diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
22 index 369a8a5..8f84b17 100644
23 --- a/drivers/usb/host/ehci-hcd.c
24 +++ b/drivers/usb/host/ehci-hcd.c
25 @@ -1101,7 +1101,7 @@ clean0:
26  #endif
27         return retval;
28  }
29 -module_init(ehci_hcd_init);
30 +module_init_async(ehci_hcd_init);
31  
32  static void __exit ehci_hcd_cleanup(void)
33  {
34 diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
35 index a8160d6..e060ed1 100644
36 --- a/drivers/usb/host/ohci-hcd.c
37 +++ b/drivers/usb/host/ohci-hcd.c
38 @@ -1165,7 +1165,7 @@ static int __init ohci_hcd_mod_init(void)
39  
40         return retval;
41  }
42 -module_init(ohci_hcd_mod_init);
43 +module_init_async(ohci_hcd_mod_init);
44  
45  static void __exit ohci_hcd_mod_exit(void)
46  {
47 diff --git a/drivers/usb/host/uhci-hcd.c b/drivers/usb/host/uhci-hcd.c
48 index 3a7bfe7..f2a05ac 100644
49 --- a/drivers/usb/host/uhci-hcd.c
50 +++ b/drivers/usb/host/uhci-hcd.c
51 @@ -999,7 +999,7 @@ static void __exit uhci_hcd_cleanup(void)
52         kfree(errbuf);
53  }
54  
55 -module_init(uhci_hcd_init);
56 +module_init_async(uhci_hcd_init);
57  module_exit(uhci_hcd_cleanup);
58  
59  MODULE_AUTHOR(DRIVER_AUTHOR);
60 -- 
61 1.5.4.3
62