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カーネルのバグですか?
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/18036 によると、カーネルパラメータの追加psmouse.elantech_smbus=0
を起動オプションに追加すると、再起動後に問題が修正されます。
そして、はい、これはLinuxカーネルのバグです。