Currently this does not allow the -lb flags unless CMD_BOOTFLOW_FULL is enabled, which means that we need two separate boot commands. Relax this to make things easier. It is only a small amount of extra code.
Signed-off-by: Simon Glass <s...@chromium.org> --- (no changes since v1) boot/Kconfig | 3 +-- cmd/bootflow.c | 14 ++++++++++++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/boot/Kconfig b/boot/Kconfig index 7f7ec208a54..24116e6f7cd 100644 --- a/boot/Kconfig +++ b/boot/Kconfig @@ -1541,8 +1541,7 @@ config USE_BOOTCOMMAND config BOOTCOMMAND string "bootcmd value" depends on USE_BOOTCOMMAND && !USE_DEFAULT_ENV_FILE - default "bootflow scan -lb" if BOOTSTD_BOOTCOMMAND && CMD_BOOTFLOW_FULL - default "bootflow scan" if BOOTSTD_BOOTCOMMAND && !CMD_BOOTFLOW_FULL + default "bootflow scan -lb" if BOOTSTD_BOOTCOMMAND default "run distro_bootcmd" if !BOOTSTD_BOOTCOMMAND && DISTRO_DEFAULTS help This is the string of commands that will be used as bootcmd and if diff --git a/cmd/bootflow.c b/cmd/bootflow.c index 3548bbb6830..6455f403791 100644 --- a/cmd/bootflow.c +++ b/cmd/bootflow.c @@ -124,9 +124,19 @@ static int do_bootflow_scan(struct cmd_tbl *cmdtp, int flag, int argc, if (!label) dev = std->cur_bootdev; } else { + /* + * allow -b and -l (which is ignored) but complain about + * anything else + */ if (has_args) { - printf("Flags not supported: enable CONFIG_BOOTFLOW_FULL\n"); - return CMD_RET_USAGE; + char *p; + + for (p = argv[1] + 1; *p; p++) { + if (*p != 'b' && *p != 'l') { + printf("Flags not supported: enable CONFIG_BOOTFLOW_FULL\n"); + return CMD_RET_USAGE; + } + } } boot = true; } -- 2.40.0.rc0.216.gc4246ad0f0-goog