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 Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to