Re: Help getting ELAN066C touchpad working in Linux
From: Hans de Goede <hidden>
Date: 2023-10-14 19:40:58
Hi Jonathan, For starters, did you see this in dmesg? : [ 0.422648] i8042: PNP: PS/2 Controller [PNP0303:KBC0] at 0x60,0x64 irq 1 [ 0.422652] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp And did you try booting with "i8042.nopnp" ? Also what is the output of: ls -l /sys/bus/i2c/devices and of: ls -l /sys/bus/acpi/devices/ELAN066C:00/ and of: cat /sys/bus/acpi/devices/ELAN066C:00/status ? Regards, Hans On 10/14/23 19:12, jdieter@gmail.com wrote:
Hi Dmitry, Hans, input mailing list, I have two Lenovo 300e laptops, one running Windows and the other Fedora. The laptop has a touchscreen, a stylus and a touchpad. The touch screen and stylus work perfectly, but, under Fedora, the touchpad doesn't work at all and isn't detected by the kernel. The device shows up in /sys/bus/acpi/devices/ELAN066C:00/ with a modalias of acpi:ELAN066C:PNP0C50:. I'm not sure if the touchpad should be using elan_i2c or i2c_hid_acpi. In a somewhat naive attempt to get something to happen, I added:{ "ELAN066C", 0 }, /* Lenovo 100e/300e 2nd gen AMD */to include/linux/input/elan-i2c-ids.h, but the kernel still doesn't auto-load the module. I can get elan_i2c to recognize something if I run: # echo elan_i2c 0x15 > /sys/bus/i2c/devices/i2c-1/new_device but the IRQ defaults to 0, and I get an error about an IRQ conflict:[ 2317.791897] i2c i2c-1: delete_device: Deleting device elan_i2c at 0x15 [ 2319.317468] i2c i2c-1: new_device: Instantiated device elan_i2c at 0x15 [ 2319.317662] elan_i2c 1-0015: supply vcc not found, using dummy regulator [ 2319.433176] elan_i2c 1-0015: Elan Touchpad: Module ID: 0x00be, Firmware: 0x0003, Sample: 0x0003, IAP: 0x000e [ 2319.433184] elan_i2c 1-0015: Elan Touchpad Extra Information: Max ABS X,Y: 3206,1828 Width X,Y: 152,152 Resolution X,Y: 31,31 (dots/mm) ic type: 0xa info pattern: 0x0 [ 2319.433339] genirq: Flags mismatch irq 0. 00002008 (elan_i2c) vs. 00015a00 (timer)By manually setting the IRQ to an unused value in the driver, I can at least get the driver to create a new mouse device in /dev/input, but the touchpad still doesn't work. At this point, I don't know if I'm really close or barking up the completely wrong tree. A bug report from earlier this year about an identical system is at: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1976556 Attached is the dsl of the device in ACPI. I would really appreciate any help in figuring out how to get this working. Please let me know if there's anything else you need from me. Thanks, Jonathan