Bug 204733

Summary: Mouse gesture is broken on Elentech touchpad
Product: Drivers Reporter: Urgau (lolo.branstett)
Component: Input DevicesAssignee: drivers_input-devices
Status: RESOLVED CODE_FIX    
Severity: normal CC: benjamin.tissoires, kai.heng.feng, lolo.branstett, peter.hutterer
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: >=5.2.9 Subsystem:
Regression: Yes Bisected commit-id:
Attachments: Full dmesg
evtest multitouch
libinput record from the kernel 5.2.10
libinput record from the working kernel 5.2.8
libinput record with events (working kernel 5.2.8)
libinput record with events (non-working kernel 5.2.10)

Description Urgau 2019-08-30 07:06:16 UTC
Created attachment 284699 [details]
Full dmesg
Comment 1 Urgau 2019-08-30 07:06:56 UTC
Created attachment 284701 [details]
evtest multitouch
Comment 2 Urgau 2019-08-30 07:11:22 UTC
With the kernel <= 4.2.8 my touchpad was detected as:
kernel: input: ETPS/2 Elantech Touchpad as /devices/platform/i8042/serio1/input/input8

But with the kernel >= 4.2.9 it is detected as:
kernel: elan_i2c 0-0015: Elan Touchpad: Module ID: 0x034d, Firmware: 0x0002, Smaple: 0x0003, IAP: 0x0000
kernel: input: Elan Touchpad as /devices/pci0000:00/0000:00:1f.4/i2c-0/0-0015/input/input11

I think that the problem the commit "Input: elantech - enable SMBus on new (2018+) systems " (since it's
the only commit who mention Elantech in the 4.2.9 CHANGELOG).
My laptop is a HP Pavilion Power Laptop 15-cb037nf, I'm on Archlinux with all updates (except kernel).
Comment 3 Urgau 2019-08-30 07:17:20 UTC
I talk about the kernel 5.2.x and not 4.2.x. Sorry
Comment 4 Kai-Heng Feng 2019-08-30 07:49:15 UTC
Multiple fingers can be detected:

Event: time 1567148329.356553, type 1 (EV_KEY), code 333 (BTN_TOOL_DOUBLETAP), value 1
Event: time 1567148330.131900, type 1 (EV_KEY), code 333 (BTN_TOOL_DOUBLETAP), value 0
Event: time 1567148330.131900, type 1 (EV_KEY), code 334 (BTN_TOOL_TRIPLETAP), value 1
Event: time 1567148333.854200, type 1 (EV_KEY), code 333 (BTN_TOOL_DOUBLETAP), value 1
Event: time 1567148333.854200, type 1 (EV_KEY), code 334 (BTN_TOOL_TRIPLETAP), value 0

So I think it's a userspace issue. Let's ask Benjamin for more info on this touchpad.
Comment 5 Benjamin Tissoires 2019-08-30 12:59:31 UTC
Both logs are from the (working) 5.2.8 kernel.

Can you attach the `sudo libinput record` logs from the non working kernel?

Can you also be more specific about "Mouse gesture is broken". Which gestures are you talking about?
Comment 6 Urgau 2019-08-30 17:20:30 UTC
Created attachment 284705 [details]
libinput record from the kernel 5.2.10
Comment 7 Urgau 2019-08-30 17:21:02 UTC
Created attachment 284707 [details]
libinput record from the working kernel 5.2.8
Comment 8 Urgau 2019-08-30 17:27:25 UTC
What I mean by "Mouse gesture is broken" is that I can't make any mouse movements if the left or right button is activated. So I can't move the cursor when a trackpad button is pressed.
Comment 9 Benjamin Tissoires 2019-09-03 15:17:49 UTC
heh, I wanted to check on the events, but it seems you only attached the static definition.

Can you resend a libinput record of both kernels when you are doing the problematic gestures?

> I can't make any mouse movements if the left or right button is activated.

Note that there is a high chance this is a user space issue. We will see that when we will see the logs.
Comment 10 Urgau 2019-09-03 17:35:06 UTC
Created attachment 284783 [details]
libinput record with events (working kernel 5.2.8)
Comment 11 Urgau 2019-09-03 17:36:23 UTC
Created attachment 284785 [details]
libinput record with events (non-working kernel 5.2.10)
Comment 12 Peter Hutterer 2019-09-03 21:42:06 UTC
Replaying those events I can see them come through just fine but the description makes it sound like https://gitlab.freedesktop.org/libinput/libinput/issues/343. This is almost certainly a libinput bug, not a kernel bug. Please file an issue there so we can hopefully reproduce and fix it.
Comment 13 Benjamin Tissoires 2019-09-06 08:35:09 UTC
As mentioned in https://gitlab.freedesktop.org/libinput/libinput/issues/355#note_220725, 5.2.9 backported a patch from v5.3 that depended on https://patchwork.kernel.org/project/linux-input/list/?series=122327&state=%2A&archive=both

I think the best action would be to revert the 5.2.9 patch that seems to also interfere with https://bugzilla.kernel.org/show_bug.cgi?id=204771
Comment 14 Benjamin Tissoires 2019-09-06 08:55:27 UTC
FWIW, revert submitted: https://patchwork.kernel.org/patch/11134811/

@Urgau, would it be possible for you to test a v5.3-rc kernel? So we get confirmation that we can close this bug once the 5.2 revert gets merged in.
Comment 15 Urgau 2019-09-08 16:17:45 UTC
This issue is solve with the kernel 5.2.13