I recently acquired a Lenovo IdeaPad L340-15API that works mostly OK with the exception of the touchpad (and the wireless interface, but I already fixed that). Looking around I found several similar issues for people with other Lenovo laptops, all with ELAN touchpads.
One solution that appeared was to use an specific kernel, but that is an older version than the one given in Disco. Looking further, it looks like what needs to be done is to patch the kernel adding this version of the touchpad to the drivers/input/mouse/elan_i2c_core.c, and looking at the latest commits on the Linux kernel, this model of touchpad has already been added to de driver, just in a future version of the kernel, here it is.
So, how do I add support for this touchpad in the current kernel of Disco?
Output of uname -a
:
Linux twisto-laptop-ultimate 5.0.0-20-generic #21-Ubuntu SMP Mon Jun 24 09:32:09 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux