[Bug 229732] Re: USB Keyboard drivers not loaded in initramfs

Peter Cordes peter at cordes.ca
Wed Sep 10 01:25:55 UTC 2008


I booted a machine with a USB and a PS/2 keyboard from an i386 Intrepid alpha5 USB drive, with break=premount.
 panic() should run (after the modprobe for ps/2 keyboards):

if ! grep -q '^H:.*kbd' /proc/bus/input/devices ; then
# no keyboard?  Try USB.
  modprobe uhci-hcd
  modprobe ohci-hcd
  modprobe usbhid
fi

 The line we want to match with grep is
H: Handlers=kbd 
(that line has a trailing space.)
In a fully running kernel, the line is e.g.
H: Handlers=kbd event1

 It's ok to load both USB modules, esp. since this only happens with
break=whatever, or some other panic.  So they won't be loaded for most
people's normal boots.  When we're trying handle errors, it's better to
be safe.  And it won't load anything extra if a keyboard of any kind is
known to the kernel, thanks to grep on /proc/bus/input/devices.

 I'm not aware of USB host drivers other than ohci and uhci;  They
should work for almost all hardware ever.  ehci-hcd isn't needed for
keyboards, and is not sufficient for using them.  I guess it _only_
handles USB2.0 HighSpeed devices.

 After modprobing both USB HCD drivers, I exitted from the
break=premount shell, and the boot continued normally from my USB drive.
ehci-hcd was loaded properly and both keyboards work after boot.  (K8V
mobo, Via K8T800 chipset.)

-- 
USB Keyboard drivers not loaded in initramfs
https://bugs.launchpad.net/bugs/229732
You received this bug notification because you are a member of Kernel
Bugs, which is subscribed to initramfs-tools in ubuntu.




More information about the kernel-bugs mailing list