2

While trying to fix some of my function keys, I decided to update my BIOS. Although this didn't solve my original issue, my touchpad was no longer working!

Initially, after the first reboot, it still showed up in /proc/bus/input/devices and xinput, but just didn't seem to work. Then, Ubuntu (19.10) prompted me to install a lot of new updates.

First of all, I couldn't boot into ubuntu anymore from GRUB2 (I run dual-boot with windows), although that was quickly resolved by changing my kernel to vmlinuz-5.3.0-19-generic in the entry (from 4.xx-23 I believe).

Then, after finally successfully rebooting, my touchpad doesn't show up in /proc/bus/input/devices or xinput at all anymore! The only trace I managed to find was this output in dmesg:

[    2.471492] psmouse serio4: elantech: assuming hardware version 4 (with firmware version 0x461f01)
[    2.474830] systemd[1]: /lib/systemd/system/dbus.socket:4: ListenStream= references a path below legacy directory /var/run/, updating /var/run/dbus/system_bus_socket → /run/dbus/system_bus_socket; please update the unit file accordingly.
[    2.487000] psmouse serio4: elantech: Synaptics capabilities query result 0x00, 0x16, 0x0d.
[    2.504567] psmouse serio4: elantech: Elan sample query result 01, 7b, 75
[    2.534034] systemd[1]: Listening on initctl Compatibility Named Pipe.
[    2.534644] systemd[1]: Created slice User and Session Slice.
[    2.534709] systemd[1]: Listening on udev Kernel Socket.
[    2.534797] systemd[1]: Listening on Journal Socket (/dev/log).
[    2.534806] systemd[1]: Reached target Slices.
[    2.535269] psmouse serio4: elantech: Trying to set up SMBus access
[    2.557682] EXT4-fs (sdb5): re-mounted. Opts: errors=remount-ro
[    2.560654] lp: driver loaded but no devices found
[    2.569821] ppdev: user-space parallel port driver
[    2.712339] Adding 2097148k swap on /swapfile.  Priority:-2 extents:5 across:2260988k SSFS
[    2.748547] elan_i2c 0-0015: 0-0015 supply vcc not found, using dummy regulator
[    2.756831] elan_i2c 0-0015: failed to get product ID: -71
[    2.803035] elan_i2c 0-0015: failed to get product ID: -71
[    2.847035] elan_i2c 0-0015: failed to get product ID: -71
[    2.883114] elan_i2c: probe of 0-0015 failed with error -71

Does anybody have a clue on how to fix this?


EDIT:

After LinuxSecurityFreak's suggestion I tried activating the touchpad with:

sudo rmmod elan_i2c
sudo modprobe elan_i2c

After which the touchpad does show up again in /proc/bus/input/devices and xinput! But.. It still doesn't work.

/var/log/syslog reports the following for sudo rmmod elan_i2c:

Nov 20 14:19:25 User xdg-desktop-por[1895]: Failed to get application states: GDBus.Error:org.freedesktop.portal.Error.Failed: Could not get window list: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: App introspection not allowed
Nov 20 14:20:03 User /usr/lib/gdm3/gdm-x-session[1695]: (II) config/udev: removing device Elan Touchpad
Nov 20 14:20:03 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Option "fd" "56"
Nov 20 14:20:03 User /usr/lib/gdm3/gdm-x-session[1695]: (II) event16 - Elan Touchpad: device removed
Nov 20 14:20:03 User /usr/lib/gdm3/gdm-x-session[1695]: (II) UnloadModule: "libinput"
Nov 20 14:20:03 User /usr/lib/gdm3/gdm-x-session[1695]: (II) systemd-logind: releasing fd for 13:80
Nov 20 14:20:03 User /usr/lib/gdm3/gdm-x-session[1695]: (EE) systemd-logind: failed to release device: Device not taken

and for sudo modprobe elan_i2c:

Nov 20 14:20:06 User kernel: [  359.718149] elan_i2c 0-0015: 0-0015 supply vcc not found, using dummy regulator
Nov 20 14:20:06 User kernel: [  359.726146] elan_i2c 0-0015: failed to get product ID: -71
Nov 20 14:20:06 User kernel: [  359.775575] elan_i2c 0-0015: Elan Touchpad: Module ID: 0x0000, Firmware: 0x0000, Sample: 0x0000, IAP: 0x0000
Nov 20 14:20:06 User kernel: [  359.776325] input: Elan Touchpad as /devices/pci0000:00/0000:00:1f.4/i2c-0/0-0015/input/input26
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) config/udev: Adding input device Elan Touchpad (/dev/input/mouse1)
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) No input driver specified, ignoring this device.
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) This device may have been added with another device file.
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (II) config/udev: Adding input device Elan Touchpad (/dev/input/mouse1)
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (II) No input driver specified, ignoring this device.
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (II) This device may have been added with another device file.
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) config/udev: Adding input device Elan Touchpad (/dev/input/event16)
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Elan Touchpad: Applying InputClass "libinput touchpad catchall"
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) Using input driver 'libinput' for 'Elan Touchpad'
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (II) config/udev: Adding input device Elan Touchpad (/dev/input/event16)
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (**) Elan Touchpad: Applying InputClass "libinput touchpad catchall"
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (II) Using input driver 'libinput' for 'Elan Touchpad'
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) systemd-logind: got fd for /dev/input/event16 13:80 fd 66 paused 0
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Elan Touchpad: always reports core events
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Option "Device" "/dev/input/event16"
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Option "_source" "server/udev"
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) event16 - Elan Touchpad: is tagged by udev as: Touchpad
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (II) systemd-logind: got fd for /dev/input/event16 13:80 fd 30 paused 1
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1195]: (II) systemd-logind: releasing fd for 13:80
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) event16 - Elan Touchpad: device is a touchpad
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) event16 - Elan Touchpad: device removed
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1f.4/i2c-0/0-0015/input/input26/event16"
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) XINPUT: Adding extended input device "Elan Touchpad" (type: TOUCHPAD, id 14)
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Option "AccelerationScheme" "none"
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Elan Touchpad: (accel) selected scheme none/0
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Elan Touchpad: (accel) acceleration factor: 2.000
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (**) Elan Touchpad: (accel) acceleration threshold: 4
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) event16 - Elan Touchpad: is tagged by udev as: Touchpad
Nov 20 14:20:06 User /usr/lib/gdm3/gdm-x-session[1695]: (II) event16 - Elan Touchpad: device is a touchpad

Strangely enough, running the same commands again the touchpad disappears yet again, with sudo modprobe elan_i2c giving a different output:

ov 20 14:22:19 User kernel: [  492.932593] elan_i2c 0-0015: 0-0015 supply vcc not found, using dummy regulator
Nov 20 14:22:19 User kernel: [  492.940679] elan_i2c 0-0015: failed to get product ID: -71
Nov 20 14:22:19 User kernel: [  492.986685] elan_i2c 0-0015: failed to get product ID: -71
Nov 20 14:22:19 User kernel: [  493.034988] elan_i2c 0-0015: failed to get product ID: -71
Nov 20 14:22:19 User kernel: [  493.074890] elan_i2c: probe of 0-0015 failed with error -71
  • 1
    Can't fall asleep,... it might be related to this bug report Please have a look, I did not study it too deep. – LinuxSecurityFreak Nov 20 '19 at 12:36
2

This question on AskUbuntu seems to have been about the exact same bug, and the corresponding answer fixed my problem. In short:

  • Run sudo sh -c 'echo -n "elantech"> /sys/bus/serio/devices/serio1/protocol' to get the touchpad working after boot, or
  • Add psmouse.elantech_smbus=0 to your boot options to fix at startup.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.