/**
向核心层(input.c)注册一个input_handler
注册的这个input_handler能支持哪些设备呢?
如果你要开发一个input_handler的话(当然,事件处理层代码内核以帮我们做好了,无需我们开发),
决定支持某一个设备,就应该初始化一个input_device_id,
并把它放到input_hander的id_table中。这点和usb_device_id匹配有点类似。
*/
/*
如:
static struct input_handler kbd_handler =
{
.event = kbd_event,
.match = kbd_match,
.connect = kbd_connect,
.disconnect = kbd_disconnect,
.start = kbd_start,
.name = "kbd",
.id_table = kbd_ids,
};
*/
/*
static const struct input_device_id kbd_ids[] =
{
{
.flags = INPUT_DEVICE_ID_MATCH_EVBIT,
.evbit = { BIT_MASK(EV_KEY) }, /*如果设备能产生按键类事件就支持*/
},
{
.flags = INPUT_DEVICE_ID_MATCH_EVBIT,
.evbit = { BIT_MASK(EV_SND) }, /*如果设备能产生声音类事件就支持 */
},
{ },
};
*/
/*
static struct input_handler evdev_handler =
{
.event = evdev_event,
.connect = evdev_connect,
.disconnect = evdev_disconnect,
.fops = &evdev_fops,
.minor = EVDEV_MINOR_BASE,
.name = "evdev",
.id_table = evdev_ids,
};
static const struct input_device_id evdev_ids[] =
{
{ .driver_info = 1 }, /*匹配所有设备*/
{ },
};
*/
int input_register_handler(struct input_handler * handler)
{
}
input_register_handler()解析
最新推荐文章于 2025-06-08 22:55:14 发布