韦东山Linux嵌入式课程社区
直播中

张百玲

7年用户 231经验值
私信 关注

为什么开发板自动启动内核不能进uboot,hit any key to stop autoboot?

最近发现开发板启动不了uboot了,开机后等待3秒,自动启动内核,不管按哪个按键都不管用,使用的串口软件为secure crt ,如下图:

回帖(2)

马龙

2019-9-6 07:51:36
在main.c文件中有一个函数  int abortboot(int bootdelay),其决定了按哪个按键可以中断uboot自动启动内核

int abortboot(int bootdelay)
{
        printf("Hit any key to stop autoboot: %2d ", bootdelay);
       
        while ((bootdelay > 0) && (!abort))
        {
                int i;

                --bootdelay;
                /* delay 100 * 10ms */
                for (i=0; !abort && i<100; ++i)
                {
                        if (tstc())        
                        {       
                                        if(getc() == ' ')
                                        {
                                                abort  = 1; /* don't auto boot        */
                                                bootdelay = 0;        /* no more delay        */
                                                break;
                                        }
                        }
                        udelay (10000);
                }

                printf ("bbb%2d ", bootdelay);
        }
        putc ('n');
        return abort;
}




由代码可知,按空格键有效,其他键无效。
举报

王秀芳

2019-9-6 08:05:03
这个问题没解决啊,我按 空格键 也没用啊
举报

更多回帖

发帖
×
20
完善资料,
赚取积分