diff -p -up mkinitrd-6.0.28/mkinitrd.kbd mkinitrd-6.0.28/mkinitrd --- mkinitrd-6.0.28/mkinitrd.kbd 2008-02-13 16:09:47.000000000 +0100 +++ mkinitrd-6.0.28/mkinitrd 2008-02-13 16:10:21.000000000 +0100 @@ -1123,6 +1123,23 @@ for n in $PREMODS; do findmodule $n done +kbddrivers="$(awk ' + BEGIN {IGNORECASE=1} + /Name=.*keyboard/ {k=1;next} + /Name=/ {k=0;next} + /Phys=isa/ {ph="ps2";next} + /Phys=usb/ {ph="usb";next} + /Phys=/ {ph="UNKNOWN";next} + /Handlers=.*kbd/ && k == 1 {print ph} + ' /proc/bus/input/devices)" +if [ -z "${kbddrivers##*ps2*}" ]; then + findmodule -atkbd + findmodule -i8042 +elif [ -z "${kbddrivers##*usb*}" ]; then + withusb=1 + findmodule -usbhid +fi + if [ "$withusb" == "1" ]; then findmodule ehci-hcd findmodule ohci-hcd