mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
d024236e5a
We have a large number of places where while we historically referenced gd in the code we no longer do, as well as cases where the code added that line "just in case" during development and never dropped it. Signed-off-by: Tom Rini <trini@konsulko.com>
68 lines
1.3 KiB
C
68 lines
1.3 KiB
C
/*
|
|
* (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 <console.h>
|
|
#include <version.h>
|
|
|
|
/*
|
|
* Board-specific Platform code can reimplement show_boot_progress () if needed
|
|
*/
|
|
__weak void show_boot_progress(int val) {}
|
|
|
|
static void run_preboot_environment_command(void)
|
|
{
|
|
#ifdef CONFIG_PREBOOT
|
|
char *p;
|
|
|
|
p = env_get("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");
|
|
|
|
#ifdef CONFIG_VERSION_VARIABLE
|
|
env_set("ver", version_string); /* set version variable */
|
|
#endif /* CONFIG_VERSION_VARIABLE */
|
|
|
|
cli_init();
|
|
|
|
run_preboot_environment_command();
|
|
|
|
#if defined(CONFIG_UPDATE_TFTP)
|
|
update_tftp(0UL, NULL, NULL);
|
|
#endif /* CONFIG_UPDATE_TFTP */
|
|
|
|
s = bootdelay_process();
|
|
if (cli_process_fdt(&s))
|
|
cli_secure_boot_cmd(s);
|
|
|
|
autoboot_command(s);
|
|
|
|
cli_loop();
|
|
panic("No CLI available");
|
|
}
|