于qt开发时间。遇到的问题,usb输入设备(鼠标器,usb 电容屏)在动力分配后自己主动input节点,实例usb鼠标停留电后,分配给自己的主动性/dev/input/event0 mouse0。第一插头后,加入自己主动节点在未来。变/dev/input/event1mouse1

对于鼠标类型的设备。/dev/input/mouseX 的全部消息都会汇总到/dev/input/mice,因此,qt的QWS_MOUSE_PROTO输入能够指定IntelliMouse=/dev/input/mice,鼠标插拔即使mouseX变化也都能使用。

可是,对于usb触控类型输入设备,使用的event接口,向应用层汇报的是绝对坐标信息。不是mouse的相对坐标信息,所以当eventX设备号变化后。应用层就无法识别了,由于没有像/dev/input/mice这种接口。而大部分应用触控都使用了tslib。TSLIB_TSDEVICE=/dev/input/event0,

直接给出须要改动的地方:

共同拥有3处:drivers/input/input.c  input_register_device函数

drivers/input/mousedev.c   mousedev_connect函数

drivers/input/evdev.c  evdev_connect函数

结果例如以下,我的三个设备都固定为event6  event7  event8  ,usb设备随意插拔,event handler也不会变化

/ # 

/ # cat /proc/bus/input/devices 

I: Bus=0018 Vendor=0000 Product=0000 Version=0000

N: Name="gt928 Touchscreen"

P: Phys=1-0014/input0

S: Sysfs=/devices/virtual/input/input6

U: Uniq=

H: Handlers=mouse6 event6 

B: EV=b

B: KEY=400 0 0 0 0 0 0 0 0 0 0

B: ABS=1000003





I: Bus=0000 Vendor=0000 Product=0000 Version=0000

N: Name="ADS7846 Touchscreen"

P: Phys=spi1.0/input0

S: Sysfs=/devices/platform/omap2_mcspi.1/spi1.0/input/input7

U: Uniq=

H: Handlers=mouse7 event7 

B: EV=b

B: KEY=400 0 0 0 0 0 0 0 0 0 0

B: ABS=1000003





I: Bus=0003 Vendor=0eef Product=0001 Version=0100

N: Name="eGalax Inc. USB TouchController"

P: Phys=usb-ehci-omap.0-1.1/input0

S: Sysfs=/devices/platform/ehci-omap.0/usb1/1-1/1-1.1/1-1.1:1.0/input/input8

U: Uniq=

H: Handlers=mouse8 event8 

B: EV=b

B: KEY=400 0 0 0 0 0 0 0 0 0 0

B: ABS=1000003





/ #

版权声明:本文博主原创文章,博客,未经同意不得转载。

linux input如何固定设备event handler的更多相关文章

  1. Linux input子系统 io控制字段【转】

    转自:http://www.cnblogs.com/leaven/archive/2011/02/12/1952793.html http://blog.csdn.net/guoshaobei/arc ...

  2. I.MX6 Linux 自动获取AR1020 event input节点

    /*********************************************************************** * I.MX6 Linux 自动获取AR1020 ev ...

  3. Linux kernel的中断子系统之(四):High level irq event handler

    返回目录:<ARM-Linux中断系统>. 总结:从架构相关的汇编处理跳转到Machine/控制器相关的handle_arch_irq,generic_handle_irq作为High l ...

  4. Linux中断 - High level irq event handler

    一.前言 当外设触发一次中断后,一个大概的处理过程是: 1.具体CPU architecture相关的模块会进行现场保护,然后调用machine driver对应的中断处理handler 2.mach ...

  5. Linux input子系统分析

    输入输出是用户和产品交互的手段,因此输入驱动开发在Linux驱动开发中很常见.同时,input子系统的分层架构思想在Linux驱动设计中极具代表性和先进性,因此对Linux input子系统进行深入分 ...

  6. Linux input系统数据上报流程【转】

    转自:https://segmentfault.com/a/1190000017255939 作为鸡生蛋系列文章,这里主要关注Linux input系统,主要为触摸事件上报流程. 读该文章最好有对li ...

  7. Linux Input子系统

    先贴代码: //input.c int input_register_handler(struct input_handler *handler) { //此处省略很多代码 list_for_each ...

  8. Linux input子系统简介

    1.前言 本文主要对Linux下的input子系统进行介绍 2. 软件架构 图 input子系统结构图 input子系统主要包括三个部分:设备驱动层.核心层和事件层.我们可以分别理解为:具体的输入设备 ...

  9. Linux input子系统学习总结(一)---- 三个重要的结构体

    一 . 总体架构 图 上层是图形界面和应用程序,通过监听设备节点,获取用户相应的输入事件,根据输入事件来做出相应的反应:eventX (X从0开始)表示 按键事件,mice 表示鼠标事件 Input ...

随机推荐

  1. jQuery中的getJSON()

    json文件是一种轻量级的数据交互格式.一般在jQuery中使用getJSON()方法读取. $.getJSON(url,[data],[callback]) url:json文件地址 data:可选 ...

  2. Linux 单用户模式的使用

    在进入系统启动菜单时,选择kernel,输入"e"后进入,在kernel开头的启动项后输入(空格) /single或者 / 1,然后输入"b"重新启动机器,此时 ...

  3. redis的分布式解决方式--codis (转)

    codis是豌豆荚开源的分布式server.眼下处于稳定阶段. 原文地址:https://github.com/wandoulabs/codis/blob/master/doc/tutorial_zh ...

  4. AOP 之 6.1 AOP基础 ——跟我学spring3(转)

    http://jinnianshilongnian.iteye.com/blog/1418596

  5. 谈Web应用系统的可维护性

           每一个软件开发人员都十分清楚, 当软件构建得越来越复杂时, 可维护性就成了一个很突出的问题. 如何在构造软件系统的过程中始终保持可控制的可维护性呢?          一. 整体组织   ...

  6. Objective-C NSObject 的实现分析(2014-10-23更新)

    NSObject 的实现分析 转载请注名出处 http://blog.csdn.net/uxyheaven iOS 的 NSObject 类没有开源, 可是呢 runtime开源了,里面有个类 Obj ...

  7. html5载入JS引用

    直接上代码 w文件 <?xml version="1.0" encoding="UTF-8"? > <div xmlns="http ...

  8. adt-bundle-windows-x86_32-20140702

    adt-bundle-windows-x86_32-20140702 Windows > Preference,在Android里没有NDK选项 法一:help->install new ...

  9. mysql字符串替换

    数据库是Mysql的.我想把lesson表中的slide_path_dx字段中的类似 http://www.site.com/y/k/aote-02.rar 替换成E:\web\manhua\y\k\ ...

  10. 扩展WebBrowser控件,使其支持拖放文件

    public partial class UserControl1 : WebBrowser { private const int WmDropfiles = 0x233; [DllImport(& ...