
The main loop is easier to follow if the code is grouped into separate functions. Make this change, so that main_loop() is easier to read.
Signed-off-by: Simon Glass sjg@chromium.org ---
common/main.c | 47 ++++++++++++++++++++++++++--------------------- 1 file changed, 26 insertions(+), 21 deletions(-)
diff --git a/common/main.c b/common/main.c index 0cb3973..d95e5fc 100644 --- a/common/main.c +++ b/common/main.c @@ -22,14 +22,8 @@ DECLARE_GLOBAL_DATA_PTR; void inline __show_boot_progress (int val) {} void show_boot_progress (int val) __attribute__((weak, alias("__show_boot_progress")));
-void main_loop(void) +static void modem_init(void) { -#ifdef CONFIG_PREBOOT - char *p; -#endif - - bootstage_mark_name(BOOTSTAGE_ID_MAIN_LOOP, "main_loop"); - #ifdef CONFIG_MODEM_SUPPORT debug("DEBUG: main_loop: gd->do_mdm_init=%lu\n", gd->do_mdm_init); if (gd->do_mdm_init) { @@ -40,22 +34,13 @@ void main_loop(void) mdm_init(); /* wait for modem connection */ } #endif /* CONFIG_MODEM_SUPPORT */ +}
-#ifdef CONFIG_VERSION_VARIABLE - { - setenv("ver", version_string); /* set version variable */ - } -#endif /* CONFIG_VERSION_VARIABLE */ - -#ifdef CONFIG_SYS_HUSH_PARSER - u_boot_hush_start(); -#endif - -#if defined(CONFIG_HUSH_INIT_VAR) - hush_init_var(); -#endif - +static void run_preboot_environment_command(void) +{ #ifdef CONFIG_PREBOOT + char *p; + p = getenv("preboot"); if (p != NULL) { # ifdef CONFIG_AUTOBOOT_KEYED @@ -69,6 +54,26 @@ void main_loop(void) # endif } #endif /* CONFIG_PREBOOT */ +} + +void main_loop(void) +{ + bootstage_mark_name(BOOTSTAGE_ID_MAIN_LOOP, "main_loop"); + + modem_init(); +#ifdef CONFIG_VERSION_VARIABLE + setenv("ver", version_string); /* set version variable */ +#endif /* CONFIG_VERSION_VARIABLE */ + +#ifdef CONFIG_SYS_HUSH_PARSER + u_boot_hush_start(); +#endif + +#if defined(CONFIG_HUSH_INIT_VAR) + hush_init_var(); +#endif + + run_preboot_environment_command();
#if defined(CONFIG_UPDATE_TFTP) update_tftp(0UL);