我通过 dmesg 检查,发现有建议对我的新笔记本电脑(型号:HP-15-BS576TX)的触摸板使用较新的 hid-rmi 驱动程序。
来自 dmesg:
[ 2.507282] psmouse serio1: synaptics: queried max coordinates: x [..5648], y [..4826]
[ 2.538726] psmouse serio1: synaptics: queried min coordinates: x [1292..], y [1026..]
[ 2.538729] psmouse serio1: synaptics: Your touchpad (PNP: SYN3251 PNP0f13) says it can support a different bus. If i2c-hid and hid-rmi are not used, you might want to try setting psmouse.synaptics_intertouch to 1 and report this to [email protected].
[ 2.601437] psmouse serio1: synaptics: Touchpad model: 1, fw: 8.2, id: 0x1e2b1, caps: 0xf00123/0x840300/0x2e800/0x400000, board id: 3320, fw id: 2548310
[ 2.641628] input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio1/input/input4
因此,我使用内核启动参数“psmouse.synaptics_touchpad=1”进行启动。但是,似乎没有什么变化,触摸板继续使用旧的驱动程序:
**:~$ cat /proc/bus/input/devices
I: Bus=0011 Vendor=0002 Product=0007 Version=01b1
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input102
U: Uniq=
H: Handlers=mouse0 event4
B: PROP=1
B: EV=b
B: KEY=e520 30000 0 0 0 0
B: ABS=660800011000003
带有内核参数 psmouse.synaptics_touchpad=1 的 dmesg 没有太多信息,除了触摸板继续使用旧的驱动程序:
psmouse serio1: synaptics: queried max coordinates: x [..5648], y [..4826]
[ 2.322704] psmouse serio1: synaptics: queried min coordinates: x [1292..], y [1026..]
[ 2.322707] psmouse serio1: synaptics: Trying to set up SMBus access
[ 2.325589] psmouse serio1: synaptics: SMbus companion is not ready yet
[ 2.372028] usb 1-5: new high-speed USB device number 4 using xhci_hcd
[ 2.388206] psmouse serio1: synaptics: Touchpad model: 1, fw: 8.2, id: 0x1e2b1, caps: 0xf00123/0x840300/0x2e800/0x400000, board id: 3320, fw id: 2548310
[ 2.428811] input: SynPS/2 Synaptics TouchPad as /devices/platform/i8042/serio1/input/input4
i2c-hid、hid-rmi 模块可与内核 4.13.0-19-generic 一起使用
有没有可能让这个触摸板/触控板与较新的 hid-rmi 驱动程序兼容?谢谢
答案1
此驱动程序 (i2c_i801) 在 ubuntu 中被列入黑名单。请参阅 /etc/modprobe.d/blacklist.conf。您可以尝试注释掉以下行:blacklist i2c_i801
,但您可能会遇到暂停问题。如果您的触摸板在从暂停状态恢复后冻结,请尝试添加规则以在暂停前卸载 (rmmod) 模块并在恢复后重新加载 (modprobe)。请参阅:man systemd-sleep
。祝你好运!:)