psmouse 内核模块重新编译

psmouse 内核模块重新编译

我有一台超级本,但它的触摸板不起作用。

Linux mike 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-1 (2016-03-06) x86_64 GNU/Linux

触摸板不起作用,并且它也没有列在以下命令的输出中。

cat /proc/bus/input/devices

它的输出

触摸板型号:"Sentelic Finger Sensing Pad Driver" 所以我输入了以下命令

modinfo psmouse

它的输出

当我输入以下命令时根据这些信息

ls /lib/modules/3.16.0-4-amd64/kernel/drivers/input/mouse/

我看到以下输出:

appletouch.ko  bcm5974.ko  cyapa.ko  psmouse.ko  sermouse.ko  synaptics_i2c.ko  synaptics_usb.ko  vsxxxaa.ko

所以我想我应该重新编译支持sentelic触摸板的psmouse模块。我浏览了一下互联网,找到了 linux 存储库。

我检查了标签v3.16

我进入drivers/input/mouse并看到以下文件

alps.c      appletouch.c  cyapa.c        elantech.c    hgpk.c    Kconfig     logibm.c     Makefile      pc110pad.c      pxa930_trkball.c  sentelic.h   synaptics.h      touchkit_ps2.c  trackpoint.h
alps.h      atarimouse.c  cypress_ps2.c  elantech.h    hgpk.h    lifebook.c  logips2pp.c  maplemouse.c  psmouse-base.c  rpcmouse.c        sermouse.c   synaptics_i2c.c  touchkit_ps2.h  vsxxxaa.c
amimouse.c  bcm5974.c     cypress_ps2.h  gpio_mouse.c  inport.c  lifebook.h  logips2pp.h  navpoint.c    psmouse.h       sentelic.c        synaptics.c  synaptics_usb.c  trackpoint.c

其中包括sentelic.hsentelic.c文件还有一个 Makefile,但是当我输入命令时make它说make: *** No targets. Stop.

我的问题是如何psmouse使用sentelic touchpad support.

更新 :

我从 Windows 驱动程序fspad.inf文件中获取以下信息

司机

; Localizable Strings
Provider            = "Sentelic"
DiskId1             = "Finger Sensing Pad Driver Installation Disk"
AVC.DeviceDesc      = "Finger Sensing Pad"
AVC.DriverDisplayName = "Finger Sensing Pad Driver"
AVC.DriverDisplayVersion = "9.2.9.7"
AVC.DriverReleaseDate = "05/09/2012"
AVC.DriverCfg       = " "
fspad.SvcDesc       = "Finger Sensing Pad Driver for Windows 2000/XP/Vista/Win7"
fspadsvr.SvcDesc    = "Finger Sensing Control Service"

更新2:

我尝试了以下 Live USB,结果是相同的:

我查了一下lsmod,和proc/bus/input/devices我上面提供的细节没有太大不同。没有触摸板的东西。

Point Linux Mate Full 2.3-32 i386 Kernel  3.2.0-4
Ubuntu 12.04.4-Desktop amd64 Kernel 3.11
Xubuntu 16.04-Desktop amd64  Kernel 4.4.0

这是绝对的内核错误吗?我如何确定这是一个错误还是有其他解决方案,因此根据该结果我将提交一个错误。

答案1

您不能通过简单地提取源代码并make在其子目录中运行来(重新)编译内核模块。每个发行版都有一个首选方法 - 根据您的情况,请参阅部分8.10。编译内核Debian 手册。

必须通过内核的构建配置系统启用特定驱动程序。您需要启用MOUSE_PS2_SENTELIC.但是,由于内核中已经启用了该功能,因此此处无需重建。

如果在 后modprobe psmouse没有任何有用的错误消息,并且您在 中仍然看不到任何内容/proc/bus/input/devices,则当前的 Linux 驱动程序可能无法识别/支持该设备。您也许可以找到有关的更多详细信息驱动程序开发站点,但自从驱动程序包含在内核中以来,并没有太多活动。

相关内容