Re: Help getting ELAN066C touchpad working in Linux
From: Hans de Goede <hidden>
Date: 2023-10-15 09:26:37
Hi Jonathan, On 10/14/23 23:16, Jonathan Dieter wrote:
On Sat, 2023-10-14 at 22:30 +0200, Hans de Goede wrote:
<snip>
Hans, Thank you so much! Adding a DSDT overlay worked perfectly! The touchpad is functioning exactly as you would expect (using the i2c_hid_acpi driver).
That is good to hear, so that confirms that this line:
If ((^^^PCI0.LPC0.H_EC.ECRD (RefOf (^^^PCI0.LPC0.H_EC.TPTY)) == 0x01))
In the DSDT is not functioning as it should under Linux.
<snip ls -l /sys/bus/i2c/devices/ which looks good now>
Is there some way we can get a fix in the kernel for this buggy ACPI table or should I be asking Lenovo for a fix?
I assume (and it seems so) that the:
If ((^^^PCI0.LPC0.H_EC.ECRD (RefOf (^^^PCI0.LPC0.H_EC.TPTY)) == 0x01))
line in the DSDT does work under Windows. So now we need to figure out
why it does work under Windows and not under Linux.
Can you please run:
sudo acpidump -o acpidump.txt
And then reply to this email with the generated acpidump.txt attached ?
Note please drop the linux-input list from the Cc when sending the acpidump.
Then I'll take a look at the full DSDT and we'll see from there.
As for getting a BIOS fix for this, I think that the chances of Lenovo fixing this when asked are not good.
Regards,
Hans