RK3568 AD按键改成GPIO按键

14 篇文章 1 订阅
13 篇文章 3 订阅

相对路径

kernel/arch/arm64/boot/dts/rockchip/ido-evb3568-v2b.dtsi

代码解析

linux,input-type = <1>;//input类型 <EV_KEY>按键 即1

gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;//io脚地址 高电平响应

debounce-interval = <15>;//抖动延迟时间

adb 调试

adb shell input keyevent 3 //返回home

KeyEvent类,键码的常量定义

定义了KeyEvent类,其中包含了键码的常量定义,包括KEYCODE_HOME

frameworks/base/core/java/android/view/KeyEvent.java

Home键的事件处理逻辑

frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java

参考链接

Android Keycode详解_笔记大全_设计学院

	gpio_key:gpio-key {
			compatible = "gpio-keys";
			input-name = "gpio-keys";//compatible = "rockchip,key";
			status = "okay";

		menu-key {
			label = "menu";
			linux,code = <KEY_MENU>;
			linux,input-type = <1>;//input类型 <EV_KEY>按键 即1
			gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;//高电平响应
			debounce-interval = <15>;//抖动延迟时间
		};

		vol-up-key {
			label = "volume up";
			linux,code = <KEY_VOLUMEUP>;
			linux,input-type = <1>;
			gpios = <&gpio1 RK_PB1 GPIO_ACTIVE_HIGH>;
			debounce-interval = <15>;
		};

		vol-down-key {
			label = "volume down";
			linux,code = <KEY_VOLUMEDOWN>;
			linux,input-type = <1>;
			gpios = <&gpio1 RK_PB0 GPIO_ACTIVE_HIGH>;
			debounce-interval = <15>;
		};

		back-key {
			label = "back";
			linux,code = <KEY_BACK>;
			interrupts = <13 IRQ_TYPE_LEVEL_HIGH>;
			linux,input-type = <1>;
			gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>;
			debounce-interval = <15>;
			
		};
	};

adb shell

130|rk3568_r:/ $ cat /sys/kernel/debug/gpio

130|rk3568_r:/ $ getevent
add device 1: /dev/input/event2
  name:     "jadard-touchscreen"
add device 2: /dev/input/event3
  name:     "gpio-key"
add device 3: /dev/input/event1
  name:     "rk805 pwrkey"
add device 4: /dev/input/event0
  name:     "fdd70030.pwm"
/dev/input/event3: 0001 0073 00000001
/dev/input/event3: 0000 0000 00000000
/dev/input/event3: 0001 0073 00000000
/dev/input/event3: 0000 0000 00000000
/dev/input/event3: 0001 0073 00000001
/dev/input/event3: 0000 0000 00000000

gpiochip1: GPIOs 32-63, parent: platform/fe740000.gpio, gpio1:
 gpio-36  (                    |back                ) in  lo
 gpio-40  (                    |volume down         ) in  lo
 gpio-41  (                    |volume up           ) in  lo
 gpio-42  (                    |menu                ) in  lo
 gpio-56  (                    |pwdn                ) out lo
 gpio-57  (                    |reset               ) out lo
 gpio-59  (                    |bt_default_wake     ) in  hi
 gpio-60  (                    |bt_default_reset    ) out lo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值