About me

I'm a web and software developer from Kaohsiung, Taiwan.
I design and implement user interfaces, also contribute to open source projects.

2008年7月16日 星期三

Speed up the boot time of usb device

As you know it takes a while to initialize usb device, and it's also depends on the usb controller chip.

So I make a mix test recently with the following method:
  • built-in usb/hcd/scsi support
  • modprobe kernel module by script
  • use udevd
  • replace udevd with busybox/mdev
  • manually create device node
  • use udevtrigger --subsystem-match param
  • send uevent manually to /sys/bus/*/devieces/
The best result so far is around 10 seconds, including initialize a usb device, create device node and mount rootfs.

The next performance bottleneck to be fix before xPUD 0.6 release is the firefox start time, but it looks like I/O bound, let's see what can we do for it. :-)