mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-24 14:25:56 +00:00
cli_hush: support running bootcmd on boot retry
Introduce a new config option: RETRY_BOOTCMD. When enabled this causes hush shell to re-run "bootcmd" when the auto-boot counter times out. Tested-by: Danila Tikhonov <danila@jiaxyga.com> # google-sunfish Tested-by: Jens Reidel <adrian@mainlining.org> # xiaomi-davinci Link: https://lore.kernel.org/r/20250331-qcom-phones-v4-2-f52e57d3b8c6@linaro.org Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
This commit is contained in:
parent
fd775fb7af
commit
657e19f8f2
3 changed files with 15 additions and 4 deletions
|
@ -1704,6 +1704,13 @@ config RESET_TO_RETRY
|
||||||
After the countdown timed out, the board will be reset to restart
|
After the countdown timed out, the board will be reset to restart
|
||||||
again.
|
again.
|
||||||
|
|
||||||
|
config RETRY_BOOTCMD
|
||||||
|
bool "Run bootcmd on retry"
|
||||||
|
depends on BOOT_RETRY && HUSH_PARSER && !RESET_TO_RETRY
|
||||||
|
help
|
||||||
|
If this option is enabled, the "bootcmd" will be run after the
|
||||||
|
countdown times out.
|
||||||
|
|
||||||
endmenu
|
endmenu
|
||||||
|
|
||||||
menu "Image support"
|
menu "Image support"
|
||||||
|
|
|
@ -1028,8 +1028,10 @@ static void get_user_input(struct in_str *i)
|
||||||
puts("\nTimeout waiting for command\n");
|
puts("\nTimeout waiting for command\n");
|
||||||
# ifdef CONFIG_RESET_TO_RETRY
|
# ifdef CONFIG_RESET_TO_RETRY
|
||||||
do_reset(NULL, 0, 0, NULL);
|
do_reset(NULL, 0, 0, NULL);
|
||||||
|
# elif IS_ENABLED(CONFIG_RETRY_BOOTCMD)
|
||||||
|
strcpy(console_buffer, "run bootcmd\n");
|
||||||
# else
|
# else
|
||||||
# error "This currently only works with CONFIG_RESET_TO_RETRY enabled"
|
# error "This only works with CONFIG_RESET_TO_RETRY or CONFIG_BOOT_RETRY_COMMAND enabled"
|
||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -2907,8 +2907,10 @@ static void get_user_input(struct in_str *i)
|
||||||
puts("\nTimeout waiting for command\n");
|
puts("\nTimeout waiting for command\n");
|
||||||
# ifdef CONFIG_RESET_TO_RETRY
|
# ifdef CONFIG_RESET_TO_RETRY
|
||||||
do_reset(NULL, 0, 0, NULL);
|
do_reset(NULL, 0, 0, NULL);
|
||||||
|
# elif IS_ENABLED(CONFIG_RETRY_BOOTCMD)
|
||||||
|
strcpy(console_buffer, "run bootcmd\n");
|
||||||
# else
|
# else
|
||||||
# error "This currently only works with CONFIG_RESET_TO_RETRY enabled"
|
# error "This only works with CONFIG_RESET_TO_RETRY or CONFIG_BOOT_RETRY_COMMAND enabled"
|
||||||
# endif
|
# endif
|
||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
Loading…
Add table
Reference in a new issue