I have an issue that causes my touchpad and keyboard to freeze completely, randomly. I have searched and tried dozens of possible solutions to no avail. This problem spans across multiple distros. I've tried everything from various Ubuntu flavors to arch, etc.. I have ruled out hardware failure and replaced my RAM just in case. I've tried synaptics and libinput, several different kernels.
I've narrowed it down to being related to having an "elantech" touchpad.
When it freezes, the only thing I can do is plugin a usb keyboard and run this:
Code:
sudo modprobe -r psmouse && sudo modprobe psmouse
After that, it works fine for a while. Sometimes for 2 minutes, sometimes 5 hours... it's seemingly random.
I've never had it freeze when the machine is idle. I have had it freeze with the lmb "pressed", usually it's when I'm "using" the mouse in some way. Dragging, multi-touch or clicking. One note about it freezing when clicking is that the hardware mouse I plug in afterwards cannot left click so I can only assume that the system thinks it's being "pressed".
There are THOUSANDS of posts online with different ideas and possible solutions.. not a single one has a fully "working" solution for intel laptops with an elantech touchpad.
Can anyone here help?
Here's some more information that may help debug.
Code:
[34970.992535] psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x361f03)
[34971.008217] psmouse serio1: elantech: Synaptics capabilities query result 0x41, 0x15, 0x0f.
[34971.023257] psmouse serio1: elantech: Elan sample query result 06, 29, 75
[35622.417867] psmouse serio1: bad data from KBC - timeout bad parity
[35622.427542] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
[35622.440276] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
[35622.453046] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
[35622.465783] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
[35622.478506] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
[35622.478516] psmouse serio1: issuing reconnect request
[39095.137332] psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x361f03)
[39095.153095] psmouse serio1: elantech: Synaptics capabilities query result 0x41, 0x15, 0x0f.
[39095.168069] psmouse serio1: elantech: Elan sample query result 06, 29, 75
Code:
# xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=19 [slave pointer (2)]
I'm on archlinux at the moment as I was hoping to keep things simple but I haven't had any luck. I had the same problem on every distro I have tried. Including Ubuntu, Linuxmint, Pop_OS and a few more. Here's the current kernel:
Code:
Linux version 5.18.15-arch1-2 (linux@archlinux) (gcc (GCC) 12.1.1 20220730, GNU ld (GNU Binutils) 2.38)
Other things I have tried:
Adding "psmouse.proto=bare" to "/etc/default/grub"
Creating a /etc/X11/xorg.conf.d/70-synaptics.conf file with various options.
Modifying /etc/mkinitcpio.conf MODULES to load i915 first.
Adding /etc/modprobe.d/elan.conf with "options psmouse elantech_smbus=0 synaptics_intertouch=0"
The laptop I have is a samsung NP900X4C-A03US. Although in my googling this problem appears to not only be samsung laptops.
^ None of this made any difference towards solving the problem.
At this point if it's not something I can resolve then I'd even settle for automatically running the modprobe command when it fails, but I'm not sure how to detect that it failed since there is usually no error in any log files that I can find.
Code:
/sbin/lspci
00:00.0 Host bridge: Intel Corporation 3rd Gen Core processor DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
00:16.0 Communication controller: Intel Corporation 7 Series/C216 Chipset Family MEI Controller #1 (rev 04)
00:1b.0 Audio device: Intel Corporation 7 Series/C216 Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.3 PCI bridge: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 4 (rev c4)
00:1c.4 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 5 (rev c4)
00:1d.0 USB controller: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation HM75 Express Chipset LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 7 Series/C216 Chipset Family SMBus Controller (rev 04)
01:00.0 Network controller: Intel Corporation Centrino Advanced-N 6235 (rev 24)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
03:00.0 USB controller: Renesas Technology Corp. uPD720202 USB 3.0 Host Controller (rev 02)