rk3128 debian9 如何配置recover键(长按开机进入loader模式)

在这里插入图片描述

1. 作为嵌入式新手,我以为长按recover键进入loader模式是默认配置,我们可以直接使用的,现在在rk3128上遇到
长按recover键不能进入loader模式的情况,一开始怀疑硬件的问题,后来烧写android7的镜像进行排查,发现硬件
是没有问题的。我在uboot里不断的追踪打印,这位博主写关于Recovery键的文章很详细给了我很大的帮助,十分的感谢他的分享。
(https://blog.csdn.net/u014770862/article/details/89006732?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.no_search_link)


2. 主要信息提示: 若dts中没有配置KEY_VOLUMEUP按键,程序返回KEY_NOT_EXIST;若dts中有配置KEY_VOLUMEUP按键,
在adc_key初始化时已经将按键信息假如到链表key_list中,这里found就会置1,程序继续执行。

\sdk-1.0\u-boot\arch\arm\mach-rockchip\boot_rkimg.c

__weak int rockchip_dnl_key_pressed(void)
{
#if defined(CONFIG_DM_KEY)
#ifdef CONFIG_CMD_ROCKUSB
	printk("key_read=%d\n", key_read(KEY_VOLUMEUP));
	return key_is_pressed(key_read(KEY_VOLUMEUP));

我这里读取的键值是 3 (KEY_NOT_EXIST)

参照:\sdk-1.0\u-boot\include\key.h

enum key_event {
	KEY_PRESS_NONE,	/* press without release */
	KEY_PRESS_DOWN,	/* press -> release */
	KEY_PRESS_LONG_DOWN,
	KEY_NOT_EXIST,
};

3.知道了dts没有配置,但是我不知道应该怎么去配置它,询问供应商也两天了也没有得到回复,参照上面提到的博主文章里配置和修改,
读取的键值返回值为1,但是依然进入不了loader模式,在这里琢磨了很久,突然今天脑回路比较清醒了,源码默认支持loader模式的,
说明sdk没有问题,注意的是我应该怎么去正确的配置它,既然我不知道,那我就去搜关于rk3128的dts相关的配置,这个问题我卡的很久的,
之前并不是没有搜过,可能刚开始没有深入研究理解,就算搜到了我也不知道这个配置对应的是哪些模块吧。
4. 原网址:http://www.atmcu.com/1459.html 

很感谢这位作者提供的这边文章,让我的问题立马得到解决。

在这里插入图片描述

dts 配置:

	rk_key: rockchip-key {
		compatible = "rockchip,key";
		status = "okay";

		io-channels = <&saradc 1>;

		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>;
		};
};
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YY2065

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值