summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--boot/Kconfig7
-rw-r--r--boot/Makefile5
-rw-r--r--test/boot/bootflow.c3
3 files changed, 11 insertions, 4 deletions
diff --git a/boot/Kconfig b/boot/Kconfig
index fe2919f18c4..b168b6bbcc2 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -469,6 +469,13 @@ config BOOTSTD_BOOTCOMMAND
standard boot does not support all of the features of distro boot
yet.
+config BOOTSTD_MENU
+ bool "Provide a menu of available bootflows for standard boot"
+ depends on BOOTSTD_FULL && EXPO
+ default y
+ help
+ Provide a menu of available bootflows and related options.
+
config BOOTSTD_PROG
bool "Use programmatic boot"
depends on !CMDLINE
diff --git a/boot/Makefile b/boot/Makefile
index b24f806d5bf..0e0afad68d1 100644
--- a/boot/Makefile
+++ b/boot/Makefile
@@ -24,6 +24,7 @@ obj-$(CONFIG_$(PHASE_)BOOTSTD) += bootflow.o
obj-$(CONFIG_$(PHASE_)BOOTSTD) += bootmeth-uclass.o
obj-$(CONFIG_$(PHASE_)BOOTSTD) += bootstd-uclass.o
+obj-$(CONFIG_$(PHASE_)BOOTSTD_MENU) += bootflow_menu.o
obj-$(CONFIG_$(PHASE_)BOOTSTD_PROG) += prog_boot.o
obj-$(CONFIG_$(PHASE_)BOOTMETH_EXTLINUX) += bootmeth_extlinux.o
@@ -35,10 +36,6 @@ obj-$(CONFIG_$(PHASE_)BOOTMETH_SANDBOX) += bootmeth_sandbox.o
obj-$(CONFIG_$(PHASE_)BOOTMETH_SCRIPT) += bootmeth_script.o
obj-$(CONFIG_$(PHASE_)CEDIT) += cedit.o
obj-$(CONFIG_$(PHASE_)BOOTMETH_EFI_BOOTMGR) += bootmeth_efi_mgr.o
-ifdef CONFIG_$(PHASE_)BOOTSTD_FULL
-obj-$(CONFIG_$(PHASE_)EXPO) += bootflow_menu.o
-obj-$(CONFIG_$(PHASE_)BOOTSTD) += bootflow_menu.o
-endif
obj-$(CONFIG_$(PHASE_)OF_LIBFDT) += fdt_support.o
obj-$(CONFIG_$(PHASE_)FDT_SIMPLEFB) += fdt_simplefb.o
diff --git a/test/boot/bootflow.c b/test/boot/bootflow.c
index 154dea70a59..0d4e966892e 100644
--- a/test/boot/bootflow.c
+++ b/test/boot/bootflow.c
@@ -857,6 +857,9 @@ static int bootflow_menu_theme(struct unit_test_state *uts)
ofnode node;
int i;
+ if (!CONFIG_IS_ENABLED(BOOTSTD_MENU))
+ return -EAGAIN;
+
ut_assertok(scan_mmc4_bootdev(uts));
ut_assertok(bootflow_menu_new(&exp));