1. Please describe the problem: With kernels 5.13.x kernels, I'm unable to enter LUKS password from the physical keyboard and boot the system. 2. What is the Version-Release number of the kernel: 5.13.8-200.fc34.aarch64 3. Did it work previously in Fedora? If so, what kernel version did the issue *first* appear? Old kernels are available for download at https://koji.fedoraproject.org/koji/packageinfo?packageID=8 : It works with 5.12.x kernels up to 5.12.17. It stops working with 5.13.x. The first I tried was: 5.13.4-200.fc34.aarch64 Same issue with 5.13.6 and 5.13.8. 4. Can you reproduce this issue? If so, please provide the steps to reproduce the issue below: Yes, always. 1. Install Fedora 34 with LUKS-encrypted rootfs. 2. Boot any 5.13.x kernel. 3. Wait for LUKS password prompt. 4. Try typing the password. 5. Does this problem occur with the latest Rawhide kernel? To install the Rawhide kernel, run ``sudo dnf install fedora-repos-rawhide`` followed by ``sudo dnf update --enablerepo=rawhide kernel``: Yes. 6. Are you running any modules that not shipped with directly Fedora's kernel?: No. 7. Please attach the kernel logs. You can get the complete kernel log for a boot with ``journalctl --no-hostname -k > dmesg.txt``. If the issue occurred on a previous boot, use the journalctl ``-b`` flag.
Created attachment 1811035 [details] kernel-5.12.17 dmesg (working correctly)
Created attachment 1811043 [details] kernel-5.13.8 dmesg (not working)
Comparing both dmesgs, I noticed this: 5.12.17: [ 7.042959] kernel: ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 7.074197] kernel: ohci-platform: OHCI generic platform driver [ 7.299620] kernel: ohci-platform fe3a0000.usb: Generic Platform OHCI controller [ 7.300078] kernel: ohci-platform fe3a0000.usb: new USB bus registered, assigned bus number 2 [ 7.300308] kernel: ohci-platform fe3a0000.usb: irq 35, io mem 0xfe3a0000 [ 7.370385] kernel: usb usb2: Product: Generic Platform OHCI controller [ 7.370397] kernel: usb usb2: Manufacturer: Linux 5.12.17-300.fc34.aarch64 ohci_hcd [ 7.377198] kernel: ohci-platform fe3e0000.usb: Generic Platform OHCI controller [ 7.377717] kernel: ohci-platform fe3e0000.usb: new USB bus registered, assigned bus number 3 [ 7.377940] kernel: ohci-platform fe3e0000.usb: irq 37, io mem 0xfe3e0000 [ 7.452156] kernel: usb usb3: Product: Generic Platform OHCI controller [ 7.452167] kernel: usb usb3: Manufacturer: Linux 5.12.17-300.fc34.aarch64 ohci_hcd [ 8.486221] kernel: usb 2-1: new low-speed USB device number 2 using ohci-platform 5.13.8: [ 8.437241] kernel: ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 8.499968] kernel: ohci-platform: OHCI generic platform driver [ 8.905656] kernel: ohci-platform fe3e0000.usb: Generic Platform OHCI controller [ 8.906693] kernel: ohci-platform fe3e0000.usb: new USB bus registered, assigned bus number 2 [ 8.907618] kernel: ohci-platform fe3e0000.usb: irq 37, io mem 0xfe3e0000 [ 8.977947] kernel: usb usb2: Product: Generic Platform OHCI controller [ 8.977957] kernel: usb usb2: Manufacturer: Linux 5.13.8-200.fc34.aarch64 ohci_hcd [ 60.216691] kernel: ohci-platform fe3a0000.usb: Generic Platform OHCI controller [ 60.219612] kernel: ohci-platform fe3a0000.usb: new USB bus registered, assigned bus number 5 [ 60.222407] kernel: ohci-platform fe3a0000.usb: irq 35, io mem 0xfe3a0000 [ 60.304603] kernel: usb usb5: Product: Generic Platform OHCI controller [ 60.307821] kernel: usb usb5: Manufacturer: Linux 5.13.8-200.fc34.aarch64 ohci_hcd [ 61.193513] kernel: usb 5-1: new low-speed USB device number 2 using ohci-platform There are two USB 1.1 hubs: one at 0xfe3a0000 and one at 0xfe3e0000 5.12.17 initializes them in the above order and the keyboard works, while 5.13.8 seems to init the one at 0xfe3e0000 before and the one at 0xfe3a0000 after rootfs decryption. The keyboard is connected to the one at 0xfe3a0000, which would to explain the non-working keyboard. $ lsusb.py -i usb1 1d6b:0002 09 1IF [USB 2.00, 480 Mbps, 0mA] (ehci_hcd fe3c0000.usb) hub 1-1 05e3:0608 09 1IF [USB 2.00, 480 Mbps, 100mA] (Genesys Logic, Inc. Hub) hub 1-1.2 0c45:6321 ef 2IFs [USB 2.00, 480 Mbps, 500mA] (Sonix Technology Co., Ltd. USB Camera) 1-1.2:1.0 (IF) 0e:01:00 1EP (Video) uvcvideo video4linux/video1 video4linux/video0 input/input2 1-1.2:1.1 (IF) 0e:02:00 0EPs (Video) uvcvideo usb2 1d6b:0001 09 1IF [USB 1.10, 12 Mbps, 0mA] (Linux 5.13.8-200.fc34.aarch64 ohci_hcd Generic Platform OHCI controller fe3e0000.usb) hub usb3 1d6b:0002 09 1IF [USB 2.00, 480 Mbps, 0mA] (xhci-hcd xhci-hcd.1.auto) hub usb4 1d6b:0003 09 1IF [USB 3.00, 5000 Mbps, 0mA] (xhci-hcd xhci-hcd.1.auto) hub usb5 1d6b:0001 09 1IF [USB 1.10, 12 Mbps, 0mA] (Linux 5.13.8-200.fc34.aarch64 ohci_hcd Generic Platform OHCI controller fe3a0000.usb) hub 5-1 258a:001e 00 2IFs [USB 1.10, 1.5 Mbps, 100mA] (HAILUCK CO.,LTD USB KEYBOARD) 5-1:1.0 (IF) 03:01:01 1EP (Keyboard) usbhid hidraw0 (hid-generic) input4 (hid-generic) 5-1:1.1 (IF) 03:00:00 1EP (None) usbhid hidraw1 (hid-multitouch) input14 input12 input10 input13 input11 (hid-multitouch) usb6 1d6b:0002 09 1IF [USB 2.00, 480 Mbps, 0mA] (xhci-hcd xhci-hcd.2.auto) hub usb7 1d6b:0003 09 1IF [USB 3.00, 5000 Mbps, 0mA] (xhci-hcd xhci-hcd.2.auto) hub usb8 1d6b:0002 09 1IF [USB 2.00, 480 Mbps, 0mA] (ehci_hcd fe380000.usb) hub
Still an issue with 5.13.10-200.fc34.
Created attachment 1815312 [details] kernel-5.14.0-0.rc6.46 dmesg (not working) 5.14.0 rc6 from F35 exhibits the same issue: non-functional keyboard at the LUKS prompt. I had to symlink /boot/dtb to 5.13.10 (as advised by pbrobinson), otherwise there's no display on the LCD.
FWIW, the issue is reproducible even with the first 5.13 kernel from koji, i.e. 5.13.0-0.rc0.20210428gitacd3d2859453.2.fc35.aarch64 . $ dmesg|grep -i ohci [ 28.758000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 28.879182] ohci-platform: OHCI generic platform driver [ 29.315780] ohci-platform fe3e0000.usb: Generic Platform OHCI controller [ 29.328639] ohci-platform fe3e0000.usb: new USB bus registered, assigned bus number 2 [ 29.329776] ohci-platform fe3e0000.usb: irq 37, io mem 0xfe3e0000 [ 29.423716] usb usb2: Product: Generic Platform OHCI controller [ 29.423739] usb usb2: Manufacturer: Linux 5.13.0-0.rc0.20210428gitacd3d2859453.2.fc35.aarch64 ohci_hcd (LUKS password prompt here) [ 531.041887] ohci-platform fe3a0000.usb: Generic Platform OHCI controller [ 531.079618] ohci-platform fe3a0000.usb: new USB bus registered, assigned bus number 5 [ 531.080598] ohci-platform fe3a0000.usb: irq 35, io mem 0xfe3a0000 [ 531.155073] usb usb5: Product: Generic Platform OHCI controller [ 531.155089] usb usb5: Manufacturer: Linux 5.13.0-0.rc0.20210428gitacd3d2859453.2.fc35.aarch64 ohci_hcd [ 532.039822] usb 5-1: new low-speed USB device number 2 using ohci-platform
As part of some general F35 testing, I checked this on an uefi/rpi4 and the luks prompt works, so its seems platform specific. Given they are both apparently OHCI's supported by the same platform I'm guessing there is a clock/reset/etc driver that the second one needs before it can be initialized that isn't being included in the initrd. If you drop "hostonly=no" into a file in /etc/dracut.conf.d and rebuild the initrd, does that solve the problem? Manually if you can track the dependencies for the second controller and assure all the loaded modules end up in the initrd (lsinitrd is your friend) that might help. If the individual driver can be determined then it can be added as an extra "add_drivers+=" option.
(In reply to Jeremy Linton from comment #7) > As part of some general F35 testing, I checked this on an uefi/rpi4 and the > luks prompt works, so its seems platform specific. Given they are both > apparently OHCI's supported by the same platform I'm guessing there is a > clock/reset/etc driver that the second one needs before it can be > initialized that isn't being included in the initrd. This would have to be something new in 5.13 and I have no idea where to start looking and for what. > If you drop "hostonly=no" into a file in /etc/dracut.conf.d and rebuild the > initrd, does that solve the problem? It doesn't. > Manually if you can track the dependencies for the second controller and > assure all the loaded modules end up in the initrd (lsinitrd is your friend) > that might help. If the individual driver can be determined then it can be > added as an extra "add_drivers+=" option. As far as I can tell, all the drivers are already included in the initrd. # depmod -an|grep '[eou]hci' | grep -v alias |sort kernel/drivers/usb/host/ehci-fsl.ko.xz: kernel/drivers/usb/host/ehci-orion.ko.xz: kernel/drivers/usb/host/ehci-platform.ko.xz: kernel/drivers/usb/host/ohci-hcd.ko.xz: kernel/drivers/usb/host/ohci-pci.ko.xz: kernel/drivers/usb/host/ohci-hcd.ko.xz kernel/drivers/usb/host/ohci-platform.ko.xz: kernel/drivers/usb/host/ohci-hcd.ko.xz kernel/drivers/usb/host/uhci-hcd.ko.xz: softdep ohci_pci pre: ehci_pci softdep uhci_hcd pre: ehci_pci # lsinitrd /boot/initramfs-5.12.19-300.fc34.aarch64.img |grep '[eou]hci' -rw-r--r-- 1 root root 4664 Jul 9 17:19 usr/lib/modules/5.12.19-300.fc34.aarch64/kernel/drivers/usb/host/ehci-fsl.ko.xz -rw-r--r-- 1 root root 3676 Jul 9 17:19 usr/lib/modules/5.12.19-300.fc34.aarch64/kernel/drivers/usb/host/ehci-orion.ko.xz -rw-r--r-- 1 root root 5132 Jul 9 17:19 usr/lib/modules/5.12.19-300.fc34.aarch64/kernel/drivers/usb/host/ehci-platform.ko.xz -rw-r--r-- 1 root root 24316 Jul 9 17:19 usr/lib/modules/5.12.19-300.fc34.aarch64/kernel/drivers/usb/host/ohci-hcd.ko.xz -rw-r--r-- 1 root root 3920 Jul 9 17:19 usr/lib/modules/5.12.19-300.fc34.aarch64/kernel/drivers/usb/host/ohci-pci.ko.xz -rw-r--r-- 1 root root 3916 Jul 9 17:19 usr/lib/modules/5.12.19-300.fc34.aarch64/kernel/drivers/usb/host/ohci-platform.ko.xz -rw-r--r-- 1 root root 22284 Jul 9 17:19 usr/lib/modules/5.12.19-300.fc34.aarch64/kernel/drivers/usb/host/uhci-hcd.ko.xz # lsinitrd /boot/initramfs-5.14.10-200.fc34.aarch64.img |grep '[eou]hci' -rw-r--r-- 1 root root 4668 Jul 9 17:19 usr/lib/modules/5.14.10-200.fc34.aarch64/kernel/drivers/usb/host/ehci-fsl.ko.xz -rw-r--r-- 1 root root 3692 Jul 9 17:19 usr/lib/modules/5.14.10-200.fc34.aarch64/kernel/drivers/usb/host/ehci-orion.ko.xz -rw-r--r-- 1 root root 5160 Jul 9 17:19 usr/lib/modules/5.14.10-200.fc34.aarch64/kernel/drivers/usb/host/ehci-platform.ko.xz -rw-r--r-- 1 root root 24272 Jul 9 17:19 usr/lib/modules/5.14.10-200.fc34.aarch64/kernel/drivers/usb/host/ohci-hcd.ko.xz -rw-r--r-- 1 root root 3924 Jul 9 17:19 usr/lib/modules/5.14.10-200.fc34.aarch64/kernel/drivers/usb/host/ohci-pci.ko.xz -rw-r--r-- 1 root root 3928 Jul 9 17:19 usr/lib/modules/5.14.10-200.fc34.aarch64/kernel/drivers/usb/host/ohci-platform.ko.xz -rw-r--r-- 1 root root 22340 Jul 9 17:19 usr/lib/modules/5.14.10-200.fc34.aarch64/kernel/drivers/usb/host/uhci-hcd.ko.xz
Looks like it's fixed in F35. kernel 5.14.12-300.fc35.aarch64 initializes both OHCI controllers and lets me type the LUKS password just fine: $ dmesg |grep -i -E 'ohci|hailuck' [ 7.651910] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver [ 7.666624] ohci-platform: OHCI generic platform driver [ 7.855124] ohci-platform fe3a0000.usb: Generic Platform OHCI controller [ 7.855501] ohci-platform fe3a0000.usb: new USB bus registered, assigned bus number 2 [ 7.855688] ohci-platform fe3a0000.usb: irq 35, io mem 0xfe3a0000 [ 7.925708] usb usb2: Product: Generic Platform OHCI controller [ 7.925720] usb usb2: Manufacturer: Linux 5.14.12-300.fc35.aarch64 ohci_hcd [ 7.930983] ohci-platform fe3e0000.usb: Generic Platform OHCI controller [ 7.932871] ohci-platform fe3e0000.usb: new USB bus registered, assigned bus number 3 [ 7.933130] ohci-platform fe3e0000.usb: irq 37, io mem 0xfe3e0000 [ 8.005660] usb usb3: Product: Generic Platform OHCI controller [ 8.005672] usb usb3: Manufacturer: Linux 5.14.12-300.fc35.aarch64 ohci_hcd [ 9.071244] usb 2-1: new low-speed USB device number 2 using ohci-platform [ 9.419346] usb 2-1: Manufacturer: HAILUCK CO.,LTD [ 9.434062] input: HAILUCK CO.,LTD USB KEYBOARD as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.0/0003:258A:001E.0001/input/input2 [ 9.512848] hid-generic 0003:258A:001E.0001: input,hidraw0: USB HID v1.10 Keyboard [HAILUCK CO.,LTD USB KEYBOARD] on usb-fe3a0000.usb-1/input0 [ 9.537671] input: HAILUCK CO.,LTD USB KEYBOARD Mouse as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input3 [ 9.547841] input: HAILUCK CO.,LTD USB KEYBOARD Touchpad as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input4 [ 9.548736] input: HAILUCK CO.,LTD USB KEYBOARD System Control as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input5 [ 9.621958] input: HAILUCK CO.,LTD USB KEYBOARD Consumer Control as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input6 [ 9.622582] input: HAILUCK CO.,LTD USB KEYBOARD Wireless Radio Control as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input7 [ 9.623537] hid-generic 0003:258A:001E.0002: input,hiddev96,hidraw1: USB HID v1.10 Mouse [HAILUCK CO.,LTD USB KEYBOARD] on usb-fe3a0000.usb-1/input1 [ 10.200062] input: HAILUCK CO.,LTD USB KEYBOARD Mouse as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input8 [ 10.200910] input: HAILUCK CO.,LTD USB KEYBOARD Touchpad as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input9 [ 10.202104] input: HAILUCK CO.,LTD USB KEYBOARD System Control as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input10 [ 10.272187] input: HAILUCK CO.,LTD USB KEYBOARD Consumer Control as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input11 [ 10.272915] input: HAILUCK CO.,LTD USB KEYBOARD Wireless Radio Control as /devices/platform/fe3a0000.usb/usb2/2-1/2-1:1.1/0003:258A:001E.0002/input/input12 [ 10.274482] hid-multitouch 0003:258A:001E.0002: input,hiddev96,hidraw1: USB HID v1.10 Mouse [HAILUCK CO.,LTD USB KEYBOARD] on usb-fe3a0000.usb-1/input1 Yay!
And I did rebuild the initrd with hostonly=yes, too. It still works.
I guess this can be closed as fixed either in 5.14.11 or 5.14.12. F36's 5.17.1 works fine, too.
(In reply to Dominik 'Rathann' Mierzejewski from comment #11) > I guess this can be closed as fixed either in 5.14.11 or 5.14.12. F36's > 5.17.1 works fine, too. Thanks for letting us know this is fixed now, closing.