You are not logged in.

#1 2021-03-24 17:25:25

Mich1501
Member
Registered: 2021-03-24
Posts: 11

[SOLVED] Internal keyboard not working

Hi all,

I recently installed Arch on my Laptop (Asus UM425UA) and I can't get my keyboard to work in the tty.
Everything else seems to work fine and I can use an external USB keyboard, but this sadly defeats the purpose of a Laptop.

Here are some things I've tried:

  • Added module atkbd to MODULES in mkinitcpio.conf, as suggested on the ArchWiki.

  • Listed out all my input devices with libinput list-devices, see this pastebin, and checked if any of the devices generated output when pressing keys. None did.

The weird part is, if I reboot after booting into the Arch live ISO, my keyboard works fine, until I shutdown.
libinput list-devices shows an extra input device when I do this, as can be seen this pastebin.
This new device (AT Translated Set 2 Keyboard) seems to be my laptop keyboard.

Also, if needed, here is the output of dmesg:

Could you help me out with this problem?

Cheers,
Michiel

Last edited by Mich1501 (2021-04-09 12:55:41)

Offline

#2 2021-03-24 17:56:04

schard
Forum Moderator
From: Hannover
Registered: 2016-05-06
Posts: 1,992
Website

Re: [SOLVED] Internal keyboard not working

Did you install linux-firmware?


macro_rules! yolo { { $($tokens:tt)* } => { unsafe { $($tokens)* } }; }

Offline

#3 2021-03-24 18:32:01

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

I did. Just to be sure I reinstalled it, but to no avail.

Offline

#4 2021-03-24 22:07:57

seth
Member
Registered: 2012-09-03
Posts: 51,782

Re: [SOLVED] Internal keyboard not working

 640 [    0.382499] i8042: PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1
 641 [    0.382501] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
 642 [    0.384384] serio: i8042 KBD port at 0x60,0x64 irq 1
640 [    0.379830] i8042: PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1
 641 [    0.379831] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
 642 [    0.455615] nvme nvme0: 16/0/0 default/read/poll queues
 643 [    0.462386]  nvme0n1: p1 p2 p3 p4 p5 p6 p7
 644 [    0.904838] i8042: Can't read CTR while initializing i8042
 645 [    0.904846] i8042: probe of i8042 failed with error -5

https://www.linuxquestions.org/question … 175605956/ ?

Online

#5 2021-03-25 09:06:34

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

There doesn't seem to be a USB legacy support, or a similar option in my BIOS.

 i8042: Can't read CTR while initializing i8042 

I had looked this up before, but most sources said to just ignore it, if you don't have keyboard connected to PS/2. (I wish ignoring my problems would just fix them, but that's sadly not how this world works.)
Now that I have looked it up again, disabling USB emulation or USB legacy support have also been suggested as solution multiple times, but this isn't possible.

Offline

#6 2021-03-25 09:23:44

seth
Member
Registered: 2012-09-03
Posts: 51,782

Re: [SOLVED] Internal keyboard not working

Something about usb handover?
The proximity to a relevant deviation in the log (constant pattern?) and relation to "works after booting from usb" strongly point into that direction.

Online

#7 2021-03-25 09:25:09

schard
Forum Moderator
From: Hannover
Registered: 2016-05-06
Posts: 1,992
Website

Re: [SOLVED] Internal keyboard not working

Did you check the difference of lsmod between the live and installed system?
And the module is called atkbd, not aktbd.


macro_rules! yolo { { $($tokens:tt)* } => { unsafe { $($tokens)* } }; }

Offline

#8 2021-03-25 10:39:44

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

So the differences in lsmod between normal boot (left) and reboot after booting into live (right):

  • ∅ -> serio_raw

  • ∅ -> uas

  • usbhid -> usb_storage

and between normal boot (left) and live ISO (right):

  • ∅ -> af_alg

  • ∅ -> algif_aead

  • ∅ -> algif_hash

  • ∅ -> algif_skcipher

  • ∅ -> cbc

  • ∅ -> cdrom

  • ∅ -> cmac

  • ∅ -> des_generic

  • ∅ -> ecb

  • ∅ -> isofs

  • ∅ -> libdes

  • ∅ -> loop

  • ∅ -> md4

  • ∅ -> overlay

  • ∅ -> pkcs8_key_parser

  • ∅ -> serio_raw

  • ∅ -> speakup

  • ∅ -> speakup_soft

  • ∅ -> squashfs

  • ∅ -> uas

  • usbhid -> usb_storage

  • ∅ -> wl

I listed the differences by diffing the files created by:

 lsmod | sed '1d' | awk '{print $1}' | sort > some_file

Here are the raw lsmod outputs for normal, live ISO and reboot after live.

I tried adding serio_raw, uas and usb_storage to the modules list in mkinitcpio.conf and regenerating everything. Now the modules show up in lsmod, but nothing else has changed.

Woops, aktbd is a spellings error. I didn't make the same error in my mkinitcpio.conf. I'll edit the original post.

Last edited by Mich1501 (2021-03-25 10:40:51)

Offline

#9 2021-03-27 23:53:17

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

So out of pure desperation I decided to see if my keyboard would work on Ubuntu 20.10. It didn't.

However, I found this post on the Ubuntu forums. Which suggests that the kernel versions after 5.4.18 have the bug I mentioned above. So I downgraded my kernel to 5.3 and, lo and behold, my keyboard worked. This is a stupid outcome. I wanted to install Arch and I stranded on Ubuntu with an outdated kernel (even for that distro).

I don't want to leave it at that and will scour the web for answers to the following questions (after my deadlines):

  • What bug are they talking about in that forum post?

  • Why hasn't the bug been fixed in kernel 5.11?/*]

  • Is there a patch?

  • And if so, how can I apply it and get back to using Arch?

Please let me know if you have answers to any of these questions.

Thanks
Michiel

Last edited by Mich1501 (2021-03-27 23:56:16)

Offline

#10 2021-03-28 07:06:47

seth
Member
Registered: 2012-09-03
Posts: 51,782

Re: [SOLVED] Internal keyboard not working

I don't think  that thread specifically refers to a (known) bug - they just found that 5.4.x works and 5.5.x doesn't and (reasonably) inferred that there must be a bug.

Unfortunately there are MAAAAANY patches between two major kernel releases, so you'd have to bisect the kernel,
https://wiki.archlinux.org/index.php/Bi … s_with_Git
https://wiki.gentoo.org/wiki/Kernel_git-bisect

What if you blacklist asus_wmi, asus_nb_wmi and wmi?
https://wiki.archlinux.org/index.php/Ke … acklisting
Use the bin/true variant and be prepared that you might have to undo this offline (ie. booting a usb key)
This should™ work fine w/ ubuntu as well.

Online

#11 2021-03-28 09:30:52

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

seth wrote:

What if you blacklist asus_wmi, asus_nb_wmi and wmi?

I just tried it. At first wmi kept showing up in lsmod, but adding the kernel parameter module_blacklist=wmi fixed it.
It doesn't seem to do anything, everything behaves as before. What was the goal of blacklisting these modules?

For the kernel bisection, I guess I first have to pinpoint between which two version the problem starts occurring.
Will I run into trouble if adapt this ArchWiki article to using the kernel git repo, when trying to figure that out?

Last edited by Mich1501 (2021-03-28 09:55:22)

Offline

#12 2021-03-28 11:28:41

seth
Member
Registered: 2012-09-03
Posts: 51,782

Re: [SOLVED] Internal keyboard not working

To narrow the problem - if it was in the platform modules, that could have simplified things quite some.
Please undo the blacklisting.


I don't know whether you run into trouble, but you can ask when it happens ;-)
· Make sure that you have a spare kernel (eg. the lts one) that you can boot in case the bisection stage doesn't boot.
· You can narrow the problem w/o compilation by fetching kernels from the ALA.
! The kernel is (but for out-of-tree modules like eg. nvidia) mostly self-contained and save to downgrade BUT the mkinitcpio default compression was recently changed to zstd which is not supported by older kernels, https://archlinux.org/news/moving-to-zs … kinitcpio/
· If you opt for ABS be aware that you want to bisect the *kernel* git, not the package git.
https://wiki.archlinux.org/index.php/Ke … ild_System

Online

#13 2021-03-28 21:17:55

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

Update, the last kernel version on ALA that works for me is 5.9.14.arch1-1, the following version, 5.10.3.arch1-1, doesn't work anymore.

When I was downloading the kernel version from the 5 jan 2021, I got redirected through a couple of urls. The download was slow and in the end, the signature was incorrect, so I did not install it.
I have no idea whether this has any significance and/or should be reported, so here is the log.

Offline

#14 2021-04-04 15:45:58

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

I bisected the config file for compiling the kernel, in stead of the kernel itself and found commit 34bfe7d to be the troublesome commit. Sadly it is a big update that takes configuration options from Fedora's default kernel.
I'm stuck now on how I can figure out which options I should change back. It's also not really clear to me what these options mean. What's the difference between not setting an option, setting it to y and setting it to m?

Offline

#15 2021-04-04 16:23:00

progandy
Member
Registered: 2012-05-17
Posts: 5,203

Re: [SOLVED] Internal keyboard not working

unset should mean that the option is disabled. "m" means compiled as a module, "y" is inlcuded in the kernel itself.
To find out what an option means you can use for example https://cateee.net/lkddb/web-lkddb/

If you are not sure what to do, you can try to manually bisect those changes. (Using a binary search algorithm and always half the amount of options to test until you are left with the culprit)

Last edited by progandy (2021-04-04 16:31:04)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#16 2021-04-04 17:42:27

seth
Member
Registered: 2012-09-03
Posts: 51,782

Re: [SOLVED] Internal keyboard not working

The segment from "CONFIG_KEYBOARD_ATKBD=m" to "CONFIG_SERIAL_8250_RUNTIME_UARTS=32 looks interesting enough.
I'd revert those settings and see whether it "fixes" it, then bisect that (in case)

Online

#17 2021-04-09 00:09:53

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

Thanks for the tips! The segment you pointed at, Seth, was indeed where the problem was. I had to revert the following three settings:

  • CONFIG_KEYBOARD_ATKBD=y -> m

  • CONFIG_MOUSE_PS2=y -> m, this one is already reverted back in a later commit

  • CONFIG_SERIO=y -> m

Now that the problem has been located, should I report this as a bug?
If so, I've got some questions.
I guess I will have to use the Arch Linux Bugtracker.
Would this be low or medium severity?
Would it be enough to mention what machine I have, between which kernel versions the bug starts occurring, maybe the specific commit that introduced the error (although I don't know the name of the repo I got the config files from) and the specific setting changes that fixed it?
Which logs would be useful?

Offline

#18 2021-04-09 07:05:59

seth
Member
Registered: 2012-09-03
Posts: 51,782

Re: [SOLVED] Internal keyboard not working

I guess I will have to use the Arch Linux Bugtracker.

Yup.

Would this be low or medium severity?

Maintainers pick - all bugs are critical to the submitter. That's why they submit it ;-)

Would it be enough to mention what machine I have, between which kernel versions the bug starts occurring, maybe the specific commit that introduced the error (although I don't know the name of the repo I got the config files from) and the specific setting changes that fixed it?
Which logs would be useful?

I'd just say which changes broke your keyboard and point to this thread.

Given that the ps/2 module was already undone and there little benefit in compiling the modules into the kernel this should be a no brainer.
Though it's curious as to why it breaks things. Were those *modules* loaded implicitly in the older kernels at all?

Online

#19 2021-04-09 12:55:00

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

Thanks for all the help. I made the bug report and will update the title to solved.

Were those *modules* loaded implicitly in the older kernels at all?

I don't know for the older kernels, but on my patched kernel, both serio and atkbd get loaded (checked with lsmod).

Last edited by Mich1501 (2021-04-09 12:57:40)

Offline

#20 2021-06-30 11:13:12

beedaddy
Member
From: Germany
Registered: 2015-02-26
Posts: 20

Re: [SOLVED] Internal keyboard not working

I'm experiencing the same problem with a Fujitsu Lifebook U7410. @Mich1510 What's the status of your bug report? Do you have a link to it?

Last edited by beedaddy (2021-06-30 14:05:16)

Offline

#21 2021-06-30 11:48:53

Mich1501
Member
Registered: 2021-03-24
Posts: 11

Re: [SOLVED] Internal keyboard not working

The bug got resolved. You can find the report here: https://bugs.archlinux.org/task/70384 .

Offline

#22 2021-06-30 11:50:13

beedaddy
Member
From: Germany
Registered: 2015-02-26
Posts: 20

Re: [SOLVED] Internal keyboard not working

I see, thanks. So it seems to be a different issue here…

Offline

#23 2021-10-06 09:37:00

kristerv
Member
Registered: 2021-09-09
Posts: 8

Re: [SOLVED] Internal keyboard not working

Fellow UM425UA here. I don't seem to be as well versed in Arch as Mich, but I have installed Arch myself multiple times.

What is the easiest way to get this fix applied to my Arch? (besides waiting for the kernel to update, that bug doesn't seem to have a due date). Is the only option to compile Arch myself? I searched for what atkbd is, but the info is very cryptic.

Offline

#24 2021-10-06 11:25:47

seth
Member
Registered: 2012-09-03
Posts: 51,782

Re: [SOLVED] Internal keyboard not working

uname -a
zgrep -E '(KEYBOARD_ATKBD|MOUSE_PS2|CONFIG_SERIO)' /proc/config.gz

Online

#25 2021-10-07 08:47:01

kristerv
Member
Registered: 2021-09-09
Posts: 8

Re: [SOLVED] Internal keyboard not working

Thanks for helping me look into this.

➜ ~ uname -a
Linux krister-zenbook-2021 5.14.8-arch1-1 #1 SMP PREEMPT Sun, 26 Sep 2021 19:36:15 +0000 x86_64 GNU/Linux
➜ ~ zgrep -E '(KEYBOARD_ATKBD|MOUSE_PS2|CONFIG_SERIO)' /proc/config.gz
CONFIG_KEYBOARD_ATKBD=m
CONFIG_MOUSE_PS2=m
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_BYD=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
CONFIG_MOUSE_PS2_CYPRESS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y
CONFIG_MOUSE_PS2_SENTELIC=y
CONFIG_MOUSE_PS2_TOUCHKIT=y
CONFIG_MOUSE_PS2_FOCALTECH=y
CONFIG_MOUSE_PS2_VMMOUSE=y
CONFIG_MOUSE_PS2_SMBUS=y
CONFIG_SERIO=m
CONFIG_SERIO_I8042=m
CONFIG_SERIO_SERPORT=m
CONFIG_SERIO_CT82C710=m
CONFIG_SERIO_PARKBD=m
CONFIG_SERIO_PCIPS2=m
CONFIG_SERIO_LIBPS2=m
CONFIG_SERIO_RAW=m
CONFIG_SERIO_ALTERA_PS2=m
CONFIG_SERIO_PS2MULT=m
CONFIG_SERIO_ARC_PS2=m
CONFIG_SERIO_GPIO_PS2=m

Hmm, looks like all the 'y ->m' change have already been made that Mich posted earlier. So is it a different problem? Even though the description is identical, even with the keyboard working sometimes (rarely). I haven't yet figured out in what situation it does work, since it's so rare.

Last edited by kristerv (2021-10-07 08:47:22)

Offline

Board footer

Powered by FluxBB