Further parallelize USB init by launching a thread per usb port.
authorKevin O'Connor <kevin@koconnor.net>
Wed, 10 Mar 2010 00:58:23 +0000 (19:58 -0500)
committerKevin O'Connor <kevin@koconnor.net>
Wed, 10 Mar 2010 00:58:23 +0000 (19:58 -0500)
commit8ebcac023dad947a5229dce39e5864bbceeb18f3
tree3107052860fb815111a9237ebfa9908ce64f6dbe
parente9086652b3901df4ff29bdd5eb095d0e3b8c349a
Further parallelize USB init by launching a thread per usb port.

Run a thread per usb port in addition to the existing thread per usb
controller.  This can reduce total boot time by allowing multiple USB
devices on the same controller to initialize in parallel.  It also
makes startup time for critical devices (eg, the keyboard) less
dependent on which port they are plugged into.
src/usb-hub.c
src/usb-hub.h
src/usb-ohci.c
src/usb-uhci.c
src/usb.c
src/usb.h