imx6 手动进入recovery

本文档记录了如何在平板项目中通过音量减+关机键手动进入imx6设备的recovery模式。在配置过程中遇到无显示的问题,通过调整show_text变量解决了这一问题,使用户可通过app选择进入图形或文字模式的recovery。
摘要由CSDN通过智能技术生成

写在前面

平板项目,需要音量减+关机键进入recovery模式。中间遇到了一些问题,记录一下。

配置音量键

uboot启动以后会检测音量上下键是否被按,然后进入不同的分支
board/freescale/common/recovery.c

/* export to lib_arm/board.c */
void check_recovery_mode(void)
{
    if (check_key_pressing()) {
        puts("Fastboot: Recovery key pressing got!\n");
        setup_recovery_env();
    } else if (check_recovery_cmd_file()) {
        puts("Fastboot: Recovery command file found!\n");
        setup_recovery_env();
    } else {
        puts("Fastboot: Normal\n");
    }
}
#define GPIO_VOL_DN_KEY IMX_GPIO_NR(2, 1)
iomux_v3_cfg_t const recovery_key_pads[] = {
    (MX6_PAD_NANDF_D1__GPIO2_IO01 | MUX_PAD_CTRL(NO_PAD_CTRL)),
};

int check_recovery_cmd_file(void)
{
    int button_pressed = 0;
    int recovery_mode = 0;

    recovery_mode = recovery_check_and_clean_flag();

    /* Check Recovery Combo Button press or not. */
    imx_iomux_v3_setup_multiple_pads(recovery_key_pads,
            ARRAY_SIZE(recovery_key_pads));

    gpio_direction_input(GPIO_VOL_DN_KEY);      //由此可见,uboot阶段,会读取一个gpio口,把这个gpio设置为自己主板对应的就能进入recovery了

    if (gpio_get_value(GPIO_VOL_DN_KEY) == 0) { /* VOL_DN key is low assert */
        button_pressed = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值