问题描述
由于默认/dev/input下的event事件的标号是系统启动之后按照顺序自动生成的,有时候我们需要固定一个事件的默认编号,这样方便应用层监控使用
修改方法
找到input事件驱动注册函数,查看.name对应字段,该字段会在修改event编号处使用
static struct platform_driver gpio_keys_device_driver = {
.probe = gpio_keys_probe,
.shutdown = gpio_keys_shutdown,
.driver = {
.name = "gpio-keys",
.pm = &gpio_keys_pm_ops,
.of_match_table = gpio_keys_of_match,
.dev_groups = gpio_keys_groups,
}
};
在内核中修改event事件的编号
通过代码分析知道,内核中通过dev_set_name(&evdev->dev, "event%d", dev_no);函数来指定event的事件编号,所以我们只需要修改dev_no即可
修改方法
在apps_proc/src/kernel/msm-5.4/drivers/input/evdev.c文件中找到evdev_conn