label = "gpio1 key"; gpio-key,wakeup; }; }; 二.frameworks\native\include\android\keycodes.h 1 2 3 4 5 6 /** F1 key. */ AKEYCODE_F1 = 131, /** F2 key. */ AKEYCODE_F2 = 132, /** F3 key. */ AKEYCODE_F3 = 133, 三.rk29-keypad.kl 加按键值 系统 优先加载 system\...
-->error = gpio_keys_setup_key(pdev, input, bdata, button); //设置GPIO按键属性,在这个接口...
intgpio_direction_input(unsigned gpio);//设置gpio为输入intgpio_direction_output(unsigned gpio,intvalue);//设置gpio为输出,且设置电平 2.2.6、操作gpio口(拉高或者拉低gpio的电平,value为1是拉高,0是拉低) voidgpio_set_value(unsignedintgpio,intvalue); 2.2.7、获取gpio口的状态:get到1为高电平,得到0...
RK3399 gpio 做系统按键 rk_key:rockchip-key{compatible="rockchip,key";status="okay";//io-channels = <&saradc 0>;vol-up-key{linux,code=<115>;label="volume up";rockchip,adc_value=<1>;};vol-down-key{linux,code=<114>;label="volume down";rockchip,adc_value=<170>;};power-key{gp...
其中power key作为普通gpio,具有唤醒功能。而其他按键比如,volume up/down 可以通过adc精确读取到gpio的电压值,原理图如下: 和一般的按键一样,驱动是通过内核input子系统来将keys注册供用户空间使用 static int keys_probe(struct platform_device *pdev)
;io-channels = <&adc 1>;/* vol-up-key { linux,code = <115>;label = "volume up";...
event0:名称为gpio-keys/remotectl,它对应的是红外接收器,input0,部分板卡会不具备该功能。 event1:名称为rk805 pwrkey”,它对应的电源键on/off,input1,部分板卡会不具备该功能。 event2:名称为adc-keys,它对应的是Recovery键,input2,部分板卡会不具备该功能。
gpio-key,wakeup; }; menu-key { linux,code= <59>; label="menu"; rockchip,adc_value= <1>; }; home-key { linux,code= <102>; label="home"; rockchip,adc_value= <318>; }; back-key { linux,code= <158>; label="back"; ...
测试说明:采用driver/media/rc/下面的 gpio-ir-recv.c 并加入下面驱动添加键值drivers/media/rc/keymaps/rc-nec.c#include <media/rc-map.h>#include <linux/module.h>#include static struct rc_map_table hceng_nec[] = {{ 0x45, KEY_CHANNELDOWN},{ 0x46, KEY_CHANNEL}...
input){pr_err("failed to allocate input device\n");...}input->name=pdev->name;input->phys="gpio-keys/remotectl";input->dev.parent=&pdev->dev;input->id.bustype=BUS_HOST;input->id.vendor=0x0001;input->id.product=0x0001;input->id.version=0x0100;ddata->input=input;ddata->input...