You are not logged in.
For a number of months I have had issues with the touchpad on my laptop. There are a variety of problems that have somewhat fluctuated over time, but basically:
- The touchpad is often laggy, especially if I try to move the cursor quickly it will stop responding
- After using it for a while (5 minutes to an hour) it often stops working. Cursor remains frozen and clicking does not do anything.
- When clicking the touchpad, problems generally occur. A click often creates a subsequent lag in the cursor movement, and if I click quickly (a few clicks in the span of 5-10 seconds), then I have a high chance of the touchpad not working anymore altogether
- Often when waking up from suspend, the touchpad no longer works
- Lately the touchpad just does not work at all, even after a reboot.
- When moving the cursor, it often jumps randomly, and somehow the cursor starts selecting text, without having pressed any button
I have worked around this by using an external mouse, but I am now on the road a lot and this is really rather complicated when I don't have any smooth surface to put the external mouse on. I would really like to solve this once and for all.
Things I have tried:
- As per this link (https://wiki.archlinux.org/title/Lenovo … )#Trackpad) I have tried removing xf86-input-synaptics.
- Using the same suggestions, I have also tried keeping xf86-input-synaptics. No luck there.
- As per this link (https://wiki.archlinux.org/title/Touchp … te/suspend) I have added adding MatchDevicePath "/dev/input/event*" to the /etc/X11/xorg.conf.d/70-synaptics.conf -- this made the touchpad work again after a reboot, but still laggy and freezing
- I have tried running "echo -n "reconnect" > /sys/bus/serio/devices/serio1/drvctl" when it freezes. This worked once to get the touchpad to buggily work again after it froze, but nothing else.
- I have tried "sudo modprobe -r rmi_smbus && sudo modprobe rmi_smbus" which would sometimes bring the touchpad back to live after suspend, but again buggily and temporarily. No longer works.
- I have added psmouse.synaptics_intertouch=0 to my kernel parameters -- this made it freeze even faster with a whole suit of different errors
Machine: Lenovo Carbon X1 - gen 2
Kernel: 5.13.12
pacman -Qs input
local/ibus 1.5.25-1
Next Generation Input Bus for Linux
local/libcdio 2.1.0-2
GNU Compact Disc Input and Control Library
local/libinput 1.18.1-1
Input device management and event handling library
local/libxi 1.7.10-3
X11 Input extension library
local/perl-ipc-run3 0.048-9
run a subprocess with input/ouput redirection
local/potrace 1.16-2
Utility for tracing a bitmap (input: PBM,PGM,PPM,BMP; output:
EPS,PS,PDF,SVG,DXF,PGM,Gimppath,XFig)
local/xf86-input-evdev 2.10.6-2 (xorg-drivers)
X.org evdev input driver
local/xf86-input-keyboard 1.9.0-3 (xorg-drivers)
X.Org keyboard input driver
local/xf86-input-libinput 1.1.0-1 (xorg-drivers)
Generic input driver for the X.Org server based on libinput
local/xf86-input-mouse 1.9.3-1 (xorg-drivers)
X.org mouse input driver
local/xf86-input-vmmouse 13.1.0-5 (xorg-drivers)
X.org VMWare Mouse input driver
local/xf86-input-void 1.4.1-5 (xorg-drivers)
X.org void input driver
local/xorg-server 1.20.13-2 (xorg)
Xorg X server
local/xorg-xinput 1.6.3-2 (xorg-apps xorg)
Small commandline tool to configure devices
libinput debug-events
-event2 DEVICE_ADDED Power Button seat0 default group1 cap:k
-event13 DEVICE_ADDED Video Bus seat0 default group2 cap:k
-event0 DEVICE_ADDED Lid Switch seat0 default group3 cap:S
-event1 DEVICE_ADDED Sleep Button seat0 default group4 cap:k
-event10 DEVICE_ADDED Integrated Camera: Integrated C seat0 default group5 cap:k
-event3 DEVICE_ADDED AT Translated Set 2 keyboard seat0 default group6 cap:k
-event4 DEVICE_ADDED ThinkPad Extra Buttons seat0 default group7 cap:k
-event11 DEVICE_ADDED Synaptics TM2668-002 seat0 default group8 cap:pg size 97x69mm tap(dl off) left scroll-nat scroll-2fg-edge click-buttonareas-clickfinger dwt-on
-event12 DEVICE_ADDED TPPS/2 IBM TrackPoint seat0 default group9 cap:p left scroll-nat scroll-button
less /var/log/Xorg.0.log | grep -i touch
[ 17.495] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/event13)
[ 17.495] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "evdev touchpad catchall"
[ 17.495] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "libinput touchpad catchall"
[ 17.495] (II) Using input driver 'libinput' for 'SynPS/2 Synaptics TouchPad'
[ 17.496] (**) SynPS/2 Synaptics TouchPad: always reports core events
[ 17.496] (II) event13 - SynPS/2 Synaptics TouchPad: is tagged by udev as: Touchpad
[ 17.539] (II) event13 - SynPS/2 Synaptics TouchPad: device is a touchpad
[ 17.539] (II) event13 - SynPS/2 Synaptics TouchPad: device removed
[ 17.539] (II) XINPUT: Adding extended input device "SynPS/2 Synaptics TouchPad" (type: TOUCHPAD, id 11)
[ 17.540] (**) SynPS/2 Synaptics TouchPad: (accel) selected scheme none/0
[ 17.540] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration factor: 2.000
[ 17.540] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration threshold: 4
[ 17.542] (II) event13 - SynPS/2 Synaptics TouchPad: is tagged by udev as: Touchpad
[ 17.548] (II) event13 - SynPS/2 Synaptics TouchPad: device is a touchpad
[ 17.549] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/mouse0)
[ 24.413] (II) event13 - SynPS/2 Synaptics TouchPad: device removed
[ 411.195] (II) event13 - SynPS/2 Synaptics TouchPad: is tagged by udev as: Touchpad
[ 411.200] (II) event13 - SynPS/2 Synaptics TouchPad: device is a touchpad
[ 413.250] (II) event13 - SynPS/2 Synaptics TouchPad: device removed
xinput list list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Synaptics TM2668-002 id=12 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ Integrated Camera: Integrated C id=9 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)]
↳ ThinkPad Extra Buttons id=11 [slave keyboard (3)]
cat /etc/default/grub | grep CMDLINE_LINUX_DEFAULT
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_iommu=off psmouse.synaptics_intertouch=1"
Here are some errors I see in my dmesg.
[ +0.945559] Invalid finger state[0]: 0x03
[ +0.000004] Invalid finger state[1]: 0x03
[ +0.000001] Invalid finger state[2]: 0x03
[ +0.000001] Invalid finger state[3]: 0x03
[ +0.000000] Invalid finger state[4]: 0x03
[ +17.018718] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[Aug22 21:25] rmi4_physical rmi4-00: Failed to read irqs, code=-6
[ +1.850962] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[Aug22 21:26] psmouse serio2: TrackPoint at rmi4-00.fn03/serio0/input0 lost synchronization, throwing 1 bytes away.
[ +5.262965] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[Aug22 21:27] rmi4_physical rmi4-00: Failed to read irqs, code=-6
[Aug22 21:46] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[Aug22 21:51] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[Aug22 21:56] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[Aug22 22:00] rmi4_f03 rmi4-00.fn03: rmi_f03_attention: Failed to read F03 output buffers: -6
[ +0.000006] psmouse serio2: bad data from KBC - timeout
[Aug22 22:01] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[ +1.537660] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[ +0.781976] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
[ +0.365716] rmi4_f30 rmi4-00.fn30: rmi_f30_attention: Failed to read F30 data registers: -6
Any ideas what I could try next??
Last edited by george55 (2021-08-23 03:28:35)
Offline
Hi, I'm hitting a very similar thing, tried to get some answers here without any luck.
https://www.reddit.com/r/linuxquestions … anagement/
Did you solve your problem?
Offline
Hiya. This is a bit of a necropost but I recently discovered on my ThinkPad that if I load the i915 driver first, it seems to eliminate this rmi_smbus breaking after suspend.
I noticed it whilst trying to get persistent command line fonts that don't reset when the framebuffer changes from EFI FB to the Intel DRM framebuffer. Some info for doing this with the NVIDIA driver here:
https://wiki.archlinux.org/title/NVIDIA#Early_loading
https://wiki.archlinux.org/title/Mkinitcpio#MODULES
Basically I just add i915 to the MODULES array in /etc/mkinitcpio.conf
Last edited by kpedersen (2023-04-20 15:27:31)
Offline