除了默认的AVRCP.kl和qwerty.kl之外,MSM的mahimahi平台增加了h2w_headset.kl和mahimahi-keypad.kl。
8.5 OMAP中的实现
è 8.5.1 触摸屏和键盘的驱动程序
Omap的Zoom平台的输入设备包含了触摸屏和键盘(Qwerty全键盘)。
Omap的Zoom平台的触摸屏驱动程序在drivers/input/touchscreen目录中的synaptics_ i2c_rmi.c,这是一个i2c的触摸屏的驱动程序。
Omap的Zoom平台的键盘驱动程序在drivers/input/keyboard/目录的twl4030_keypad.c文件中实现。twl4030 使用的是i2c的接口。因此这个驱动程序本身是经过一次封装。
twl4030_keypad.c中核心的内容是中断处理的相关内容,do_kp_irq就是标准Linux的中断的处理函数,其内容如下所示:
twl4030_keypad.c文件中调用的twl4030_i2c_read和twl4030_i2c_write 是在drivers/ mfd/twl4030-core.c中实现的,实际上就是对i2c总线的操作的封装。
è 8.5.2 用户空间的配置文件
Omap的Zoom平台的键盘基本上是全键盘,但是其数字键和字母键是共用的。因此使用全键盘的配置文件基本上可以。