阅读:1189回复:0

RK3399-11.0 Recovery红外遥控无法操作

楼主#
更多 发布于:2023-06-30 15:21
RK3399-11.0 Recovery UI 红外遥控无法操作 ,通常手机是使用音量+ 音量- 和电源来操作的,但是box产品只能用红外遥控操作,这个问题折腾了好长时间,先是排查红外驱动,看看recovery起来时驱动有没有加载,后来又一直在Recovery代码里面加打印,搞了半天,毫无进展。偶然对比RK3399-8.1看了一下,红外遥控可以正常操作,recovery界面下getevent 红外Linux映射码都是正常收到的,再来看看RK3399-11.0 recovery模式下getebent 发现一直不停在打印一个gpio-key




rk3399_Android11
$ getevent
add device 1: /dev/input/event2
  name:     "gpio-keys"
add device 2: /dev/input/event1
  name:     "adc_keys"
add device 3: /dev/input/event3
  name:     "rk-headset"
add device 4: /dev/input/event0
  name:     "ff420030.pwm"
add device 5: /dev/input/event4
  name:     "PixArt Dell MS116 USB Optical Mouse"
/dev/input/event2: 0001 00f9 00000002
/dev/input/event2: 0000 0000 00000001
/dev/input/event2: 0001 00f9 00000002
/dev/input/event2: 0000 0000 00000001

/dev/input/event2: 0001 00f9 00000002
/dev/input/event2: 0000 0000 00000001
/dev/input/event2: 0001 00f9 00000002
/dev/input/event2: 0000 0000 00000001

f9转换为10进制是249
搜索kernel里面的按键定义
input-event-codes.h:340:#define KEY_WOL     249 /* wol key */
搜索dts里面配置KEY_WOL 的地方

wol {
             debounce-interval = <1000>;
            gpios = <&gpio1 RK_PC4 GPIO_ACTIVE_LOW>;
             label = "GPIO Key WOL";
             linux,code = <KEY_WOL>;
             wakeup-source;
         };

原来是这个wol key 配置的低有效,而这个IO口在recovery模式下一直是低,所以会一直触发,尝试把这个wol屏蔽掉,重新编译kernel烧录后,进入recovery模式,getevent查看,这个gpio-key不再一直触发了,此时按红外遥控就出现了外红遥控的event打印,Recovery UI也可以正常操作了
[url]http://190.lsal.cn/195/1329.gif?0728100424873[/url]
游客

返回顶部