Convert CONFIG_BOOT_RETRY_TIME et al to Kconfig

This converts the following to Kconfig:
   CONFIG_BOOT_RETRY_TIME
   CONFIG_BOOT_RETRY_MIN
   CONFIG_RESET_TO_RETRY

We also introduce CONFIG_BOOT_RETRY to gate these options, and clean up
the associated Makefile entry and C code for picking default values of
CONFIG_BOOT_RETRY_MIN.

Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Tom Rini
2022-03-11 09:12:04 -05:00
parent 0b5870c3f5
commit 69c8a817cf
30 changed files with 90 additions and 52 deletions

View File

@@ -991,6 +991,36 @@ config AUTOBOOT_MENU_SHOW
environmnent variable (if enabled) and before handling the boot delay.
See README.bootmenu for more details.
config BOOT_RETRY
bool "Boot retry feature"
help
Allow for having the U-Boot command prompt time out and attempt
to boot again. If the environment variable "bootretry" is found then
its value is used, otherwise the retry timeout is
CONFIG_BOOT_RETRY_TIME. CONFIG_BOOT_RETRY_MIN is optional and
defaults to CONFIG_BOOT_RETRY_TIME. All times are in seconds.
config BOOT_RETRY_TIME
int "Timeout in seconds before attempting to boot again"
depends on BOOT_RETRY
help
Time in seconds before the U-Boot prompt will timeout and boot will
be attempted again.
config BOOT_RETRY_MIN
int "Minimum timeout in seconds for 'bootretry'"
depends on BOOT_RETRY
default BOOT_RETRY_TIME
help
The minimum time in seconds that "bootretry" can be set to.
config RESET_TO_RETRY
bool "Reset the board to retry autoboot"
depends on BOOT_RETRY
help
After the countdown timed out, the board will be reset to restart
again.
endmenu
config USE_BOOTARGS

View File

@@ -5,11 +5,7 @@
ifndef CONFIG_SPL_BUILD
# This option is not just y/n - it can have a numeric value
ifdef CONFIG_BOOT_RETRY_TIME
obj-y += bootretry.o
endif
obj-$(CONFIG_BOOT_RETRY) += bootretry.o
obj-$(CONFIG_CMD_BOOTM) += bootm.o bootm_os.o
obj-$(CONFIG_CMD_BOOTZ) += bootm.o bootm_os.o
obj-$(CONFIG_CMD_BOOTI) += bootm.o bootm_os.o

View File

@@ -12,10 +12,6 @@
#include <time.h>
#include <watchdog.h>
#ifndef CONFIG_BOOT_RETRY_MIN
#define CONFIG_BOOT_RETRY_MIN CONFIG_BOOT_RETRY_TIME
#endif
static uint64_t endtime; /* must be set, default is instant timeout */
static int retry_time = -1; /* -1 so can call readline before main_loop */