Fwd: DELL0A78:00 27C6:0D42 Touchpad (gestures) doesn't work properly after resuming from suspend.

From: Bagas Sanjaya <hidden>
Date: 2023-08-04 12:59:27
Also in: lkml

Hi,

I notice a bug report on Bugzilla [1]. Quoting from it:
Description:
------------
The touchpad doesn't function normally after resuming from suspend. Touch works most of the time so does the hardware click buttons. The things which don't work are touchpad multitouch gestures (2 fingers and 3 fingers) and cursor movement is also somewhat laggy.

Workaround:
-----------
removing the module i2c_hid_acpi just before suspend and adding it after resume seems to solve the problem. 

Script: (output of `cat /usr/lib/systemd/system-sleep/make-touchpad-work.sleep`)
-----------------------------------------------------------------------------

#!/bin/sh

case $1/$2 in
  pre/*)
    echo "Going to $2..."
    # Place your pre suspend commands here, or `exit 0` if no pre suspend action required
    echo "Removing i2c_hid_acpi module before suspend."
    modprobe -r i2c_hid_acpi
    ;;
  post/*)
    echo "Waking up from $2..."
    # Place your post suspend (resume) commands here, or `exit 0` if no post suspend action required
    sleep 2
    echo "Adding i2c_hid_acpi module after suspend (before resuming)."
    modprobe i2c_hid_acpi
    ;;
esac
-----------------------------------------------------------------------------

When was it discovered?
-------------------------
I had prior hardware issues with the touchpad so I didn't notice 
it for a very long time, each time such an issue appeared I thought it was a hardware issue. But the issue is still there even after fixing the hardware (loose ribbon cable). Before the hardware issue, there was an issue with resuming from suspend on my laptop (because of laptop begin particularly new AMD variant). So, if I remember correctly, the touchpad worked fine for particular duration between suspend issue being fixed and hardware issue appearing. 

GNU/Linux version:
------------------
Linux localhost.localdomain 6.5.0-rc4-1-default+ 
#1 SMP PREEMPT_DYNAMIC Thu Aug 3 20:15:04 +0545 2023 x86_64 x86_64 x86_64 GNU/Linux

Touchpad information:
------------------------
PS/2 00.0: 10500 PS/2 Mouse
  [Created at input.249]
  Unique ID: AH6Q.rKa1+aijZtE
  Hardware Class: mouse
  Model: "DELL0A78:00 27C6:0D42 Touchpad"
  Vendor: 0x27c6 
  Device: 0x0d42 "DELL0A78:00 27C6:0D42 Touchpad"
  Compatible to: int 0x0210 0x0001
  Device File: /dev/input/mice (/dev/input/mouse2)
  Device Files: /dev/input/mice, /dev/input/mouse2, /dev/input/event3, /dev/input/by-path/platform-AMDI0010:03-event-mouse, /dev/input/by-path/platform-AMDI0010:03-mouse
  Device Number: char 13:63 (char 13:34)
  Driver Info #0:
    Buttons: 1
    Wheels: 0
    XFree86 Protocol: explorerps/2
    GPM Protocol: exps2
  Config Status: cfg=no, avail=yes, need=no, active=unknown


Prior to testing on mainline kernel, it was tested on opensuse tumbleweed and reported here: https://bugzilla.suse.com/show_bug.cgi?id=1212779
See Bugzilla for the full thread.

FYI, I forward the BZ report because it was assigned to generic `Kernel`
component instead, which missed linux-input list. I also add the reporter's
address to To: list so that you can reach him without having to go to
Bugzilla.

Thanks.

[1]: https://bugzilla.kernel.org/show_bug.cgi?id=217761

-- 
An old man doll... just what I always wanted! - Clara
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help