[SOLVED] Issue: Built-in keyboard not working (26-rc1 kernel 6)

Forum › Forums › antiX-development › Development › [SOLVED] Issue: Built-in keyboard not working (26-rc1 kernel 6)

  • This topic has 11 replies, 4 voices, and was last updated Feb 16-12:18 am by jbone.
Viewing 12 posts - 1 through 12 (of 12 total)
  • Author
    Posts
  • #196757
    jbone
    Member

      Been using antiX off and on since 23. This morning, I saw 26 RC1 was out, so I installed it on an old Chromebook I repaired.

      When I try to use the included kernel 6, I can not log in – no keyboard inputs seem to be accepted, and no text appears on the screen.

      If I use the included 5.1 legacy kernel instead, everything works normally and I can log in. (I’m typing this post using the laptop.)

      I also tested LTS kernel 6.1. Same issue as the default 6 kernel included with RC1.

      I tried installing the Fallback Debian 6.12 kernel via Package Installer, but I got a nonspecific “unable to apply some actions” error.

      Note that I’ve also run MX Linux and PeppermintOS on this laptop, using 6.xx kernels. No issues with either of those distros.

      Full system info attached.

      Edit to add: After more testing, I can confirm the keyboard isn’t working at all under kernel 6. I plugged in a USB keyboard and was able to log in. But even after login, the built-in keyboard didn’t appear to work.

      Edit2: anti-apXos solved it. Old issue related to CONFIG_PINCTRL_CHERRYVIEW in some kernels. By using backported 6.18 instead of antiX’s default 6.6, I have a working keyboard.
      https://bugs.archlinux.org/task/58183
      https://bugzilla.kernel.org/show_bug.cgi?id=194945

      • This topic was modified 7 months, 1 week ago by jbone.
      • This topic was modified 7 months, 1 week ago by jbone.
      #196769
      anticapitalista
      Forum Admin

        If the provided 5.10 kernel works, why not use that one?
        It typically uses less resources that the 6 series kernels.

        Philosophers have interpreted the world in many ways; the point is to change it.

        antiX with runit - leaner and meaner.

        #196772
        Brian Masinick
        Moderator

          If the provided 5.10 kernel works, why not use that one?
          It typically uses less resources that the 6 series kernels.

          I agree! I have an older Dell Inspiron 5558 that’s capable of running Version 4 (now completely out of support), Version 5, and Version 6 kernels. This model is pretty flexible, not as fast as my newer systems, but at least a midrange unit during it’s prime, and it works well. Nevertheless, the V4 (old) kernel used the least resources, the V5 kernels are in between and the V6 use more.

          If you’re fortunate enough to have a V5 kernel that works, USE it!

          --
          Brian Masinick
          Alternate "Search B":
          This search page

          #196774
          anti-apXos
          Member

            Note that I’ve also run MX Linux and PeppermintOS on this laptop, using 6.xx kernels. No issues with either of those distros.

            Was this with the Trixie-based versions of MX and Peppermint or Bookworm? For that matter, do 6+ kernels work okay on your antix-23 install?

            I would also want to test whether this is a just a slimski/login issue, as you described, or whether the keyboard is just not working at all. For example, by setting up autologin for slimski or switching to a TTY login.

            I know that more recent kernels (starting sometime between 6.6 and 6.12, I think) have a whole set of kernel modules for Chromebook support, including one called cros_ec_keyb, which causes errors on my Chromebook, so I ended up blacklisting it. That module and the other cros modules aren’t present in a 6.1 or 6.6 kernel, though, so I don’t really think it’s your issue.

            EDIT: actually it looks like the cros kernel modules I mentioned (including cros_ec_keyb) are in earlier kernels, too, including 6.1, but not 5.10. They just aren’t being loaded on my particular hardware until later kernels. If they’re loaded on your Chromebook system even on kernel 6.1, it may be related to your issue, though I’m not sure. You could try checking for errors in dmesg and maybe blacklisting some of the modules, though I guess you might need to use an external keyboard or an ssh session or something to do that.

            • This reply was modified 7 months, 1 week ago by anti-apXos.

            "--"

            #196776
            Brian Masinick
            Moderator

              @rokytnji has pretty good experience running antiX; he used Mr. Chromebook, I believe, to configure his original setup. Perhaps he’s seen a few things. Hey Rok, I noticed you around yesterday; if you see this, do you have any insight based on your experiences?

              --
              Brian Masinick
              Alternate "Search B":
              This search page

              #196777
              jbone
              Member

                If the provided 5.10 kernel works, why not use that one?
                It typically uses less resources that the 6 series kernels.

                I mean, you’re totally right. But it’s also an issue that could impact other people. That’s why I shared it.

                Note that I’ve also run MX Linux and PeppermintOS on this laptop, using 6.xx kernels. No issues with either of those distros.

                Was this with the Trixie-based versions of MX and Peppermint or Bookworm? For that matter, do 6+ kernels work okay on your antix-23 install?

                I would also want to test whether this is a just a slimski/login issue, as you described, or whether the keyboard is just not working at all. For example, by setting up autologin for slimski or switching to a TTY login.

                I know that more recent kernels (starting sometime between 6.6 and 6.12, I think) have a whole set of kernel modules for Chromebook support, including one called cros_ec_keyb, which causes errors on my Chromebook, so I ended up blacklisting it. That module and the other cros modules aren’t present in a 6.1 or 6.6 kernel, though, so I don’t really think it’s your issue.

                EDIT: actually it looks like the cros kernel modules I mentioned (including cros_ec_keyb) are in earlier kernels, too, including 6.1, but not 5.10. They just aren’t being loaded on my particular hardware until later kernels. If they’re loaded on your Chromebook system even on kernel 6.1, it may be related to your issue, though I’m not sure. You could try checking for errors in dmesg and maybe blacklisting some of the modules, though I guess you might need to use an external keyboard or an ssh session or something to do that.

                Yes, Trixie-based MX and Peppermint. I like to play around on these old Chromebooks – I was dual-booting, with MX on the 16GB eMMC and Peppermint on SD. I haven’t (yet) tried antiX 23 with kernel 6 on this particular Chromebook.

                And it turns out it’s not just a login issue. I plugged in a USB keyboard, and typing on that worked fine. But even after logging in, the built-in keyboard did nothing on kernel 6.

                Could you share which modules you’ve blacklisted? I can compare that to my logs & do some experiments.

                • This reply was modified 7 months, 1 week ago by jbone.
                #196780
                anti-apXos
                Member

                  Could you share which modules you’ve blacklisted? I can compare that to my logs & do some experiments.

                  The only one I blacklisted was cros_ec_keyb. It produces the following dmesg boot errors on my system:

                  [    1.815614] cros-ec-keyb GOOG0007:00: cannot register non-matrix inputs: -95
                  [    1.815617] cros-ec-keyb GOOG0007:00: probe with driver cros-ec-keyb failed with error -95
                  

                  However, the keyboard on my Chromebook (Dell 3100, FLEEX) still works fine in spite of the errors. In fact, I couldn’t find any other difference in behavior whether this module is loaded or not (I guess the second error message suggests that it might not even be used), so I just blacklisted it to get rid of the errors.

                  I guess first you should check to see if these cros* modules are even being loaded on your system.

                  lsmod | grep cros

                  For me, it returns

                  cros_usbpd_charger     24576  0
                  cros_ec_debugfs        20480  0
                  leds_cros_ec           12288  0
                  cros_usbpd_logger      16384  0
                  led_class_multicolor    16384  1 leds_cros_ec
                  cros_charge_control    16384  0
                  cros_ec_sysfs          16384  0
                  cros_ec_hwmon          16384  0
                  cros_ec_chardev        16384  0
                  cros_usbpd_notify      20480  1 cros_usbpd_charger
                  gpio_cros_ec           12288  0
                  cros_ec_dev            12288  0
                  cros_ec_lpcs           20480  0
                  cros_ec                20480  1 cros_ec_lpcs
                  cros_ec_proto          65536  13 leds_cros_ec,cros_ec_lpcs,cros_usbpd_notify,cros_ec,gpio_cros_ec,cros_ec_dev,cros_ec_debugfs,cros_ec_hwmon,cros_usbpd_logger,cros_ec_sysfs,cros_ec_chardev,cros_charge_control,cros_usbpd_charger

                  But as I said, not on kernels 6.1 or 6.6 even though those modules are installed for those kernels, too. I guess there was some change in how they detect compatible hardware between 6.6 and 6.12.

                  Of course, there’s no real reason to assume that any cros kernel modules are related to your issue even if they are being loaded on your system. It could be anything almost.

                  Try running

                  sudo dmesg --level=emerg,alert,crit,err

                  to show all the kernel errors and other high priority messages.

                  "--"

                  #196795
                  jbone
                  Member

                    @anti-apXos I think you’re right, there’s no reason to assume these are related to my issue. There are no errors related to it, and nothing much is getting loaded.

                    cros_ec_sysfs 16384 0
                    cros_ec_lightbar 16384 0
                    cros_ec_debugfs 16384 0
                    cros_ec_chardev 16384 0
                    cros_ec_sensorhub 20480 0
                    cros_ec_dev 16384 0
                    cros_ec_lpcs 16384 0
                    cros_ec 16384 1 cros_ec_lpcs

                    As far as running dmesg, nothing useful tured up under emerg/alert/critical/err.

                    But I did find this under warn:

                    [ 0.645107] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
                    [ 0.647980] i8042: Warning: Keylock active
                    [ 0.648258] i8042: probe of i8042 failed with error -22

                    I’ll try adding i8042.nopnp first.

                    If that doesn’t work, I found an old post on an Ubuntu forum from someone with a similar issue. Adding i8042.dumbkbd to their GRUB_CMDLINE_LINUX_DEFAULT fixed it. I’ll try that if nopnp doesn’t change anything.

                    Edit: i8042.nopnp caused the keyboard to stop working altogether, even in 5.

                    i8042.dumkbd didn’t fix the issue in 6.

                    • This reply was modified 7 months, 1 week ago by jbone.
                    • This reply was modified 7 months, 1 week ago by jbone.
                    #196802
                    anti-apXos
                    Member

                      My Chromebook also has the first two warnings, but keyboard works. I do not get that third warning, though. Instead, after the keylock warning I get

                      [ 0.561763] serio: i8042 KBD port at 0x60,0x64 irq 1

                      So, a search for your third warning message led to several discussion forums where people had Chromebooks with non-working keyboard and then utimately to these bugreports:

                      https://bugs.archlinux.org/task/58183

                      https://bugzilla.kernel.org/show_bug.cgi?id=194945

                      This is almost definitely your issue. I confirmed that the 6.6.119 kernel’s config from the antix-26-rc1 iso has

                      CONFIG_PINCTRL_CHERRYVIEW=m

                      while the 5.10.240 kernel’s config and also 6.12.43+deb13 from the MX-25-beta1 ISO have

                      CONFIG_PINCTRL_CHERRYVIEW=y

                      If you really want to use a 6-series kernel, you could probably install the kernel from MX or even from Ubuntu mainline (https://kernel.ubuntu.com/mainline/). I’m using the Ubuntu mainline 6.18.0 and its kernel config has CONFIG_PINCTRL_CHERRYVIEW=y, so it ought to work for you. Ubuntu mainline kernels work fine on antix as long as you don’t need to build any dkms modules. The MX kernel probably works even if you do need dkms. Actually, I think that MX kernel is directly from Debian Backports, not something they built (though I’m not positive), so you might try a kernel from the Backports repo on antix, too.

                      "--"

                      #196807
                      jbone
                      Member

                        My Chromebook also has the first two warnings, but keyboard works. I do not get that third warning, though. Instead, after the keylock warning I get

                        [ 0.561763] serio: i8042 KBD port at 0x60,0x64 irq 1

                        So, a search for your third warning message led to several discussion forums where people had Chromebooks with non-working keyboard and then utimately to these bugreports:

                        https://bugs.archlinux.org/task/58183

                        https://bugzilla.kernel.org/show_bug.cgi?id=194945

                        This is almost definitely your issue. I confirmed that the 6.6.119 kernel’s config from the antix-26-rc1 iso has

                        CONFIG_PINCTRL_CHERRYVIEW=m

                        while the 5.10.240 kernel’s config and also 6.12.43+deb13 from the MX-25-beta1 ISO have

                        CONFIG_PINCTRL_CHERRYVIEW=y

                        If you really want to use a 6-series kernel, you could probably install the kernel from MX or even from Ubuntu mainline (https://kernel.ubuntu.com/mainline/). I’m using the Ubuntu mainline 6.18.0 and its kernel config has CONFIG_PINCTRL_CHERRYVIEW=y, so it ought to work for you. Ubuntu mainline kernels work fine on antix as long as you don’t need to build any dkms modules. The MX kernel probably works even if you do need dkms. Actually, I think that MX kernel is directly from Debian Backports, not something they built (though I’m not positive), so you might try a kernel from the Backports repo on antix, too.

                        Nailed it! This is a CYAN. I installed linux-base-6.18.5+deb13-amd64 from Debian Backports. Now I’m typing this response on the laptop running 6.18.

                        I’m reading some of the PINCTRL documentation now, fascinating stuff.

                        Thanks for all the help. I’ve learned a bunch. And learning is why I was trying to troubleshoot this, after all.

                        #196812
                        anti-apXos
                        Member

                          That’s great that the Debian Backports kernel does work. So it’s a pretty simple solution to just boot using the 5.10 kernel and then enable the Backports repo and install a newer kernel from there if you need it.

                          In your original post you mentioned that you’d installed a Debian 6.12 kernel with the package installer, but I guess that was from the main Stable repo, not Backports? It seems odd to me that Debian kernel build config would differ between kernels from the Stable and Backports repos, but I’ve noticed it before in other cases, too. I wonder why. It seems so un-Debian.

                          "--"

                          #196813
                          jbone
                          Member

                            That’s great that the Debian Backports kernel does work. So it’s a pretty simple solution to just boot using the 5.10 kernel and then enable the Backports repo and install a newer kernel from there if you need it.

                            In your original post you mentioned that you’d installed a Debian 6.12 kernel with the package installer, but I guess that was from the main Stable repo, not Backports? It seems odd to me that Debian kernel build config would differ between kernels from the Stable and Backports repos, but I’ve noticed it before in other cases, too. I wonder why. It seems so un-Debian.

                            Oh, I tried to install the fallback Debian 6.1 kernel, but the package installer gave me an error. I figured the repo wasn’t playing nice. I might not have described it perfectly in my first post.

                            If the fallback kernel *had* installed, it might have fixed the issue, and I might not have posted here. But if I hadn’t posted here, I wouldn’t have learned as much. So I guess it’s still a win?

                          Viewing 12 posts - 1 through 12 (of 12 total)
                          • You must be logged in to reply to this topic.