OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3899|回复: 2

如何改写uboot的启动延迟,大神看过来

[复制链接]

2

主题

4

帖子

0

精华

新手入门

积分
20
金钱
20
注册时间
2016-4-13
在线时间
3 小时
发表于 2016-4-15 18:24:32 | 显示全部楼层 |阅读模式
1金钱
*
* (C) Copyright 2000
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* SPDX-License-Identifier:        GPL-2.0+
*/

/* #define        DEBUG        */

#include <common.h>
#include <autoboot.h>
#include <cli.h>
#include <version.h>

DECLARE_GLOBAL_DATA_PTR;

/*  
* Board-specific Platform code can reimplement show_boot_progress () if needed
*/
void inline __show_boot_progress (int val) {}
void show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progress")));

static void
(void)
{
#ifdef CONFIG_MODEM_SUPPORT
        debug("DEBUG: main_loop:   gd->do_mdm_init=%lu\n", gd->do_mdm_init);
        if (gd->do_mdm_init) {
                char *str = getenv("mdm_cmd");

                setenv deldy("preboot", str);  /* set or delete definition */
                mdm_init(); /* wait for modem connection */
        }
#endif  /* CONFIG_MODEM_SUPPORT */
}

static void run_preboot_environment_command(void)
{
#ifdef CONFIG_PREBOOT
        char *p;

        p =
("preboot");
        if (p != NULL) {
# ifdef CONFIG_AUTOBOOT_KEYED
                int prev = disable_ctrlc(1);        /* disable Control C checking */
# endif

                run_command_list(p, -1, 0);

# ifdef CONFIG_AUTOBOOT_KEYED
                disable_ctrlc(prev);        /* restore Control C checking */
# endif
        }
#endif /* CONFIG_PREBOOT */
}

/* We come here after U-Boot is initialised and ready to process commands */
void main_loop(void)
{
        const char *s;

        bootstage_mark_name(BOOTSTAGE_ID_MAIN_LOOP, "main_loop");

#ifndef CONFIG_SYS_GENERIC_BOARD
        puts("Warning: Your board does not use generic board. Please read\n");
        puts("doc/README.generic-board and take action. Boards not\n");
        puts("upgraded by the late 2014 may break or be removed.\n");
#endif

        modem_init();
#ifdef CONFIG_VERSION_VARIABLE
        setenv("ver", version_string);  /* set version variable */
#endif /* CONFIG_VERSION_VARIABLE */

        cli_init();

        run_preboot_environment_command();

#if defined(CONFIG_UPDATE_TFTP)
        update_tftp(0UL);
#endif /* CONFIG_UPDATE_TFTP */

        s = bootdelay_process();
        if (cli_process_fdt(&s))
                cli_secure_boot_cmd(s);

        autoboot_command(s);

        cli_loop();
}
mad5d3xek的开发板的800ms延迟


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2016-4-15 22:28:33 | 显示全部楼层
回复

使用道具 举报

5

主题

158

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2016-5-29
在线时间
5 小时
发表于 2016-6-1 16:37:12 | 显示全部楼层
路过学
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 09:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表