Linux内核下的 drivers/input/keyboard/gpio_keys.c实现了一个体系结构无关的GPIO按键驱动,使用此按键驱动,只需在设备树gpio-key节点添加需要的按键子节点即可。驱动的实现非常简单,但是较适合于实现独立式按键驱动。 1.2 架构介绍 gpio-keys是基于input架构实现的一个通用GPIO按键驱动。该驱动基于platform_driver架构,实...
Linux内核下的 drivers/input/keyboard/gpio_keys.c实现了一个体系结构无关的GPIO按键驱动,使用此按键驱动,只需在设备树gpio-key节点添加需要的按键子节点即可。驱动的实现非常简单,但是较适合于实现独立式按键驱动。 1.2 架构介绍 gpio-keys是基于input架构实现的一个通用GPIO按键驱动。该驱动基于platform_driver架构,实...
.owner = THIS_MODULE,.pm = &gpio_keys_pm_ops,.of_match_table = of_match_ptr(gpio_keys_of_match),//定义驱动的兼容属性,具体定义如下:}};static struct of_device_id gpio_keys
gpio-keys驱动是以platform_driver的身份注册到系统中的,所以其需要定义platfrom_driver结构,如下: static struct platform_driver gpio_keys_device_driver = { .probe = gpio_keys_probe,//gpio-keys驱动初始化函数 .remove = gpio_keys_remove,//gpio-keys驱动卸载处理函数 .driver = { .name = "gpio-keys"...
struct gpio_keys_drvdata { const struct gpio_keys_platform_data *pdata; struct input_dev *input; struct mutex disable_lock; struct gpio_button_data data[0]; }; /* * SYSFS interface for enabling/disabling keys and switches: ...
Linux 内核下的 drivers/input/keyboard/gpio_keys.c实现了一个体系结构无关的GPIO按键驱动,使用此按键驱动,只需在相应的设备树定义相关的数据即可。驱动的实现非常简单,但是较适合于实现独立式按键驱动。 gpio-keys是基于input架构实现的一个通用GPIO按键驱动。该驱动基于platform_driver架构,实现了驱动和设备分离,符合...
vi OKT507-linux-sdk/kernel/linux-4.9/drivers/input/keyboard/gpio_keys.c 2、测试方法 终端窗口输入 evtest,选择 7 本文所提供的所有服务内容旨在协助用户加速产品的研发进度,在服务过程中所提供的任何程序、文档、测试结果、方案、支持等资料和信息,都仅供参考,用户有权不使用或自行参考修改,不提供任何的完整性...
gpio_keys_buttonlinux2.6.29 修改的gpio_keys.c 1.static int __devinit gpio_keys_probe(struct platform_device *pdev) 2.{ 3.struct gpio_keys_platform_data *pdata = pdev->dev.platform_data; 4.struct input_dev *input; 5.int i, error;...
gpio_keys 驱动使用 of_get_gpio_flags() 获取 dts 里面 gpio 配置信息。 但是of_get_gpio_flags() 传入 enum of_gpio_flags 类型来获取配置信息。 of_get_gpio_flags() 的最终实现由具体的 SOC 厂商实现,这里是全志厂商实现。 实现的函数为:drivers/pinctrl/sunxi/pinctrl-sunxi.c --> sunxi_pinctrl_gpio...
一般按键驱动,都是基于gpio-keys进行开发的。驱动文件如下: vi OKT507-linux-sdk/kernel/linux-4.9/drivers/input/keyboard/gpio_keys.c 二、测试方法 终端窗口输入evtest,选择 7。 从上图红框可以看出,通过evtest测试工具将内核设备读取并打印设备描述的事件,到这里,GPIO按键就做完了,可以用它来实现很多的功能,...