Input子系统是linux的主要驱动之一,这里我写了一个虚拟的input设备驱动的部分。 这里我以一个虚拟驱动,定时上报声音+键,代码如下:input driver这个驱动实际上是一个sensor input设备的一个缩影。 一个input设备有三部分组成。一、保存input设备驱动的指针,保存workqueue的结构体。二、input驱动的初始化。三、input驱动的上报函数。 我这个驱动有BUG,加载后不能卸载,否则会死机,由LOG看,似乎是我的workqueue的使用方法不当。 测试代码如下:input driver test C file.(链接处文件名字起得有点问题,当时我以为我在i2c虚拟驱动上又加了一层input设备驱动) 参考资料:Linux socket之四:使用POLL机制处理多连接Google Android Sensor HAL参考代码Linux Kernel: input.h endev.cThe Linux USB Input Subsystem Part I Using the Input Subsystem, Part II
http://blog.chinaunix.net/uid-26017891-id-3491094.html