Touchpad non-operational after suspend

jbo@

Developer
I'm experiencing issues with the touchpad after resuming from suspend.

System:
  • Lenovo ThinkPad X1 Carbon Gen9
  • FreeBSD 13.1-STABLE (March 27 2022)
After a regular boot, the touchpad is working as expected. If I then use zzz(8) to suspend the system and resume afterwards, the touchpad is behaving weirdly:
  • Regular cursor movements (one finger) are very, very laggy. It feels like the system is updating the cursor's position only once ever 800ms (or there about).
  • Anything multi-touch related such as two-finter scrolling is not working at all.
The keyboard and the trackpoint continue to work as expected after resuming from suspend.

I'm using libinput as the input driver. Here's the relevant part of my Xorg config:
Code:
Section "InputClass"
    Identifier "libinput touchpad catchall"
    Driver "libinput"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Option "AccelSpeed" "0.5"
    Option "ClickMethod" "clickfinger"
    Option "DisableWhileTyping" "on"
    Option "HorizontalScrolling" "on"
    Option "LeftHanded" "off"
    Option "NaturalScrolling" "on"
    Option "ScrollMethod" "twofinger"
    Option "Tapping" "on"
    Option "TappingDrag" "on"
    Option "TappingDragLock" "off"
EndSection

Any idea how to track down the problem, what the problem could be or how to fix this?
I could not spot anything obviously in Xorg's log.
 
Last edited:
With an older Thinkpad configuration, I set up /boot/loader.conf with:
Code:
hw.psm.synaptics_support="1"
Code:
acpi_ibm_load="YES"

Do you have these?
 
Some articles and a few threads discuss Lenovo touchpad and mouse problems. I gather that, somebody has a fix. One that looks promising says install "sysutils/iichid" as either port or package.
Then manually load this kernel module with:
# kldload iichid

But my experience has been with older Thinkpads so the new models clearly have different devices.
 
Last edited:
Back
Top