lenovo IdeaPad-3-14ARE05 Touchpad not working. Ubuntu 20.04
If you use kernel 5.8 or newer your can try:
- Open terminal
- Login with
root
(on debiansu -l
, on Ubuntusudo su
) - Edit file
/etc/default/grub
- Replace line
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
withGRUB_CMDLINE_LINUX_DEFAULT="pci=nocrs quiet splash"
- Save file
/etc/default/grub
- Execute
update-grub
- Reboot
This has been tested on Debian bullseye and Ubuntu Focal on Ideapad 3 15iil30.
With bullseye on an ideapad 3, everything is functional, mouse, touchpad, video, sound, webcam, bluetouth, etc.
As I cannot say this is a duplicate of this question:
I will add the answer of @theunreal89 here for future reference. (I don't think good answers should be in the comments)
It seems not to be possible to blacklist elants_i2c
driver, as it is a built-in kernel module for Ubuntu:
stefano@stefano-IdeaPad-5-15ARE05:~$ modinfo elants-i2c
name: elants_i2c
filename: (builtin)
license: GPL
description: Elan I2c Touchscreen driver
author: Scott Liu <[email protected]>
so there is a faster way than compiling the kernel. Just create a SystemD unit like the below:
stefano@stefano-IdeaPad-5-15ARE05:~$ cat /etc/systemd/system/touchpadfix.service
[Unit]
Description=Fix touchpad issue by binding correct driver
[Service]
ExecStart=/usr/local/bin/touchpadfix
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
and create /usr/local/bin/touchpadfix
file as follows
stefano@stefano-IdeaPad-5-15ARE05:~$ cat /usr/local/bin/touchpadfix
#!/bin/bash
modprobe i2c_hid
echo "i2c-ELAN0001:00" > /sys/bus/i2c/drivers/elants_i2c/unbind
echo "i2c-ELAN0001:00" > /sys/bus/i2c/drivers/i2c_hid/bind
and then make it executable, enable and start the unit with the following commands:
chmod +x /usr/local/bin/touchpadfix
sudo systemctl daemon-reload
sudo systemctl enable --now touchpadfix.service
and touchpad should start to work immediately!
SOURCE: IdeaPad 5 15are05 - elan touchpad not working on 20.04 nor on 18.04 and https://wiki.archlinux.org/index.php/Lenovo_IdeaPad_5_15are0 which is giving us unbind-bind fix and dl3it user on this post https://bugzilla.kernel.org/show_bug.cgi?id=207759#c17