Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
No keyboard with Xorg IdeaPad L340 [SOLVED]
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Sun Dec 25, 2022 11:21 pm    Post subject: No keyboard with Xorg IdeaPad L340 [SOLVED] Reply with quote

Some time ago, the keyboard stopped working along with the touchpad and mouse but it was only while using X

On TTY everything always worked.

I was able to solve the mouse and touchpad failure by adding a driver to the kernel. However, no luck with the keyboard yet.
I suspect something changed during some update and I have not been able to find it. It is probably something very minor. Any suggestions?

# uname
Code:
Linux lenovo 5.15.80-gentoo-x86_64


Genkernel is used:


Code:
mount /boot
genkernel --luks --no-lvm --no-zfs all
grub-mkconfig -o /boot/grub/grub.cfg
emerge $(qlist -CI x11-drivers)


# ls /usr/share/X11/xorg.conf.d/*

Code:
/usr/share/X11/xorg.conf.d/10-quirks.conf  /usr/share/X11/xorg.conf.d/40-libinput.conf  /usr/share/X11/xorg.conf.d/70-synaptics.conf  /usr/share/X11/xorg.conf.d/nvidia-drm-outputclass.conf



# cat /usr/share/X11/xorg.conf.d/40-libinput.conf


Code:
Section "InputClass"
        Identifier "libinput pointer catchall"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput keyboard catchall"
        MatchIsKeyboard "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput touchscreen catchall"
        MatchIsTouchscreen "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
EndSection

Section "InputClass"
        Identifier "libinput tablet catchall"
        MatchIsTablet "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
EndSection



# cat /etc/portage/make.conf| grep INPUT_DEVICES
Code:
INPUT_DEVICES="synaptics libinput penmount uvcvideo"


# cat /etc/portage/make.conf| grep VIDEO_CARDS
Code:
VIDEO_CARDS="nvidia i915 intel virtualbox fbdev"


# ls /etc/X11
Code:
chooser.sh  Sessions  startDM.sh  xdm  xinit  xorg.conf.d  xsm


# ls /etc/X11/xorg.conf.d/
Code:
20-keyboard.conf  20opengl.conf  40-libinput.conf


# cat 20-keyboard.conf

Code:
Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "libinput"
EndSection

Section "InputClass"

    Identifier     "keyboard0"
    Option         "XkbLayout" "us_intl"
    Option         "XkbOptions" "terminate:ctrl_alt_bksp"
    Option         "XkbVariant" "altgr-intl,abnt2,qwerty,euro"
    Option         "MatchIsKeyboard" "on"
    Option         "GrabDevice" "true"
EndSection



Xorg.0.log (expires in 30 days)
https://dpaste.com/9VZ8DMN8D

Kernel config: (expires in 7 days)
https://dpaste.com/4L7BKFNQS

lshw: (expires in 7 days)
https://dpaste.com/GTTMPK8LF

Keyboard:
Code:
 I: Bus=0011 Vendor=0001 Product=0001 Version=ab83
  N: Name="AT Translated Set 2 keyboard"
  P: Phys=isa0060/serio0/input0
  S: Sysfs=/devices/platform/i8042/serio0/input/input2
  U: Uniq=
  H: Handlers=sysrq kbd leds event2 rfkill
  B: PROP=0
  B: EV=120013
  B: KEY=a0000702100000 83803078f800d001 feffffdfffefffff fffffffffffffffe
  B: MSC=10
  B: LED=7

  N: Name="Ideapad extra buttons"
  P: Phys=ideapad/input0
  S: Sysfs=/devices/pci0000:00/0000:00:1f.0/PNP0C09:00/VPC2004:00/input/input9
  U: Uniq=
  H: Handlers=kbd event8 rfkill
  B: PROP=0
  B: EV=13
  B: KEY=81000800100c03 4400000000300000 0 2
  B: MSC=10


Kernel keyboard driver:
# cat .config| grep ATKBD
Code:
CONFIG_KEYBOARD_ATKBD=y


https://github.com/torvalds/linux/blob/master/drivers/input/keyboard/atkbd.c

dmesg | grep -i keyboard
Code:
[    1.892977] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2

[    5.371889] hid-generic 0003:25A7:FA23.0001: input,hidraw0: USB HID v1.10 Keyboard [Compx 2.4G Receiver] on usb-0000:00:14.0-1/input0

[   70.544198] ideapad_acpi VPC2004:00: Keyboard backlight control not available

_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244


Last edited by HeXiLeD on Fri Dec 29, 2023 1:44 pm; edited 3 times in total
Back to top
View user's profile Send private message
Banana
Veteran
Veteran


Joined: 21 May 2004
Posts: 1391
Location: Germany

PostPosted: Mon Dec 26, 2022 9:52 am    Post subject: Reply with quote

Please try it WITHOUT any xorg.conf. I run X without it for years now and it just works.
_________________
My personal space
My delta-labs.org snippets do expire

PFL - Portage file list - find which package a file or command belongs to.
Back to top
View user's profile Send private message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Wed Jan 25, 2023 11:56 pm    Post subject: Reply with quote

Banana wrote:
Please try it WITHOUT any xorg.conf. I run X without it for years now and it just works.


Would you be able to tell me where in the description of the problem, I may have given the impression that I am using an xorg.conf ?

Also, I can use an external wireless or wired keyboard connected to the laptop as well as a keyboard though vnc.

Somewhere, some driver is not doing what is suppose to do and something changed somewhere in the updates.
For the mouse, I was able to find the driver that somehow, was on the kernel but one day, out of nothing, stopped being.
The mouse works well.
_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21624

PostPosted: Thu Jan 26, 2023 12:02 am    Post subject: Reply with quote

HeXiLeD wrote:
Would you be able to tell me where in the description of the problem, I may have given the impression that I am using an xorg.conf ?
I think it was this part:
HeXiLeD wrote:
# ls /etc/X11/xorg.conf.d/
Code:
20-keyboard.conf  20opengl.conf  40-libinput.conf
Those fragments are not overwritten by Portage, and are parsed as parts of an Xorg configuration file.
Back to top
View user's profile Send private message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Tue Aug 29, 2023 10:09 am    Post subject: Reply with quote

So I decied to re-install gentoo since I also wanted to do some new hard drive partitioning.

Surprise to find out that these issues remain on a fresh install.

I have nothing inside /etc/X11/xorg.conf.d/

# ls /usr/share/X11/xorg.conf.d/
Code:
10-quirks.conf  40-libinput.conf  nvidia-drm-outputclass.conf


On tty, the keyboard works.
Drivers are loaded/active. This is with Xorg only

6.1.46-gentoo-x86_64 #1 SMP PREEMPT_DYNAMIC

Edit:

I just found out that it is trying to use evdev

$ setxkbmap -print -verbose 10
Code:
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules:      evdev
model:      pc105
layout:     us
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+us+inet(evdev)
geometry:   pc(pc105)
xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwerty)" };
        xkb_types     { include "complete"      };
        xkb_compat    { include "complete"      };
        xkb_symbols   { include "pc+us+inet(evdev)"     };
        xkb_geometry  { include "pc(pc105)"     };
};


However the whole system is compiled with -evdev and +libinput
_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244
Back to top
View user's profile Send private message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Mon Sep 25, 2023 1:04 pm    Post subject: Reply with quote

The problem is a kernel driver. Somehow while playing with kernel driver and adding some while removing some and vice-versa i was able to get the touch pad to work.
I am unsure which driver is because I also loaded a kernel with all the usb, acpi and pci support compiled as modules and only a wireless mouse worked.
_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244
Back to top
View user's profile Send private message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Fri Dec 22, 2023 5:08 am    Post subject: Reply with quote

So far no progress with this issue. Everything suggests that maybe some driver dependency is not being loaded or perhaps a very specific xorg configuration is needed.

The keyboard, touchpad and mouse, work on tty but once X is started they do not work anymore.

At some point in the kernel recompilations, the touch pad worked but right after was gone.

Using an external keyboard and mouse, works, both on TTY and X.

I have tried with configs both on the following paths. Not using any configuration to see if Xorg detects the hardware, currently is a fail as it will not even detect the external keyboard and mouse.

Code:
# ls /etc/X11/
chooser.sh  Sessions  startDM.sh  xinit  xorg.conf.d
# ls /etc/X11/xorg.conf.d/


Code:
# ls /usr/share/X11/xorg.conf.d/
10-evdev.conf  10-quirks.conf  20-keyboard.conf  40-libinput.conf  70-synaptics.conf  nvidia-drm-outputclass.conf



cat /usr/share/X11/xorg.conf.d/20-keyboard.conf
Code:
Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "libinput"
EndSection

Section "InputClass"

    Identifier     "keyboard0"
    Option         "XkbLayout" "us_intl"
    Option         "XkbOptions" "terminate:ctrl_alt_bksp"
    Option         "XkbVariant" "altgr-intl,abnt2,qwerty,euro"
    Option         "MatchIsKeyboard" "on"
    Option         "GrabDevice" "true"



The gentoo live CD with graphical interface, does work. Somehow the live cd detects and gets the laptop keyboard, touchpad and mouse to work but I have no idea how or what is the difference.

On every kernel changes this is executed:

Code:
mount /boot
genkernel --luks --no-lvm --no-zfs all
grub-mkconfig -o /boot/grub/grub.cfg
emerge $(qlist -CI x11-drivers)


Current kernel config:
https://dpaste.com/HFGLEVKUD

lshw:
https://dpaste.com/G37KP2AB9

# lsusb
Code:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 04f2:b604 Chicony Electronics Co., Ltd Integrated Camera (1280x720@30)
Bus 001 Device 005: ID 8087:0aaa Intel Corp. Bluetooth 9460/9560 Jefferson Peak (JfP)
Bus 001 Device 006: ID 1532:023f Razer USA, Ltd RZ03-0274 Gaming Keyboard [Cynosa Lite]
Bus 001 Device 007: ID 25a7:fa23 Areson Technology Corp 2.4G Receiver
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub



# lspci -k

Code:
00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
        Subsystem: Lenovo 8th Gen Core Processor Host Bridge/DRAM Registers
        Kernel driver in use: skl_uncore
00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 07)
        Subsystem: Lenovo 6th-10th Gen Core Processor PCIe Controller (x16)
        Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630]
        Subsystem: Lenovo CoffeeLake-H GT2 [UHD Graphics 630]
        Kernel driver in use: i915
        Kernel modules: i915
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 07)
        Subsystem: Lenovo Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem
        Kernel driver in use: proc_thermal
        Kernel modules: processor_thermal_device_pci_legacy
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
        Subsystem: Lenovo Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
00:12.0 Signal processing controller: Intel Corporation Cannon Lake PCH Thermal Controller (rev 10)
        Subsystem: Lenovo Cannon Lake PCH Thermal Controller
        Kernel driver in use: intel_pch_thermal
        Kernel modules: intel_pch_thermal
00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
        Subsystem: Lenovo Cannon Lake PCH USB 3.1 xHCI Host Controller
        Kernel driver in use: xhci_hcd
        Kernel modules: xhci_pci
00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
        Subsystem: Lenovo Cannon Lake PCH Shared SRAM
00:14.3 Network controller: Intel Corporation Cannon Lake PCH CNVi WiFi (rev 10)
        Subsystem: Intel Corporation Wireless-AC 9560
        Kernel driver in use: iwlwifi
        Kernel modules: iwlwifi
00:15.0 Serial bus controller: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #0 (rev 10)
        Subsystem: Lenovo Cannon Lake PCH Serial IO I2C Controller
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:15.1 Serial bus controller: Intel Corporation Cannon Lake PCH Serial IO I2C Controller #1 (rev 10)
        Subsystem: Lenovo Cannon Lake PCH Serial IO I2C Controller
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
        Subsystem: Lenovo Cannon Lake PCH HECI Controller
        Kernel driver in use: mei_me
        Kernel modules: mei_me
00:17.0 SATA controller: Intel Corporation Cannon Lake Mobile PCH SATA AHCI Controller (rev 10)
        Subsystem: Lenovo Cannon Lake Mobile PCH SATA AHCI Controller
        Kernel driver in use: ahci
        Kernel modules: ahci
00:1d.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 (rev f0)
        Subsystem: Lenovo Cannon Lake PCH PCI Express Root Port
        Kernel driver in use: pcieport
00:1d.5 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #14 (rev f0)
        Subsystem: Lenovo Cannon Lake PCH PCI Express Root Port
        Kernel driver in use: pcieport
00:1e.0 Communication controller: Intel Corporation Cannon Lake PCH Serial IO UART Host Controller (rev 10)
        Subsystem: Lenovo Cannon Lake PCH Serial IO UART Host Controller
        Kernel driver in use: intel-lpss
        Kernel modules: intel_lpss_pci
00:1f.0 ISA bridge: Intel Corporation HM470 Chipset LPC/eSPI Controller (rev 10)
00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
        Subsystem: Lenovo Cannon Lake PCH cAVS
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel, snd_soc_skl, snd_sof_pci_intel_cnl
00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
        Subsystem: Lenovo Cannon Lake PCH SMBus Controller
        Kernel driver in use: i801_smbus
        Kernel modules: i2c_i801
00:1f.5 Serial bus controller: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
        Subsystem: Lenovo Cannon Lake PCH SPI Controller
01:00.0 VGA compatible controller: NVIDIA Corporation TU117M [GeForce GTX 1650 Mobile / Max-Q] (rev a1)
        Subsystem: Lenovo TU117M [GeForce GTX 1650 Mobile / Max-Q]
        Kernel driver in use: nvidia
        Kernel modules: nouveau, nvidia_drm, nvidia
01:00.1 Audio device: NVIDIA Corporation Device 10fa (rev a1)
        Subsystem: Lenovo Device 3a2e
        Kernel driver in use: snd_hda_intel
        Kernel modules: snd_hda_intel
06:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983
        Subsystem: Samsung Electronics Co Ltd SSD 970 EVO
        Kernel driver in use: nvme
        Kernel modules: nvme
07:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 10)
        Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
        Kernel driver in use: r8169
        Kernel modules: r8169

_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244
Back to top
View user's profile Send private message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Tue Dec 26, 2023 2:06 am    Post subject: Reply with quote

A few more details about this issue:

Since the gentoo GUI Live CD works without this keyboard problem, I decided to copy that kernel config and use it to recompile the kernel.
After that I was able to get the touchpad to work. However the touch pad also sometimes worked with the default install and genkernel.

Oddly enough, if I do an manually changes on the kernel and recompile, I lose the touchpad functionality.
This is seems to be something that affects genkernel from picking up whatever driver is needed. (assuming that this problem is a kernel driver issue)

NOTE: external usb keyboards and mice always work with X as well the tuochpad and laptop keyboard on TTY

I installed:

Code:
[I] app-misc/evtest
     Available versions:  1.33 1.34 1.35
     Installed versions:  1.35(12:10:49 AM 12/24/2023)
     Homepage:            https://cgit.freedesktop.org/evtest/
     Description:         test program for capturing input device events


The Keyboard info:

Code:
/dev/input/event2:      AT Translated Set 2 keyboard


From all the kets pressed, these ones reacted:

Code:
Event: time 1703531003.200173, type 4 (EV_MSC), code 4 (MSC_SCAN), value 08
Event: time 1703531003.200173, type 1 (EV_KEY), code 190 (KEY_F20), value 1
Event: time 1703531003.200173, -------------- SYN_REPORT ------------
Event: time 1703531003.200178, type 1 (EV_KEY), code 190 (KEY_F20), value 0
Event: time 1703531003.200178, -------------- SYN_REPORT ------------
Event: time 1703531005.328966, type 4 (EV_MSC), code 4 (MSC_SCAN), value 0d
Event: time 1703531005.328966, type 1 (EV_KEY), code 247 (KEY_RFKILL), value 1
Event: time 1703531005.328966, -------------- SYN_REPORT ------------
Event: time 1703531005.328972, type 1 (EV_KEY), code 247 (KEY_RFKILL), value 0
Event: time 1703531005.328972, -------------- SYN_REPORT ------------
Event: time 1703531005.682284, type 4 (EV_MSC), code 4 (MSC_SCAN), value 07
Event: time 1703531005.682284, type 1 (EV_KEY), code 212 (KEY_CAMERA), value 1
Event: time 1703531005.682284, -------------- SYN_REPORT ------------
Event: time 1703531005.682289, type 1 (EV_KEY), code 212 (KEY_CAMERA), value 0
Event: time 1703531005.682289, -------------- SYN_REPORT ------------


So the keyboard does work, but just partially?!

# dmesg | grep 'AT Translated Set 2 keyboard'
Code:
[   22.001811] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2


dmesg | grep kbd
Code:
[ 3659.595210]  atkbd_interrupt+0x63b/0x6d0


lsmod | grep key
Code:
sparse_keymap          16384  1 ideapad_laptop


dmesg | grep i8042
Code:
[   21.984097] i8042: PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1
[   21.984102] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
[   21.988171] serio: i8042 KBD port at 0x60,0x64 irq 1
[   22.001811] input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input2
[ 3659.595218]  i8042_interrupt+0x11d/0x250


# cat /usr/src/linux/.config| grep 8042
Code:
CONFIG_SERIO_I8042=y


Quote:
PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp


PS/2 AUX Port: This usually refers to the PS/2 port used for connecting a mouse.
• Disabled: The system's PNP mechanism did not detect an active device on this port.
• i8042.nopnp: This is a kernel boot parameter that you can use to override the automatic detection and force the system to recognize the PS/2 port.

Code:
GRUB_CMDLINE_LINUX="…...i8042.nopnp"

Did not resolve the issue. I lost the touchpad. External keyboad and mouse, still worked.

There are several other i8042 parameters that can be used to troubleshoot or configure keyboard and mouse issues, such as i8042.nomux, i8042.reset, etc. Use these if you encounter specific issues related to PS/2 devices.

Adding i8042.nomux or i8042.reset got the touchpad back to functionality on X but not the native laptop keyboard


Quote:
PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp


Enabling the PS/2 AUX port (typically used for a PS/2 mouse) on a Linux kernel usually involves ensuring the correct kernel module is loaded and potentially adjusting kernel boot parameters if automatic detection isn't working.

lsmod | grep psmouse

outputs nothing

cat /usr/src/linux/.config| grep MOUSE

Code:
CONFIG_MAC_EMUMOUSEBTN=m
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y
CONFIG_MOUSE_PS2_BYD=y
CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_CYPRESS=y
CONFIG_MOUSE_PS2_LIFEBOOK=y
CONFIG_MOUSE_PS2_TRACKPOINT=y
CONFIG_MOUSE_PS2_ELANTECH=y
CONFIG_MOUSE_PS2_SENTELIC=y
# CONFIG_MOUSE_PS2_TOUCHKIT is not set
CONFIG_MOUSE_PS2_FOCALTECH=y
CONFIG_MOUSE_PS2_VMMOUSE=y
CONFIG_MOUSE_SERIAL=m
CONFIG_MOUSE_APPLETOUCH=m
CONFIG_MOUSE_BCM5974=m
CONFIG_MOUSE_CYAPA=m
CONFIG_MOUSE_ELAN_I2C=m
CONFIG_MOUSE_ELAN_I2C_I2C=y
CONFIG_MOUSE_ELAN_I2C_SMBUS=y
CONFIG_MOUSE_VSXXXAA=m
# CONFIG_MOUSE_GPIO is not set
CONFIG_MOUSE_SYNAPTICS_I2C=m
CONFIG_MOUSE_SYNAPTICS_USB=m
CONFIG_HID_MAGICMOUSE=y
CONFIG_USB_IDMOUSE=m


Next I tried to compile the issue (possibly) related drivers as modules:




Code:

<M> Mouse interface
<M> PS/2 mouse
<M> AT keyboard
<M> PCI PS/2 keyboard and PS/2 mouse controller
{M} PS/2 driver library
{M} i8042 PC Keyboard controller


and added

Code:

[*] eGalax TouchKit PS/2 protocol extension


Compiling everything as modules, the touchpad functionality is lost on X
External usb kbd and mouse works. Native laptop kbd and mouse also work on TTY.

Evtest still reports the same as before.


Psmouse & i8042 driver were module as not automatically loaded


# lsmod

Code:

Module                  Size  Used by
gpio_keys              20480  0
tm2_touchkey           16384  0
psmouse               184320  0
btusb                  61440  0
btrtl                  28672  1 btusb
btbcm                  24576  1 btusb
btintel                45056  1 btusb
bluetooth             962560  5 btrtl,btintel,btbcm,btusb
uvcvideo              131072  0
videobuf2_vmalloc      20480  1 uvcvideo
videobuf2_memops       20480  1 videobuf2_vmalloc
videobuf2_v4l2         36864  1 uvcvideo
videobuf2_common       73728  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev              294912  3 videobuf2_v4l2,uvcvideo,videobuf2_common
mc                     77824  4 videodev,videobuf2_v4l2,uvcvideo,videobuf2_common
ecdh_generic           16384  1 bluetooth
ecc                    40960  1 ecdh_generic
snd_hda_codec_realtek   172032  1
snd_hda_codec_generic    98304  1 snd_hda_codec_realtek
ledtrig_audio          16384  1 snd_hda_codec_generic
snd_sof_pci_intel_cnl    16384  0
snd_sof_intel_hda_common   184320  1 snd_sof_pci_intel_cnl
snd_sof_intel_hda      20480  1 snd_sof_intel_hda_common
snd_sof_pci            24576  2 snd_sof_intel_hda_common,snd_sof_pci_intel_cnl
snd_sof_xtensa_dsp     16384  1 snd_sof_intel_hda_common
snd_sof               274432  2 snd_sof_pci,snd_sof_intel_hda_common
snd_sof_utils          20480  1 snd_sof
snd_soc_skl           184320  0
x86_pkg_temp_thermal    20480  0
snd_soc_hdac_hda       24576  2 snd_sof_intel_hda_common,snd_soc_skl
intel_powerclamp       20480  0
snd_hda_ext_core       40960  3 snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_soc_skl
nvidia_drm             69632  2
coretemp               20480  0
snd_soc_sst_ipc        20480  1 snd_soc_skl
nvidia_modeset       1265664  3 nvidia_drm
i915                 3026944  6
snd_soc_sst_dsp        36864  1 snd_soc_skl
snd_soc_acpi_intel_match    81920  3 snd_sof_intel_hda_common,snd_soc_skl,snd_sof_pci_intel_cnl
snd_soc_acpi           16384  3 snd_soc_acpi_intel_match,snd_sof_intel_hda_common,snd_soc_skl
snd_soc_core          364544  4 snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_soc_skl
snd_compress           28672  1 snd_soc_core
drm_buddy              20480  1 i915
snd_pcm_dmaengine      16384  1 snd_soc_core
kvm_intel             311296  0
i2c_algo_bit           16384  1 i915
iwlmvm                524288  0
ac97_bus               16384  1 snd_soc_core
nvidia              55939072  89 nvidia_modeset
snd_hda_codec_hdmi     81920  2
ttm                    94208  1 i915
snd_hda_intel          57344  0
kvm                  1126400  1 kvm_intel
snd_intel_dspcfg       36864  4 snd_hda_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_skl
drm_display_helper    180224  1 i915
joydev                 28672  0
irqbypass              16384  1 kvm
mac80211             1277952  1 iwlmvm
snd_hda_codec         184320  7 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
crct10dif_pclmul       16384  1
mousedev               24576  0
cec                    61440  2 drm_display_helper,i915
rc_core                69632  1 cec
snd_hda_core          122880  10 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_hda_codec_realtek,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
ghash_clmulni_intel    16384  0
processor_thermal_device_pci_legacy    16384  0
libarc4                16384  1 mac80211
processor_thermal_device    20480  1 processor_thermal_device_pci_legacy
sha512_ssse3           53248  1
snd_hwdep              16384  1 snd_hda_codec
mei_hdcp               24576  0
drm_kms_helper        204800  3 drm_display_helper,nvidia_drm,i915
iTCO_wdt               16384  0
processor_thermal_rfim    16384  1 processor_thermal_device
rapl                   20480  0
iwlwifi               417792  1 iwlmvm
snd_pcm               151552  11 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_sof,snd_sof_intel_hda_common,snd_compress,snd_soc_core,snd_sof_utils,snd_soc_skl,snd_hda_core,snd_pcm_dmaengine
i2c_designware_platform    16384  0
iTCO_vendor_support    16384  1 iTCO_wdt
intel_rapl_msr         20480  0
i2c_designware_core    36864  1 i2c_designware_platform
snd_timer              49152  1 snd_pcm
intel_cstate           20480  0
processor_thermal_mbox    16384  2 processor_thermal_rfim,processor_thermal_device
mei_me                 53248  1
drm                   610304  13 drm_kms_helper,drm_display_helper,nvidia,drm_buddy,nvidia_drm,i915,ttm
intel_lpss_pci         28672  0
processor_thermal_rapl    20480  1 processor_thermal_device
ideapad_laptop         40960  0
elan_i2c               53248  0
cfg80211             1130496  3 iwlmvm,iwlwifi,mac80211
i2c_i801               36864  0
snd                   126976  11 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_sof,snd_timer,snd_compress,snd_soc_core,snd_pcm
i2c_smbus              20480  1 i2c_i801
intel_lpss             16384  1 intel_lpss_pci
sparse_keymap          16384  1 ideapad_laptop
platform_profile       16384  1 ideapad_laptop
idma64                 20480  0
intel_rapl_common      32768  2 intel_rapl_msr,processor_thermal_rapl
intel_uncore          217088  0
serio_raw              20480  0
pcspkr                 16384  0
efi_pstore             16384  0
mei                   159744  3 mei_hdcp,mei_me
soundcore              16384  1 snd
mfd_core               20480  1 intel_lpss
intel_soc_dts_iosf     20480  1 processor_thermal_device_pci_legacy
intel_pch_thermal      20480  0
mac_hid                16384  0
i2c_core              118784  14 i2c_designware_platform,videodev,i2c_designware_core,drm_kms_helper,i2c_algo_bit,tm2_touchkey,drm_display_helper,nvidia,elan_i2c,i2c_smbus,i2c_i801,i915,psmouse,drm
rfkill                 36864  5 iwlmvm,bluetooth,ideapad_laptop,cfg80211
int3403_thermal        20480  0
intel_wmi_thunderbolt    20480  0
wmi_bmof               16384  0
int340x_thermal_zone    20480  2 int3403_thermal,processor_thermal_device
video                  65536  3 ideapad_laptop,i915,nvidia_modeset
backlight              24576  6 video,drm_display_helper,ideapad_laptop,i915,drm,nvidia_modeset
wmi                    36864  4 video,intel_wmi_thunderbolt,wmi_bmof,ideapad_laptop
pinctrl_cannonlake     36864  0
pinctrl_intel          36864  1 pinctrl_cannonlake
intel_pmc_core         53248  0
int3400_thermal        20480  0
acpi_thermal_rel       16384  1 int3400_thermal
acpi_tad               20480  0
acpi_pad              184320  0
efivarfs               24576  1
ext4                  970752  1
mbcache                16384  1 ext4
jbd2                  167936  1 ext4
dm_crypt               61440  1
trusted                40960  1 dm_crypt
asn1_encoder           16384  1 trusted
dm_mod                184320  3 dm_crypt
nvme                   57344  1
r8169                  94208  0
nvme_core             159744  2 nvme
atkbd                  36864  0
realtek                36864  1
t10_pi                 20480  1 nvme_core
libps2                 20480  2 atkbd,psmouse
mdio_devres            16384  1 r8169
vivaldi_fmap           16384  1 atkbd
crc32_pclmul           16384  0
crc32c_intel           24576  2
crc64_rocksoft         20480  1 t10_pi
libphy                180224  3 r8169,mdio_devres,realtek
ahci                   49152  0
crc64                  20480  1 crc64_rocksoft
xhci_pci               24576  0
libahci                49152  1 ahci
xhci_pci_renesas       20480  1 xhci_pci
i8042                  40960  1 ideapad_laptop


Code:
echo ‘modules="psmouse atkbd i8042 mousedev tm2-touchkey xtkbd elan_i2c synaptics_i2c synaptics_usb pcips2 libps2 userio"’



Added to see if I get some output info
Code:
GRUB_CMDLINE_LINUX="…...i8042.debug"


According to this link. They claim a firmware bug. However, the laptop native keyboard and touchpad, worked for a long time before this issue and still works with the gentoo graphical live cd. https://bbs.archlinux.org/viewtopic.php?id=277260

Firmware updates:
https://pcsupport.lenovo.com/ca/en/products/laptops-and-netbooks/ideapad-l-series-laptop/l340-15irh-gaming/downloads/ds539787-bios-update-for-windows-10-64-bit-l340-15irh-gaming-l340-17irh-gaming?category=BIOS%2FUEFI

https://download.lenovo.com/consumer/mobiles/bgme34ww.txt
https://download.lenovo.com/consumer/mobiles/bgcn36ww.txt

https://pcsupport.lenovo.com/ca/en/products/laptops-and-netbooks/ideapad-l-series-laptop/l340-15iwl/solutions/ht003029-lenovo-system-update-update-drivers-bios-and-applications

https://pcsupport.lenovo.com/ca/en/solutions/HT037099
https://download.lenovo.com/pccbbs/thinkvantage_en/system_update_5.08.02.25.txt

After updating the Bios and try the kernel, neither native kbd or touchpad worked.

Decided to do a new genkernel kernel from make defconfig
Both native kbd and touchpad/mouse are not recognized or work

I am out of ideas.
_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244
Back to top
View user's profile Send private message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Fri Dec 29, 2023 12:58 pm    Post subject: Reply with quote

I am gravitating towards this problem being a udev problem.

Why is the video bus being tagged as keyboard?

Keyboard:

udevadm info /dev/input/event2
Code:

P: /devices/platform/i8042/serio0/input/input2/event2
M: event2
R: 2
U: input
D: c 13:66
N: input/event2
L: 0
E: DEVPATH=/devices/platform/i8042/serio0/input/input2/event2
E: DEVNAME=/dev/input/event2
E: MAJOR=13
E: MINOR=66
E: SUBSYSTEM=input


Touchpad:

devadm info /dev/input/event19
Code:

P: /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-ELAN0626:00/input/input20/event19
M: event19
R: 19
U: input
D: c 13:83
N: input/event19
L: 0
E: DEVPATH=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-2/i2c-ELAN0626:00/input/input20/event19
E: DEVNAME=/dev/input/event19
E: MAJOR=13
E: MINOR=83
E: SUBSYSTEM=input


If I do:

evtest -–grab /dev/input/event2
I get feedback from the native keyboard. All keys work

evtest –-grab /dev/input/event19
I get feedback from the native touchpad.

Why is the keyboard being tagged as the video bus?

cat Xorg.0.log | grep event2
Code:

[  1395.974] (II) config/udev: Adding input device Video Bus (/dev/input/event21)
[  1395.975] (II) systemd-logind: got fd for /dev/input/event21 13:85 fd 37 paused 0
[  1395.975] (**) Option "Device" "/dev/input/event21"
[  1395.977] (II) event21 - Video Bus: is tagged by udev as: Keyboard
[  1395.977] (II) event21 - Video Bus: device is a keyboard
[  1395.978] (II) event21 - Video Bus: device removed
[  1395.978] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:01/input/input22/event21"
[  1395.999] (II) event21 - Video Bus: is tagged by udev as: Keyboard
[  1395.999] (II) event21 - Video Bus: device is a keyboard
[  1396.000] (II) config/udev: Adding input device Video Bus (/dev/input/event20)
[  1396.001] (II) systemd-logind: got fd for /dev/input/event20 13:84 fd 40 paused 0
[  1396.001] (**) Option "Device" "/dev/input/event20"
[  1396.002] (II) event20 - Video Bus: is tagged by udev as: Keyboard
[  1396.002] (II) event20 - Video Bus: device is a keyboard
[  1396.003] (II) event20 - Video Bus: device removed
[  1396.003] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:00/LNXVIDEO:00/input/input21/event20"
[  1396.004] (II) event20 - Video Bus: is tagged by udev as: Keyboard
[  1396.004] (II) event20 - Video Bus: device is a keyboard
[  1396.062] (II) config/udev: Adding input device Integrated Camera: Integrated C (/dev/input/event22)
[  1396.063] (II) systemd-logind: got fd for /dev/input/event22 13:86 fd 49 paused 0
[  1396.063] (**) Option "Device" "/dev/input/event22"
[  1396.064] (II) event22 - Integrated Camera: Integrated C: is tagged by udev as: Keyboard
[  1396.064] (II) event22 - Integrated Camera: Integrated C: device is a keyboard
[  1396.065] (II) event22 - Integrated Camera: Integrated C: device removed
[  1396.065] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/input/input28/event22"
[  1396.066] (II) event22 - Integrated Camera: Integrated C: is tagged by udev as: Keyboard
[  1396.066] (II) event22 - Integrated Camera: Integrated C: device is a keyboard
[  1396.068] (II) config/udev: Adding input device HDA Intel PCH Mic (/dev/input/event23)
[  1396.068] (II) config/udev: Adding input device HDA Intel PCH Headphone (/dev/input/event24)
[  1396.069] (II) config/udev: Adding input device HDA Intel PCH HDMI/DP,pcm=3 (/dev/input/event25)
[  1396.069] (II) config/udev: Adding input device HDA Intel PCH HDMI/DP,pcm=7 (/dev/input/event26)
[  1396.070] (II) config/udev: Adding input device HDA Intel PCH HDMI/DP,pcm=8 (/dev/input/event27)



If udev is incorrectly identifying a camera device as a keyboard, it could be due to a misconfiguration in the udev rules or an issue with the device itself.

udevadm info -a -n /dev/video0

Code:

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0/video4linux/video0':
    KERNEL=="video0"
    SUBSYSTEM=="video4linux"
    DRIVER==""
    ATTR{dev_debug}=="0"
    ATTR{index}=="0"
    ATTR{name}=="Integrated Camera: Integrated C"
    ATTR{power/control}=="auto"
    ATTR{power/runtime_active_time}=="0"
    ATTR{power/runtime_status}=="unsupported"
    ATTR{power/runtime_suspended_time}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-8/1-8:1.0':
    KERNELS=="1-8:1.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="uvcvideo"
    ATTRS{authorized}=="1"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bInterfaceClass}=="0e"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{bInterfaceProtocol}=="00"
    ATTRS{bInterfaceSubClass}=="01"
    ATTRS{bNumEndpoints}=="01"
    ATTRS{iad_bFirstInterface}=="00"
    ATTRS{iad_bFunctionClass}=="0e"
    ATTRS{iad_bFunctionProtocol}=="00"
    ATTRS{iad_bFunctionSubClass}=="03"
    ATTRS{iad_bInterfaceCount}=="02"
    ATTRS{interface}=="Integrated Camera"
    ATTRS{physical_location/dock}=="no"
    ATTRS{physical_location/horizontal_position}=="center"
    ATTRS{physical_location/lid}=="yes"
    ATTRS{physical_location/panel}=="front"
    ATTRS{physical_location/vertical_position}=="upper"
    ATTRS{supports_autosuspend}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-8':
    KERNELS=="1-8"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="ef"
    ATTRS{bDeviceProtocol}=="01"
    ATTRS{bDeviceSubClass}=="02"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="500mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 2"
    ATTRS{bcdDevice}=="0027"
    ATTRS{bmAttributes}=="80"
    ATTRS{busnum}=="1"
    ATTRS{configuration}=="USB Camera"
    ATTRS{devnum}=="6"
    ATTRS{devpath}=="8"
    ATTRS{idProduct}=="b604"
    ATTRS{idVendor}=="04f2"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="Chicony Electronics Co.,Ltd."
    ATTRS{maxchild}=="0"
    ATTRS{physical_location/dock}=="no"
    ATTRS{physical_location/horizontal_position}=="center"
    ATTRS{physical_location/lid}=="yes"
    ATTRS{physical_location/panel}=="front"
    ATTRS{physical_location/vertical_position}=="upper"
    ATTRS{power/active_duration}=="41827"
    ATTRS{power/autosuspend}=="0"
    ATTRS{power/autosuspend_delay_ms}=="0"
    ATTRS{power/connected_duration}=="1738184"
    ATTRS{power/control}=="auto"
    ATTRS{power/level}=="auto"
    ATTRS{power/persist}=="1"
    ATTRS{power/runtime_active_time}=="41672"
    ATTRS{power/runtime_status}=="suspended"
    ATTRS{power/runtime_suspended_time}=="1696246"
    ATTRS{product}=="Integrated Camera"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="fixed"
    ATTRS{remove}=="(not readable)"
    ATTRS{rx_lanes}=="1"
    ATTRS{serial}=="0001"
    ATTRS{speed}=="480"
    ATTRS{tx_lanes}=="1"
    ATTRS{urbnum}=="34"
    ATTRS{version}==" 2.01"

  looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1':
    KERNELS=="usb1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{authorized_default}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceProtocol}=="01"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="0mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0601"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="1"
    ATTRS{configuration}==""
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{idProduct}=="0002"
    ATTRS{idVendor}=="1d6b"
    ATTRS{interface_authorized_default}=="1"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="Linux 6.1.67-gentoo-x86_64 xhci-hcd"
    ATTRS{maxchild}=="16"
    ATTRS{power/active_duration}=="1739514"
    ATTRS{power/autosuspend}=="0"
    ATTRS{power/autosuspend_delay_ms}=="0"
    ATTRS{power/connected_duration}=="1739514"
    ATTRS{power/control}=="on"
    ATTRS{power/level}=="on"
    ATTRS{power/runtime_active_time}=="1739511"
    ATTRS{power/runtime_status}=="active"
    ATTRS{power/runtime_suspended_time}=="0"
    ATTRS{power/wakeup}=="disabled"
    ATTRS{power/wakeup_abort_count}==""
    ATTRS{power/wakeup_active}==""
    ATTRS{power/wakeup_active_count}==""
    ATTRS{power/wakeup_count}==""
    ATTRS{power/wakeup_expire_count}==""
    ATTRS{power/wakeup_last_time_ms}==""
    ATTRS{power/wakeup_max_time_ms}==""
    ATTRS{power/wakeup_total_time_ms}==""
    ATTRS{product}=="xHCI Host Controller"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{remove}=="(not readable)"
    ATTRS{rx_lanes}=="1"
    ATTRS{serial}=="0000:00:14.0"
    ATTRS{speed}=="480"
    ATTRS{tx_lanes}=="1"
    ATTRS{urbnum}=="112"
    ATTRS{version}==" 2.00"

  looking at parent device '/devices/pci0000:00/0000:00:14.0':
    KERNELS=="0000:00:14.0"
    SUBSYSTEMS=="pci"
    DRIVERS=="xhci_hcd"
    ATTRS{ari_enabled}=="0"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x0c0330"
    ATTRS{consistent_dma_mask_bits}=="64"
    ATTRS{d3cold_allowed}=="1"
    ATTRS{dbc}=="disabled"
    ATTRS{device}=="0xa36d"
    ATTRS{dma_mask_bits}=="64"
    ATTRS{driver_override}=="(null)"
    ATTRS{enable}=="1"
    ATTRS{irq}=="126"
    ATTRS{local_cpulist}=="0-11"
    ATTRS{local_cpus}=="fff"
    ATTRS{msi_bus}=="1"
    ATTRS{msi_irqs/126}=="msi"
    ATTRS{numa_node}=="-1"
    ATTRS{power/control}=="on"
    ATTRS{power/runtime_active_time}=="1763446"
    ATTRS{power/runtime_status}=="active"
    ATTRS{power/runtime_suspended_time}=="0"
    ATTRS{power/wakeup}=="enabled"
    ATTRS{power/wakeup_abort_count}=="0"
    ATTRS{power/wakeup_active}=="0"
    ATTRS{power/wakeup_active_count}=="0"
    ATTRS{power/wakeup_count}=="0"
    ATTRS{power/wakeup_expire_count}=="0"
    ATTRS{power/wakeup_last_time_ms}=="0"
    ATTRS{power/wakeup_max_time_ms}=="0"
    ATTRS{power/wakeup_total_time_ms}=="0"
    ATTRS{power_state}=="D0"
    ATTRS{remove}=="(not readable)"
    ATTRS{rescan}=="(not readable)"
    ATTRS{revision}=="0x10"
    ATTRS{subsystem_device}=="0x3807"
    ATTRS{subsystem_vendor}=="0x17aa"
    ATTRS{vendor}=="0x8086"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""
    ATTRS{power/control}=="auto"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"
    ATTRS{waiting_for_supplier}=="0"


udevadm info -a -n /dev/input/event2

Code:

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/platform/i8042/serio0/input/input2/event2':
    KERNEL=="event2"
    SUBSYSTEM=="input"
    DRIVER==""
    ATTR{power/control}=="auto"
    ATTR{power/runtime_active_time}=="0"
    ATTR{power/runtime_status}=="unsupported"
    ATTR{power/runtime_suspended_time}=="0"

  looking at parent device '/devices/platform/i8042/serio0/input/input2':
    KERNELS=="input2"
    SUBSYSTEMS=="input"
    DRIVERS==""
    ATTRS{capabilities/abs}=="0"
    ATTRS{capabilities/ev}=="120013"
    ATTRS{capabilities/ff}=="0"
    ATTRS{capabilities/key}=="a0000702100000 83803078f800d001 feffffdfffefffff fffffffffffffffe"
    ATTRS{capabilities/led}=="7"
    ATTRS{capabilities/msc}=="10"
    ATTRS{capabilities/rel}=="0"
    ATTRS{capabilities/snd}=="0"
    ATTRS{capabilities/sw}=="0"
    ATTRS{id/bustype}=="0011"
    ATTRS{id/product}=="0001"
    ATTRS{id/vendor}=="0001"
    ATTRS{id/version}=="ab83"
    ATTRS{inhibited}=="0"
    ATTRS{name}=="AT Translated Set 2 keyboard"
    ATTRS{phys}=="isa0060/serio0/input0"
    ATTRS{power/control}=="auto"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"
    ATTRS{properties}=="0"
    ATTRS{uniq}==""

  looking at parent device '/devices/platform/i8042/serio0':
    KERNELS=="serio0"
    SUBSYSTEMS=="serio"
    DRIVERS=="atkbd"
    ATTRS{bind_mode}=="auto"
    ATTRS{description}=="i8042 KBD port"
    ATTRS{drvctl}=="(not readable)"
    ATTRS{err_count}=="0"
    ATTRS{extra}=="0"
    ATTRS{firmware_id}=="PNP: PNP0303"
    ATTRS{force_release}=="369-370"
    ATTRS{id/extra}=="00"
    ATTRS{id/id}=="00"
    ATTRS{id/proto}=="00"
    ATTRS{id/type}=="06"
    ATTRS{power/control}=="on"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"
    ATTRS{power/wakeup}=="disabled"
    ATTRS{power/wakeup_abort_count}==""
    ATTRS{power/wakeup_active}==""
    ATTRS{power/wakeup_active_count}==""
    ATTRS{power/wakeup_count}==""
    ATTRS{power/wakeup_expire_count}==""
    ATTRS{power/wakeup_last_time_ms}==""
    ATTRS{power/wakeup_max_time_ms}==""
    ATTRS{power/wakeup_total_time_ms}==""
    ATTRS{scroll}=="0"
    ATTRS{set}=="2"
    ATTRS{softraw}=="1"
    ATTRS{softrepeat}=="0"

  looking at parent device '/devices/platform/i8042':
    KERNELS=="i8042"
    SUBSYSTEMS=="platform"
    DRIVERS=="i8042"
    ATTRS{driver_override}=="(null)"
    ATTRS{power/control}=="on"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"

  looking at parent device '/devices/platform':
    KERNELS=="platform"
    SUBSYSTEMS==""
    DRIVERS==""
    ATTRS{power/control}=="auto"
    ATTRS{power/runtime_active_time}=="0"
    ATTRS{power/runtime_status}=="unsupported"
    ATTRS{power/runtime_suspended_time}=="0"


dmesg | grep -i udev
and no output

udevadm control –reload
Code:

Failed to send reload request: No such file or directory


What am I missing here? I am not running systemd. I am with openrc.

Code:

ls: cannot access '/run/udev/control': No such file or directory



If the socket file is missing, it could indicate a problem with the udev installation or system configuration. So I reinstalled all the packages named udev.

Code:

 emerge virtual/libudev  virtual/udev sys-fs/udev-init-scripts sys-block/io-scheduler-udev-rules sys-apps/udevil dev-libs/libgudev


Recreating the Missing Control Socket
Code:

mkdir -p /run/udev
mknod -m 0666 /run/udev/control c 10 62


udevadm control --reload
Code:

Failed to send reload request: Connection refused


rc-service udev start
and
udevadm control –reload worked

Created an udev rule for the camera:
nano /etc/udev/rules.d/99-custom-camera.rules

Code:

SUBSYSTEM=="usb", ATTRS{idVendor}=="04f2", ATTRS{idProduct}=="b604", TAG+="uaccess", TAG+="udev-acl", SYMLINK+="video%n"


udevadm control –reload
rc-service udev restart


However, the videobus is still being tagged as keyboard
https://bbs.archlinux.org/viewtopic.php?id=231640

The camera does work
The native keyboard and touchpad do not.

lsusb -t
Code:

/:  Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/16p, 480M
    |__ Port 001: Dev 002, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 001: Dev 002, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 001: Dev 002, If 2, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 002: Dev 003, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 004: Dev 005, If 0, Class=Hub, Driver=hub/4p, 480M
            |__ Port 001: Dev 007, If 0, Class=Billboard, Driver=[none], 480M
            |__ Port 003: Dev 009, If 0, Class=Audio, Driver=snd-usb-audio, 12M
            |__ Port 003: Dev 009, If 1, Class=Audio, Driver=snd-usb-audio, 12M
            |__ Port 003: Dev 009, If 2, Class=Audio, Driver=snd-usb-audio, 12M
            |__ Port 003: Dev 009, If 3, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 003: Dev 004, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 003: Dev 004, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 008: Dev 006, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 008: Dev 006, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 014: Dev 008, If 0, Class=Wireless, Driver=btusb, 12M
    |__ Port 014: Dev 008, If 1, Class=Wireless, Driver=btusb, 12M
/:  Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/8p, 10000M
    |__ Port 004: Dev 002, If 0, Class=Hub, Driver=hub/4p, 5000M
        |__ Port 002: Dev 003, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
        |__ Port 004: Dev 004, If 0, Class=Vendor Specific Class, Driver=r8152, 5000M



Create a udev rule to blacklist this conflict:

Code:

echo ‘ SUBSYSTEM=="usb", DRIVER=="libinput", ATTRS{idVendor}=="04f2", ATTRS{idProduct}=="b604", ATTR{authorized}="0"’ >> /etc/udev/rules.d/90-blacklist-webcam-keyboard.rules


udevadm control –reload
rc-service udev restart
reboot


Camera works. Keyboard does not.

Conclusions so far:

    - It seems to be a udev and xorg problem.
    - Mostly a udev problem
    - Camera and keyboard are being seen by udev as the same thing


I am not sure if my custom udev rules are proper and the only thing I can think of is to create a udev rule for the keyboard but without ATTRS{idVendor}, ATTRS{idProduct} I am not sure how to do it.

Can anyone help with this?
_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244
Back to top
View user's profile Send private message
HeXiLeD
Veteran
Veteran


Joined: 20 Aug 2005
Posts: 1159
Location: Online

PostPosted: Fri Dec 29, 2023 1:43 pm    Post subject: Reply with quote

nano /etc/udev/rules.d/20-keyboard.rules

Code:

SUBSYSTEM="input", KERNEL=="event2", ATTRS{name}=="AT Translated Set 2 keyboard", ACTION=="add", ENV{XKBMODEL}="pc105", ENV{XKBLAYOUT}="us_intl", ENV{XKBVARIANT}="altgr-intl,abnt2,qwerty,euro"

or
Code:

SUBSYSTEM=="input", KERNEL=="event2", ATTRS{name}=="AT Translated Set 2 keyboard", ACTION=="add"


The root cause of this problem was a change somewhere some time ago with some updated. Someone removed important configurations from some package that got updated
The Gentoo live dvd (with the GUI) does work and recognizes the native keyboard and touchpad.
This is a fresh clean gentoo install

See also, related problems:
No keyboard with Xorg IdeaPad L340
https://forums.gentoo.org/viewtopic-t-1166650-highlight-.html

Problem is [SOLVED]
_________________
Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...

CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum