Elantech - Touchpad not working after upgrading to 18.10 from 18.04 (ThinkPad L480)

6,578

According to https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1803600 adding the kernel parameter psmouse.elantech_smbus=0 to the boot options fixes the problem across reboots.

And yes, this a bug with the linux kernel.

Share:
6,578

Related videos on Youtube

thi gg
Author by

thi gg

my about-me is currently blank

Updated on September 18, 2022

Comments

  • thi gg
    thi gg over 1 year

    When updating from 18.04 to 18.10 on a ThinkPad L480 the Elantech touchpad stopped working. This means it is not recognized at all. This problem occured after the first boot in 18.10

    dmesg | grep -i elantech shows the following errors:

    [    3.409043] psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x5f3001)
    [    3.427372] psmouse serio1: elantech: Synaptics capabilities query result 0x90, 0x18, 0x10.
    [    3.447275] psmouse serio1: elantech: Elan sample query result 00, 23, c8
    [    3.464905] psmouse serio1: elantech: Trying to set up SMBus access
    [    5.576149] elan_i2c 0-0015: 0-0015 supply vcc not found, using dummy regulator
    [    5.586505] elan_i2c 0-0015: failed to get resolution: -71
    [    5.586527] elan_i2c: probe of 0-0015 failed with error -71
    

    uname:

    $ uname -a
    Linux test 4.18.0-10-generic #11-Ubuntu SMP Thu Oct 11 15:13:55 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    

    I found the following thread which solves the problem temporarly (and reports the same problem in Arch): https://bugs.archlinux.org/task/59714

    Running the following command enables it again for the current session:

    sudo sh -c 'echo -n "elantech"> /sys/bus/serio/devices/serio1/protocol'
    

    dmesg afterwards:

    [  569.522490] psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x5f3001)
    [  569.544584] psmouse serio1: elantech: Synaptics capabilities query result 0x90, 0x18, 0x10.
    [  569.565939] psmouse serio1: elantech: Elan sample query result 00, 23, c8
    

    Before running the fix:

    $ cat /sys/bus/serio/devices/serio1/protocol
    ETSMBus
    

    and after:

    $ cat /sys/bus/serio/devices/serio1/protocol
    ETPS/2
    

    After reboot the command has to be run again, of course.

    Is this a bug in the 4.18 kernel?