1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-01 08:42:12 +02:00

main: Make the execution path a little clearer in main.c

bootdelay_process() never returns in some circumstances, whichs makes the
control flow confusing. Change it so that the decision about how to execute
the boot command is made in the main_loop() code, so it is easier to follow.
Move CLI stuff to cli.c.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2014-04-10 20:01:35 -06:00
committed by Tom Rini
parent c1bb2cd0b6
commit affb215626
5 changed files with 145 additions and 75 deletions

View File

@@ -55,8 +55,11 @@ static void run_preboot_environment_command(void)
#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
@@ -78,10 +81,11 @@ void main_loop(void)
update_tftp(0UL);
#endif /* CONFIG_UPDATE_TFTP */
bootdelay_process();
/*
* Main Loop for Monitor Command Processing
*/
s = bootdelay_process();
if (cli_process_fdt(&s))
cli_secure_boot_cmd(s);
autoboot_command(s);
cli_loop();
}