在 ThinkPad L480 上从 18.04 更新到 18.10 时,Elantech 触摸板停止工作。这意味着它根本无法识别。此问题在 18.10 首次启动后出现
dmesg | grep -i elantech
显示以下错误:
[ 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 -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
我发现以下线程可以暂时解决问题(并在 Arch 中报告了同样的问题): https://bugs.archlinux.org/task/59714
运行以下命令为当前会话再次启用它:
sudo sh -c 'echo -n "elantech"> /sys/bus/serio/devices/serio1/protocol'
之后的 dmesg:
[ 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
运行修复之前:
$ cat /sys/bus/serio/devices/serio1/protocol
ETSMBus
之后:
$ cat /sys/bus/serio/devices/serio1/protocol
ETPS/2
当然,重启后必须再次运行该命令。
这是 4.18 内核的一个错误吗?
答案1
根据https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1803600 将内核参数添加psmouse.elantech_smbus=0
到启动选项可以解决重启后的问题。
是的,这是 Linux 内核的一个错误。