Bug 195287

Summary: Possible regression with "SYNAPTICS Synaptics Touch Digitizer V04" no longer working
Product: Drivers Reporter: Lorenzo J. Lucchini (ljlbox)
Component: Input DevicesAssignee: drivers_input-devices
Status: RESOLVED CODE_FIX    
Severity: normal CC: aduggan, benjamin.tissoires, dmitry.torokhov
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 4.11.0.0-rc5 Subsystem:
Regression: No Bisected commit-id:

Description Lorenzo J. Lucchini 2017-04-08 00:58:35 UTC
The combined Synaptics touchscreen and touchpad in my Asus T302CA works under kernels 4.9 (tested under Debian) and under 4.10 (tested under Debian and Fedora) but not under current candidates for 4.11 (tested under Fedora).

It appears under neither "xinput" nor "libinput-debug-events", and while it appears under "cat /proc/bus/input/devices" on all kernels as

I: Bus=0003 Vendor=06cb Product=1754 Version=0111
N: Name="SYNAPTICS Synaptics Touch Digitizer V04"
P: Phys=usb-0000:00:14.0-5/input0
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/0003:06CB:1754.0004/input/input10
U: Uniq=
H: Handlers=mouse1 event8 
B: PROP=2
B: EV=b
B: KEY=400 0 0 0 0 0
B: ABS=260800000000003

I: Bus=0003 Vendor=06cb Product=1754 Version=0111
N: Name="SYNAPTICS Synaptics Touch Digitizer V04 Pen"
P: Phys=usb-0000:00:14.0-5/input0
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/0003:06CB:1754.0004/input/input11
U: Uniq=
H: Handlers=mouse2 event9
B: PROP=0
B: EV=1b
B: KEY=c03 1 0 0 0 0
B: ABS=1000003
B: MSC=10

on 4.11.0 no "mouse1" or "mouse2" are specified as handlers, and it it just completely unresponsive.

Simply downgrading the kernel back to 4.10 on the same installation where this would fail under 4.11 made it work again.
Comment 1 Andrew Duggan 2017-04-13 16:53:44 UTC
The issue has been fixed by reverting the change. Here is the message where I describe what I think is going on.:

https://lkml.org/lkml/2017/4/10/1048

But, in the future we may want to fix how hid-core picks the driver. Can you provide a log of the touchscreen? I want to see exactly what the HID device is reporting. Instructions for how to do that are here:

https://bentiss.github.io/hid-replay-docs/
Comment 2 Lorenzo J. Lucchini 2017-04-13 22:25:00 UTC
I should file a separate bug about this, but, since I see in your comment that this has to do with both the touchscreen and the touchpad being Synaptics, I will mention that in both 4.10 and 4.11 (up to Fedora's rc6), the touchpad lacks palm detection and disable-while-typing abilities, while in Debian's 4.9 those were available. Might be unrelated, but just in case.

I am not sure whether you want the HID recording from the kernel where the touchscreen works (4.10 and below) or the one where it doesn't (4.11 up to rc6). I am currently running 4.10 so https://paste.ee/p/Y5oQM has that.

I will post the output (if any) from 4.11 later after I reboot.
Comment 3 Andrew Duggan 2017-04-13 22:34:44 UTC
Thanks, that log file is enough. hid-record is collecting info about the device so it doesn't matter which higher level HID driver is being used.

I'm not aware of any changes to hid-multitouch in 4.10 which would cause palm detection to stop working. I would file a separate bug for this issue. But, it could also be that something changed in the userspace input stack.
Comment 4 Lorenzo J. Lucchini 2017-04-14 14:03:02 UTC
I guess I will try to contact libinput developers first about that multitouch issue.

Meanwhile, with Fedora Rawhide's kernel 4.11.0-0.rc6.git2.1.fc27.x86_64, my touchscreen issue is solved.