Bug 103161

Summary: Touchpad is not detected on Asus T200TA
Product: Drivers Reporter: Marcin Mielniczuk (marcin.marcin.m)
Component: Input DevicesAssignee: drivers_input-devices
Status: NEW ---    
Severity: normal CC: hanipouspilot, mgottschlag, szg00000, zharkov
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 4.1.2 - 4.1.6 Subsystem:
Regression: No Bisected commit-id:
Attachments: Output from `xinput --list`
Output of dmesg
Output of lshw
Contents of /proc/bus/input/devices

Description Marcin Mielniczuk 2015-08-19 17:30:02 UTC
Created attachment 185261 [details]
Output from `xinput --list`

The touchpad is similar to the FocalTech touchpad on Asus R556LB. It isn't properly detected, though (see log from xinput), hence handled as a mouse.
Comment 1 Mathias Gottschlag 2015-08-28 10:07:56 UTC
Can you attach the output of dmesg and lshw as well? If it is a focaltech touchpad, just with a different ACPI-ID, then the modification to the driver might be rather simple.
Comment 2 Marcin Mielniczuk 2015-08-28 14:06:51 UTC
The dmesg is the same as the attachment from 20150828 in bug #102611. I'm using a patched kernel, displaying debug info, as asked in the same bug. Uploading here it for the sake of convenience.
Comment 3 Marcin Mielniczuk 2015-08-28 14:12:22 UTC
Created attachment 186041 [details]
Output of dmesg

You can see other dmesg outputs in bug #102611
Comment 4 Marcin Mielniczuk 2015-08-28 14:13:20 UTC
Created attachment 186051 [details]
Output of lshw
Comment 5 Marcin Mielniczuk 2015-09-06 16:54:44 UTC
Created attachment 186901 [details]
Contents of /proc/bus/input/devices

It appears that the touchpad under the name of ASUSTek COMPUTER INC. ASUS Base Station. (event4)
Comment 6 Mathias Gottschlag 2015-09-06 18:37:44 UTC
That touchpad is a USB device - while it could be similar internally, the driver will not be like the FocalTech driver at all.

You probably could install the Windows driver in a VM and use USB forwarding to connect the VM and the touchpad, and then use some kind of USB capturing tool to reverse-engineer the driver. One of the common linux hypervisors actually has USB tracing built-in, but I don't know which one it was.
Comment 7 Marcin Mielniczuk 2015-09-07 10:33:41 UTC
Hmmm... Could you elaborate a bit? Setting up Windows in a VIM is a piece of cake, but I still have no idea how to start REing the driver. 

Which module should I grab to base on? How can I connect the VM and touchpad in VirtualBox?

Will the instructions from here fit: https://wiki.wireshark.org/CaptureSetup/USB
Comment 8 Dmitry Tunin 2015-11-10 22:19:10 UTC
This touchpad should work with synaptics_i2c

it is SIS0817:00 0457:1084
Comment 9 Marcin Mielniczuk 2016-07-11 07:35:58 UTC
Dmitry,

synaptics_i2c is not loaded at boot. I tried loading it

    # modprobe synaptics_i2c

This doesn't help. The Ubuntu "Mouse & Touchpad" configuration app still treats it as a mouse. Two finger gestures don't work. 

Maybe the driver doesn't know that it should pick this device?

How do you know from the signature that the touchpad should work with synaptics_i2c?
Comment 10 Alexander_Zh 2016-11-04 20:38:25 UTC
Hello, on my T200TA:
# journalctl -k | grep hid
Ноя 04 19:37:55 linux-7ute kernel: hidraw: raw HID events driver (C) Jiri Kosina
Ноя 04 19:37:57 linux-7ute kernel: usbcore: registered new interface driver usbhid
Ноя 04 19:37:57 linux-7ute kernel: usbhid: USB HID core driver
Ноя 04 19:37:57 linux-7ute kernel: hid-generic 0003:0B05:17E0.0001: input,hidraw0: USB HID v1.11 Keyboard [ASUSTek COMPUTER INC. ASUS Base Station.] on usb-0000:00:14.0-3/input0

Ноя 04 19:37:57 linux-7ute kernel: hid-generic 0003:0B05:17E0.0002: input,hiddev0,hidraw1: USB HID v1.11 Device [ASUSTek COMPUTER INC. ASUS Base Station.] on usb-0000:00:14.0-3/input1
                             
Ноя 04 19:37:57 linux-7ute kernel: hid-generic 0003:0B05:17E0.0003: input,hiddev0,hidraw2: USB HID v1.11 Mouse [ASUSTek COMPUTER INC. ASUS Base Station.] on usb-0000:00:14.0-3/input2
            
Ноя 04 19:38:11 linux-7ute kernel: hid-multitouch 0018:0457:1084.0004: input,hidraw3: I2C HID v1.00 Device [SIS0817:00 0457:1084] on i2c-SIS0817:00

The last device seems to be touchpad on i2c bus. Could not find vendor by id 0457.
Does not work properly.
Loading synaptics_i2c does not change behavior.
Any ideas are welcome!