Bug 211553

Summary: elan touchpad doesnt work
Product: Drivers Reporter: david becerra (davidbecerraporres)
Component: Input DevicesAssignee: drivers_input-devices
Status: NEW ---    
Severity: normal CC: bugzilla.kernel.org, jack.shotton
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: everything up to 5.14 Subsystem:
Regression: No Bisected commit-id:

Description david becerra 2021-02-03 20:40:04 UTC
the elan touchpad found in lenovo yoga slim 7i doesnt work
output of cat /proc/bus/input/device with relevant info:
I: Bus=0018 Vendor=04f3 Product=0060 Version=0000
N: Name="Elan Touchpad"
P: Phys=
S: Sysfs=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-10/i2c-ELAN0000:00/input/input8
U: Uniq=
H: Handlers=event8 mouse0 
B: PROP=5
B: EV=b
B: KEY=e520 10000 0 0 0 0
B: ABS=663800013000003

let me know any more info that might be required
Comment 1 david becerra 2021-02-08 19:52:38 UTC
sudo dmesg | grep -i elan
[    4.044919] elan_i2c i2c-ELAN0000:00: supply vcc not found, using dummy regulator
[    4.165445] elan_i2c i2c-ELAN0000:00: Elan Touchpad: Module ID: 0x0060, Firmware: 0x0001, Sample: 0x0001, IAP: 0x0000
[    4.165568] input: Elan Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-10/i2c-ELAN0000:00/input/input8
Comment 2 david becerra 2021-02-08 20:56:16 UTC
if i use the touchpad dmesg floods with this
[  377.343993] elan_i2c i2c-ELAN0000:00: invalid report id data (0)
[  377.350666] elan_i2c i2c-ELAN0000:00: invalid report id data (0)
[  377.357470] elan_i2c i2c-ELAN0000:00: invalid report id data (0)
[  377.359572] elan_i2c i2c-ELAN0000:00: invalid report id data (0)
Comment 3 david becerra 2021-02-24 22:52:15 UTC
i got it to work by either doing
echo -n "i2c-ELAN0000:00" > /sys/bus/i2c/drivers/elan_i2c/unbind
echo -n "i2c-ELAN0000:00" > /sys/bus/i2c/drivers/i2c_hid/bind

or blacklisting elan_i2c driver on modprobe, however the right/secondary click doesnt work
Comment 4 david becerra 2021-02-24 22:55:41 UTC
sudo dmesg | grep -i elan
[    5.793127] i2c_hid i2c-ELAN0000:00: supply vdd not found, using dummy regulator
[    5.793166] i2c_hid i2c-ELAN0000:00: supply vddl not found, using dummy regulator
[    5.795833] i2c_hid i2c-ELAN0000:00: i2c_hid_get_input: IRQ triggered but there's no data
[    5.939488] input: ELAN0000:00 04F3:3138 Mouse as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-14/i2c-ELAN0000:00/0018:04F3:3138.0002/input/input9
[    5.939536] input: ELAN0000:00 04F3:3138 Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-14/i2c-ELAN0000:00/0018:04F3:3138.0002/input/input11
[    5.939570] hid-generic 0018:04F3:3138.0002: input,hidraw0: I2C HID v1.00 Mouse [ELAN0000:00 04F3:3138] on i2c-ELAN0000:00
[    6.053908] input: ELAN0000:00 04F3:3138 Mouse as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-14/i2c-ELAN0000:00/0018:04F3:3138.0002/input/input13
[    6.054066] input: ELAN0000:00 04F3:3138 Touchpad as /devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-14/i2c-ELAN0000:00/0018:04F3:3138.0002/input/input15
[    6.054217] hid-multitouch 0018:04F3:3138.0002: input,hidraw0: I2C HID v1.00 Mouse [ELAN0000:00 04F3:3138] on i2c-ELAN0000:00
Comment 5 david becerra 2021-08-12 07:38:53 UTC
as of yesterday left and center buttons now work, blacklist is still needed tho
Comment 6 Artyom 2021-11-25 18:18:42 UTC
I have same problem on 5.15.3 kernel too (opensuse)