Linux Input/HID development
 help / color / mirror / Atom feed
* [6.12.107] MSI G63 9SEK - Synaptics touchpad falls back to PS/2, multitouch lost at boot, fixed by delayed protocol write
@ 2026-09-13  5:23 Cameron Spencer
  2026-09-13 20:22 ` Lovekesh Solanki
  0 siblings, 1 reply; 3+ messages in thread
From: Cameron Spencer @ 2026-09-13  5:23 UTC (permalink / raw)
  To: linux-input

Good morning/afternoon/evening,

I experienced an issue where my Synaptics touchpad is registered as a 
basic PS/2 device at boot, losing all multitouch functionality 
(two-finger scroll, gestures). Writing "synaptics" to the sysfs protocol 
file a few seconds after boot restores the SynPS/2 extended protocol and 
full functionality.

System:

- Kernel: 6.12.107+deb13-amd64
- Distro: LMDE 7 (Debian 13 based)
- Laptop: MSI G63 9SEK
- i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 
irq 1,12
- Fix:
     $ cat /etc/systemd/system/psmouse-reload.service
     [Unit]
     Description=Set psmouse protocol to synaptics
     After=systemd-udev-settle.service

     [Service]
     Type=oneshot
     ExecStart=/bin/sh -c 'for i in 1 2 3 4 5; do echo -n synaptics > 
/sys/bus/serio/devices/serio1/protocol 2>/dev/null && exit 0; sleep 2; done'
     RemainAfterExit=yes

     [Install]
     WantedBy=multi-user.target

- Result:
     $ dmesg | grep -iE 'psmouse|synaptics|serio|i8042'
     [    1.006462] i8042: PNP: PS/2 Controller 
[PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
     [    1.010384] serio: i8042 KBD port at 0x60,0x64 irq 1
     [    1.010392] serio: i8042 AUX port at 0x60,0x64 irq 12
     [    1.018706] input: AT Translated Set 2 keyboard as 
/devices/platform/i8042/serio0/input/input0
     # psmouse probes at boot, fails the Synaptics handshake, registers 
as plain "PS/2 Synaptics TouchPad" (no multitouch)
     [    2.384949] input: PS/2 Synaptics TouchPad as 
/devices/platform/i8042/serio1/input/input6
     # psmouse-reload service runs after systemd-udev-settle and writes 
synaptics to /sys/bus/serio/devices/serio1/protocol, then re-probes with 
the Synaptics extended protocol, queries coordinates, and registers as 
"SynPS/2 Synaptics TouchPad" (multitouch restored)
     [    8.654815] psmouse serio1: synaptics: queried max coordinates: 
x [..5656], y [..4728]
     [    8.683422] psmouse serio1: synaptics: queried min coordinates: 
x [1284..], y [1128..]
     [    8.739382] psmouse serio1: synaptics: Touchpad model: 1, fw: 
8.2, id: 0x1e2b1, caps: 0xf00323/0x840300/0x26800/0x0, board id: 3163, 
fw id: 2286728
     [    8.775128] input: SynPS/2 Synaptics TouchPad as 
/devices/platform/i8042/serio1/input/input21

The issue is 100% reproducible across reboots. "options psmouse 
proto=synaptics" in modprobe config causes "EINVAL" on module insert. 
The handshake fails at that early stage. A systemd service that retries 
the sysfs write after systemd-udev-settle is a reliable workaround.

This appears to be a timing issue where the touchpad firmware or i8042 
controller is not ready for the Synaptics handshake at the time psmouse 
first probes. A retry with a short delay in the probe path, or a 
something more fancy with initial handshake, would likely resolve this.

Happy to provide additional info if required.


Kind regards,

Cameron Spencer



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [6.12.107] MSI G63 9SEK - Synaptics touchpad falls back to PS/2, multitouch lost at boot, fixed by delayed protocol write
  2026-09-13  5:23 [6.12.107] MSI G63 9SEK - Synaptics touchpad falls back to PS/2, multitouch lost at boot, fixed by delayed protocol write Cameron Spencer
@ 2026-09-13 20:22 ` Lovekesh Solanki
  2026-09-17  6:40   ` Cameron Spencer
  0 siblings, 1 reply; 3+ messages in thread
From: Lovekesh Solanki @ 2026-09-13 20:22 UTC (permalink / raw)
  To: Cameron Spencer; +Cc: linux-input

On Sun, Sep 13, 2026 at 05:23:43AM +0000, Cameron Spencer wrote:
> I experienced an issue where my Synaptics touchpad is registered as a 
> basic PS/2 device at boot, losing all multitouch functionality 
> (two-finger scroll, gestures). Writing "synaptics" to the sysfs protocol 
> file a few seconds after boot restores the SynPS/2 extended protocol and 
> full functionality.
> 
> System:
> 
> - Kernel: 6.12.107+deb13-amd64
Hi,

Thanks for the report, could you see if the issue is reproducible in mainline
first?

>      $ dmesg | grep -iE 'psmouse|synaptics|serio|i8042'
>      [    1.006462] i8042: PNP: PS/2 Controller 
> [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
>      [    1.010384] serio: i8042 KBD port at 0x60,0x64 irq 1
>      [    1.010392] serio: i8042 AUX port at 0x60,0x64 irq 12
>      [    1.018706] input: AT Translated Set 2 keyboard as 
> /devices/platform/i8042/serio0/input/input0
>      # psmouse probes at boot, fails the Synaptics handshake, registers 
> as plain "PS/2 Synaptics TouchPad" (no multitouch)
>      [    2.384949] input: PS/2 Synaptics TouchPad as 
> /devices/platform/i8042/serio1/input/input6
>      # psmouse-reload service runs after systemd-udev-settle and writes 
> synaptics to /sys/bus/serio/devices/serio1/protocol, then re-probes with 
> the Synaptics extended protocol, queries coordinates, and registers as 
> "SynPS/2 Synaptics TouchPad" (multitouch restored)
>      [    8.654815] psmouse serio1: synaptics: queried max coordinates: 
> x [..5656], y [..4728]
>      [    8.683422] psmouse serio1: synaptics: queried min coordinates: 
> x [1284..], y [1128..]
>      [    8.739382] psmouse serio1: synaptics: Touchpad model: 1, fw: 
> 8.2, id: 0x1e2b1, caps: 0xf00323/0x840300/0x26800/0x0, board id: 3163, 
> fw id: 2286728
>      [    8.775128] input: SynPS/2 Synaptics TouchPad as 
> /devices/platform/i8042/serio1/input/input21
Seems like firmware is unable to answer extended queries for some time
after initialization and just falls back to PS/2,

perhaps we could just add a retry loop around
synaptics_query_hardware() to give firmware a little extra time.

Thanks,
Lovekesh

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [6.12.107] MSI G63 9SEK - Synaptics touchpad falls back to PS/2, multitouch lost at boot, fixed by delayed protocol write
  2026-09-13 20:22 ` Lovekesh Solanki
@ 2026-09-17  6:40   ` Cameron Spencer
  0 siblings, 0 replies; 3+ messages in thread
From: Cameron Spencer @ 2026-09-17  6:40 UTC (permalink / raw)
  To: Lovekesh Solanki; +Cc: linux-input

Hi,

Thanks for your swift reply. It appears this is not reproducible in 
mainline:

Tested on 7.3-rc2 and the device probes as SynPS/2 at ~1.9s without 
requiring workaround.

$ dmesg | grep -iE 'psmouse|synaptics|serio|i8042'
[    0.514787] i8042: PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] 
at 0x60,0x64 irq 1,12
[    0.518517] serio: i8042 KBD port at 0x60,0x64 irq 1
[    0.518524] serio: i8042 AUX port at 0x60,0x64 irq 12
[    0.527696] input: AT Translated Set 2 keyboard as 
/devices/platform/i8042/serio0/input/input0
[    1.910459] psmouse serio1: synaptics: queried max coordinates: x 
[..5656], y [..4728]
[    1.939125] psmouse serio1: synaptics: queried min coordinates: x 
[1284..], y [1128..]
[    1.939132] psmouse serio1: synaptics: Your touchpad (PNP: SYN1509 
SYN1500 SYN0002 PNP0f13) says it can support a different bus. If i2c-hid 
and hid-rmi are not used, you might want to try setting 
psmouse.synaptics_intertouch to 1 and report this to 
linux-input@vger.kernel.org.
[    1.995171] psmouse serio1: synaptics: Touchpad model: 1, fw: 8.2, 
id: 0x1e2b1, caps: 0xf00323/0x840300/0x26800/0x0, board id: 3163, fw id: 
2286728
[    2.031111] input: SynPS/2 Synaptics TouchPad as 
/devices/platform/i8042/serio1/input/input6




The previous kernel (6.12.101+deb13-amd64) doesn't have this issue either.


Kind regards,

Cameron

On 14/9/26 06:22, Lovekesh Solanki wrote:
> On Sun, Sep 13, 2026 at 05:23:43AM +0000, Cameron Spencer wrote:
>> I experienced an issue where my Synaptics touchpad is registered as a
>> basic PS/2 device at boot, losing all multitouch functionality
>> (two-finger scroll, gestures). Writing "synaptics" to the sysfs protocol
>> file a few seconds after boot restores the SynPS/2 extended protocol and
>> full functionality.
>>
>> System:
>>
>> - Kernel: 6.12.107+deb13-amd64
> Hi,
>
> Thanks for the report, could you see if the issue is reproducible in mainline
> first?
>
>>       $ dmesg | grep -iE 'psmouse|synaptics|serio|i8042'
>>       [    1.006462] i8042: PNP: PS/2 Controller
>> [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
>>       [    1.010384] serio: i8042 KBD port at 0x60,0x64 irq 1
>>       [    1.010392] serio: i8042 AUX port at 0x60,0x64 irq 12
>>       [    1.018706] input: AT Translated Set 2 keyboard as
>> /devices/platform/i8042/serio0/input/input0
>>       # psmouse probes at boot, fails the Synaptics handshake, registers
>> as plain "PS/2 Synaptics TouchPad" (no multitouch)
>>       [    2.384949] input: PS/2 Synaptics TouchPad as
>> /devices/platform/i8042/serio1/input/input6
>>       # psmouse-reload service runs after systemd-udev-settle and writes
>> synaptics to /sys/bus/serio/devices/serio1/protocol, then re-probes with
>> the Synaptics extended protocol, queries coordinates, and registers as
>> "SynPS/2 Synaptics TouchPad" (multitouch restored)
>>       [    8.654815] psmouse serio1: synaptics: queried max coordinates:
>> x [..5656], y [..4728]
>>       [    8.683422] psmouse serio1: synaptics: queried min coordinates:
>> x [1284..], y [1128..]
>>       [    8.739382] psmouse serio1: synaptics: Touchpad model: 1, fw:
>> 8.2, id: 0x1e2b1, caps: 0xf00323/0x840300/0x26800/0x0, board id: 3163,
>> fw id: 2286728
>>       [    8.775128] input: SynPS/2 Synaptics TouchPad as
>> /devices/platform/i8042/serio1/input/input21
> Seems like firmware is unable to answer extended queries for some time
> after initialization and just falls back to PS/2,
>
> perhaps we could just add a retry loop around
> synaptics_query_hardware() to give firmware a little extra time.
>
> Thanks,
> Lovekesh


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-09-17  6:41 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-13  5:23 [6.12.107] MSI G63 9SEK - Synaptics touchpad falls back to PS/2, multitouch lost at boot, fixed by delayed protocol write Cameron Spencer
2026-09-13 20:22 ` Lovekesh Solanki
2026-09-17  6:40   ` Cameron Spencer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox