Laptop keyboard stops working after kernel upgrade

Last summer, I purchased a brand new laptop that came with FreeDOS. The model and specs of the laptop are:

  • HP 14-em0xxx
  • AMD Ryzen 7730U APU
  • 512GB SSD
  • 8GB DDR4 RAM

I wanted to go Linux this time, so no dual boot with Windows has ever happened on the device. Additionally, secure boot is disabled in the bios. In the summer of 2023, I downloaded Zorin 16.2 Core and installed on the laptop. Everything worked fine until I ran sudo apt update and sudo apt upgrade which caused the kernel to upgrade. After upgrade and a reboot, the onboard keyboard stopped working.

At that time, I tried Ubuntu 22, Ubuntu 23, and recently Zorin 17 Pro. In all these OS, the onboard keyboard does not function at all on LiveUSB and on login screen. I can use the onboard keyboard to get into bios and move around so I think this is a kernel issue.

Currently, I am still on Zorin 16 and was able to keep keyboard working by running sudo apt-mark hold <package_name> on these 6 packages:

  • linux-generic-hwe-20.04
  • linux-headers-5.15.0-56-generic
  • linux-headers-generic-hwe-20.04
  • linux-hwe-5.15-headers-5.15.0-56
  • linux-image-5.15.0-56-generic
  • linux-image-generic-hwe-20.04

As you might guess, running uname -r gives:

5.15.0-56-generic

At the time of writing, kernel upgrades to 5.15.0-94 if unlocked. Before that, I tried upgrading to 5.15.0-76 and 5.15.0-83 which kept breaking the keyboard so I kept rolling back.

I got Zorin 17 Pro for my desktop pc and wanted to upgrade my laptop as well, thinking that problem would be resolved by now. The laptop keyboard still does not work on Zorin 17 installation USB. Running uname -r on Zorin 17 gives 6.2.0-39-generic. So, the issue still persists even on a much newer kernel.

Attempts to debug so far

On kernel 5.15.0-56-generic where the keyboard works:

xinput -list

⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ Logitech M705                           	id=8	[slave  pointer  (2)]
⎜   ↳ ELAN07B8:00 04F3:31A5 Mouse             	id=10	[slave  pointer  (2)]
⎜   ↳ ELAN07B8:00 04F3:31A5 Touchpad          	id=11	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Video Bus                               	id=6	[slave  keyboard (3)]
    ↳ Power Button                            	id=7	[slave  keyboard (3)]
    ↳ HP True Vision HD Camera: HP Tr         	id=9	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=12	[slave  keyboard (3)]
    ↳ HP WMI hotkeys                          	id=13	[slave  keyboard (3)]

After 5.15 kernel upgrade or on Zorin 17, running the same command has no entry HP True Vision HD Camera: HP Tr id=9 [slave keyboard (3)]:

xinput -list

⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ SONiX USB Keyboard Consumer Control     	id=10	[slave  pointer  (2)]
⎜   ↳ ELAN07B8:00 04F3:31A5 Mouse             	id=12	[slave  pointer  (2)]
⎜   ↳ ELAN07B8:00 04F3:31A5 Touchpad          	id=13	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Video Bus                               	id=6	[slave  keyboard (3)]
    ↳ Power Button                            	id=7	[slave  keyboard (3)]
    ↳ HP True Vision HD Camera: HP Tr         	id=8	[slave  keyboard (3)]
    ↳ SONiX USB Keyboard                      	id=9	[slave  keyboard (3)]
    ↳ SONiX USB Keyboard System Control       	id=11	[slave  keyboard (3)]
    ↳ HP WMI hotkeys                          	id=14	[slave  keyboard (3)]
    ↳ SONiX USB Keyboard Consumer Control     	id=15	[slave  keyboard (3)]

SONIX is the external USB keyboard I connected to be able to type something because the onboard keyboard does not work and it disappears.

Another similar command sudo dmesg | grep i8042.

Zorin 16 5.15.0-56:

[    1.060549] i8042: PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1
[    1.060551] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
[    1.061456] serio: i8042 KBD port at 0x60,0x64 irq 1
[    1.069147] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2

Zorin 16 5.15.0-94:

[    1.072246] i8042: PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1
[    1.072248] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
[    1.073150] serio: i8042 KBD port at 0x60,0x64 irq 1

Zorin 17 6.2.0-39:

[    0.851529] i8042: PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1
[    0.851532] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
[    0.852503] serio: i8042 KBD port at 0x60,0x64 irq 1

The keyboard is not present on newer kernels.

What have I tried so far

Locking the kernel is the only "solution" I managed to find. However, I tried these:

The response says that this may work if cat /sys/class/dmi/id/chassis_type returns 10. My machine also returns 10 in all kernels but only on 5.15.0.56 keyboard is functional.

  • sudo apt install xserver-xorg-input-all

I tried running this command when the keyboard is not functional, but it returns:

xserver-xorg-input-all is already the newest version (1:7.7+19ubuntu14).
xserver-xorg-input-all set to manually installed.

and still no function.

I also tried adding some kernel parameters, but I did not systematically record the results so I am not posting those and I will be more than happy to try them again if I can get some help on which commands should I run for detailed debugging.

This was a rather long one, but I wanted to provide as much details as possible.

Did You tried it on Zorin 17 with the 6.5 Kernel? Zorin 17 comes with the 6.2 Kernel but got an Update in the Past to the 6.5 Kernel.

Sounds like a driver issue. Try sudo ubuntu-drivers install and then the upgrade. If it works, great.

If not, there have been issues with the synaptic driver. You could try sudo apt remove xserver-xorg-input-synaptics.

Both may require a reboot to take effect.

I tried both with reboots, but sadly nothing changed.

Updating the kernel to 6.5 finally fixed the problem. Thank you for your suggestion, I almost gave up trying to install Zorin 17 after trying so many kernels.

I can confirm that keyboard functions with no issues on kernel 6.5.0-18-generic. Hope it stays that way.

2 Likes

I'm happy that it works for You.