LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 936|回复: 2

求教一个usb鼠标问题的原理!

[复制链接]
发表于 2004-10-23 05:10:18 | 显示全部楼层 |阅读模式
我的本本的touchpad的synaptics的。直接安装完MDK10以后usb鼠标和touchpad都能使用,但是touchpad不具有点击接触板相当于点击鼠标左键的功能。

于是便去下了一个synaptics的搭配XFree86使用的驱动,是最新的0.13.5版本。安装之前我的XF86config-4里面的鼠标input居然只有一个section,但是居然usb和接触板同时能用!而且鼠标类型是imps/2的。

安装完驱动,发现如果再XF86config里面把corepoint选成synpatics,那么接触板能够正常使用,而usb鼠标死活动不了了。我尝试把两个input device从/dev/psaux,/dev/usbmouse,/dev/input/mice(传说中能够支持多鼠标,但是不行),/dev/input/mouse0(1)全部试过,问题照旧。这个时候用DrakeX配置鼠标的话都进不了测试页就直接结束了。后来改成了protocol和device全部都是用event的话,两个鼠标都不能用了。

如果把corepoint改回原来的usb鼠标(mouse1)的话,和原来一样,synaptics的配置在XF86config里完全被忽略,我做了个实验,即使这个时候把驱动程序synaptics_drv.o给删了,X11照样工作,但是和原来一样,点击板没功能了。

我尝试过在启动的时候加载modprobe -a evdev。没用,其实察看XF86的log,两个输入设备均已正常加载,而且/proc/bus/input/devices里面也有Handler了。我甚至试过在lilo引导的时候加载psmouse.proto=imps,也没用。

我以前用tl10的时候用过一个自己找到的办法,通过重新编译内核实现过两个设备都正常工作,并且功能都全。这个方法比较烦,因为其实kernel的源码里是有synaptics的驱动源程序的,不过需要自己修改kconfig和makefile才能激活它。这个办法需要重新编译内核太麻烦,所以希望能够用加载驱动的办法来解决。

不知道有没有高手知道究竟问题在哪里?似乎XFre86里的驱动能够同时驱动两个设备,但是却不支持输入设备的multiplexing???(以前在tl10里面就是用mice,能够同时使用)

我知道可以通过换发行版或者干脆在编译一下内核能够解决,但是我很希望知道是什么原理究竟。

BTW,xf86config已经用过,证明不好用(没有出现synaptics的选项,以前在tl10下面的时候通过编译内核是可以的)。我想是因为我的驱动加载不是在内核启动的时候加载的,是在XF86里面Load "synaptics"来实现的。
 楼主| 发表于 2004-10-23 07:05:20 | 显示全部楼层
btw,这句话加了还是没用
InputDevice  "Mouse1" "SendCoreEvents"
 楼主| 发表于 2004-10-23 07:32:15 | 显示全部楼层
奋斗n个小时,终于在suse的地方找到了线索,似乎和键盘的layout有关,本来选的是国际键盘,改成美国键盘以后就okay了。
Start your system with kernel parameter psmouse.proto=imps. To do this, enter the aforementioned kernel parameter on the initial screen. Please note that in some cases, an international keyboard layout may have been loaded on the initial screen. You can use F4 to select a different keyboard layout.
这句话是从suse上看来的,有所启发,但不知道什么原因。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表