Thinkpad T14 Gen4 with ELAN0676:00 04F3:3195 Touchpad freezes/resumes randomly

Hello everyone,

I am on wayland, and I saw that other people on the internet with this touchpad have the same problem. I thought it was a hardware problem, but since many people are reporting it I would like to see if there is a solution or a workaround.

My xinput list

sudo xinput list                                                                                       
WARNING: running xinput against an Xwayland server. See the xinput man page for details.
⎑ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ xwayland-pointer:10                     	id=6	[slave  pointer  (2)]
⎜   ↳ xwayland-relative-pointer:10            	id=7	[slave  pointer  (2)]
⎜   ↳ xwayland-pointer-gestures:10            	id=8	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ xwayland-keyboard:10                    	id=9	[slave  keyboard (3)]

My libinput list-devices relevant part.

Device:                  ELAN0676:00 04F3:3195 Mouse
Kernel:                  /dev/input/event9
Id:                      i2c:04f3:3195
Group:                   5
Seat:                    seat0, default
Capabilities:            pointer 
Tap-to-click:            n/a
Tap-and-drag:            n/a
Tap button map:          n/a
Tap drag lock:           n/a
Left-handed:             disabled
Nat.scrolling:           disabled
Middle emulation:        n/a
Calibration:             n/a
Scroll methods:          button
Scroll button:           BTN_RIGHT
Scroll button lock:      disabled
Click methods:           none
Clickfinger button map:  n/a
Disable-w-typing:        n/a
Disable-w-trackpointing: n/a
Accel profiles:          flat *adaptive custom
Rotation:                0.0
Area rectangle:          n/a

Device:                  ELAN0676:00 04F3:3195 Touchpad
Kernel:                  /dev/input/event10
Id:                      i2c:04f3:3195
Group:                   5
Seat:                    seat0, default
Size:                    114x58mm
Capabilities:            pointer gesture
Tap-to-click:            disabled
Tap-and-drag:            enabled
Tap button map:          left/right/middle
Tap drag lock:           disabled
Left-handed:             disabled
Nat.scrolling:           disabled
Middle emulation:        disabled
Calibration:             n/a
Scroll methods:          *two-finger edge 
Scroll button:           n/a
Scroll button lock:      n/a
Click methods:           *button-areas clickfinger 
Clickfinger button map:  left/right/middle
Disable-w-typing:        enabled
Disable-w-trackpointing: enabled
Accel profiles:          flat *adaptive custom
Rotation:                n/a
Area rectangle:          n/a

Some dmesg -T logs:

Sun Feb  8 13:02:44 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:02:45 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:02:47 2026] i2c_designware i2c_designware.0: controller timed out
[Sun Feb  8 13:04:24 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:04:24 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:04:24 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:04:24 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:04:24 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:04:24 2026] i2c_designware i2c_designware.0: i2c_dw_handle_tx_abort: lost arbitration
[Sun Feb  8 13:04:26 2026] i2c_designware i2c_designware.0: controller timed out

I am running on linux kernel

Linux futura 6.12.68-1-MANJARO #1 SMP PREEMPT_DYNAMIC Fri, 30 Jan 2026 23:06:15 +0000 x86_64 GNU/Linux

But I tried also 6.18.9-1

My kernel is not using the elan_i2c kernel module, but as far as I understand it’s using:

$ lsmod|grep i2c
2c_i801               45056  0
i2c_smbus              20480  1 i2c_i801
i2c_mux                16384  1 i2c_i801
i2c_hid_acpi           12288  0
i2c_hid                45056  1 i2c_hid_acpi
i2c_dev                28672  0
i2c_algo_bit           24576  2 xe,i915

i2c_hid_acpi as main driver.

I have a script that I run when the touchpad is completely frozen.

─────┬─────────────────────────────────────────────────────────────────────────────────────────────────────────────────
     β”‚ File: /home/kpanic/bin/touch-reset.sh
─────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────
   1 β”‚ #/bin/bash
   2 β”‚ 
   3 β”‚ sudo rmmod i2c_hid_acpi && sudo modprobe i2c_hid_acpi
─────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────

but I don’t know what to do to solve the problem.
Someone suggested to use the psmouse linux driver, however how can I configure it?

And if you could address me to some bug tracker, that would be great if this is not the place for this question!

Thank you so much, have a great Sunday!

Based on the title of this topic, I can conclude that your touchpad is from Elantech. Here is a link to the ArchWiki with very similar problem solving: Laptop - ArchWiki , and also to the Arch Linux forum: Touchpad not working at login screen / Newbie Corner / Arch Linux Forums something there might be helpful. Also, on the Lenovo forum, some users reported that their touchpads lag when the laptop is plugged in. They were advised to update the BIOS and drivers, so it might be worth checking out. Here’s the link to that as well: English Community-Lenovo Community
I think the easiest solution for now would be to simply use a regular mouse :slightly_smiling_face:

1 Like

This probably won’t help, even if the driver works.

What happens with my Lenovo machines, using psmouse, is that the touchpad sometimes doesn’t work after the first sleep/wake cycle following a reboot, so I issue a command similar to the one you have in your script. But, it does work fine following subsequent sleep/wake cycles.

Disclaimer: I normally use a mouse, but can confirm the touchpad works fine when I open the lid (I also use a separate monitor).

This all seems to be kernel dependent, since I had much wore issues on the blue Lenovo with older kernel series (particularly the HWE ones). This seems to have improved somewhat, though.

Thanks a lot for the pointers! I really appreciate that.

I just tried linux 6.19.0-1-MANJARO and it looks like the problem of the touchpad is super mitigated. I’ll monitor the situation and hopefully it will stay like this! :tada: :crossed_fingers:

1 Like