触摸板问题 - Elantech PS/2

触摸板问题 - Elantech PS/2

我能够让它与以下设备一起工作:

sudo modprobe -r psmouse
sudo modprobe psmouse proto=imps 

我的笔记本电脑的触摸板(我认为是 Elantech 的)根本不起作用。

我正在双启动 Win8.1 和 Ubuntu 15.04,并且在启动到 Windows 时运行良好。

触摸板已在系统设置中启用。

当我运行时,xinput -list输出是:

 Virtual core pointer                       id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SIGMACHIP Usb Mouse                       id=10   [slave  pointer  (2)]
⎜   ↳ ETPS/2 Elantech Touchpad                  id=14   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ USB2.0 HD UVC WebCam                      id=11   [slave  keyboard (3)]
    ↳ Asus WMI hotkeys                          id=12   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=13   [slave  keyboard (3)]

在 Windows 下,在设备管理器中,触摸板被列为 PS/2 鼠标,这就是我认为它是 Elantech 的原因。

此外,输出lsmod包括:

psmouse               118784  0

据我理解,这意味着 ps/2 鼠标的内核模块已加载,但未被任何设备使用。

这是否只是让模块与触摸板正确配合使用的问题?还是我可能完全没有安装驱动程序?

如果缺少驱动程序,是否有任何 Linux 开发人员可以上传驱动程序的站点/存储库?

如果我无法将正确的驱动程序交给我,请告诉我一个可以开始编写的好地方。

任何正确的推动都会受到赞赏,如果有人需要更多信息来诊断/解决问题,我会在终端上用手指按下键盘。

dev@kernelPanic:~$ dmesg | grep pnp
[    0.843456] pnp: PnP ACPI init
[    0.843557] pnp 00:00: Plug and Play ACPI device, IDs PNP0b00 (active)
[    0.844084] pnp 00:03: Plug and Play ACPI device, IDs ETD0108 SYN0a00 SYN0002 PNP0f03 PNP0f13 PNP0f12 (active)
[    0.844175] pnp 00:04: Plug and Play ACPI device, IDs ATK3001 PNP030b (active)
[    1.047565] pnp: PnP ACPI: found 6 devices

答案1

有两种解决方案(使用其中之一):

  1. 安装内核 4.0.4。它支持您的触摸板。
  2. 使用 dkms 安装驱动程序。

第一个方向很明显。第二个方向是红帽 Bugzilla

只需下载该存档,将其解压到 /usr/src 并运行这些命令即可。我没有在 3.19 内核上测试该软件包。如果遇到问题,您可以通过以下方式卸载它

sudo dkms remove psmouse/etd0108 --all

如果有很多人好心地要求我这样做,我会将一个包添加到我的 ppa 中,用于所有受支持的 Ubuntu 版本,就像我对 Focaltech 包所做的那样。;-)

答案2

我最近升级到了 Ubuntu 15.10,我的 Acer Aspire 笔记本电脑上的 Elantech 触摸板完全停止工作了。令我惊讶的是,我甚至无法在硬件设备中找到它。经过多次失败后,我发现了一个小问题,并找到了解决办法。

运行 DMESG 后发现在 3.5 左右的标记处初始化设备时,它提到 PNP / TAP 时序错误,并有一条注释说尝试使用“i8042.nopnp”运行。(没有设备信息,只有 pnp/tap)

我编辑了 /etc/default/grub,将推荐的行添加到我的条目中,如下所示:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i8042.nopnp"

保存文件并运行:

sudo update-grub

重新启动并按下功能键 + 触摸板来启用/禁用它,之后它完全按照预期工作。我现在注意到 DMESG 中的计时错误已经消失。我提到查看该行的 DMESG 输出,因为不同的计算机可能在“i8042.nopnp”中的 .nopnp 前面有不同的数字,需要将其添加到您的 grub 条目中。

我花了半天时间尝试其他东西,但没有成功,我想确保这个可以尝试。我能够删除该行并确认它停止工作,再次添加该行,触摸板就可以正常工作了。

这是 Ubuntu 15.10 的全新安装,即使在设置中触摸板也无法工作,我使用外部 USB 鼠标开始使用。任何时候都没有进行任何系统修改,只是安装并直接修复触摸板。内核版本为 4.4.2。

我希望这对其他人有帮助!

相关内容