aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini2023-09-19 17:44:18 -0400
committerTom Rini2023-09-19 17:44:18 -0400
commitc58ee1c9946a1550b1f6fee2b25da9ecc89baf71 (patch)
tree03d857452ecaf427ee43122ee1d227b195ba4352
parent08600ff62ec862411c4e2373f7e4ea6556307621 (diff)
parentc0e5b0ebab6ae8f04cf42bd4ac10c19af58af3a2 (diff)
Merge branch '2023-09-19-tidy-up-some-kconfig-options' into next
- Re-organize and tidy up some of our Kconfig options
-rw-r--r--Kconfig67
-rw-r--r--boot/Kconfig222
-rw-r--r--boot/Makefile4
-rw-r--r--boot/fdt_simplefb.c (renamed from common/fdt_simplefb.c)0
-rw-r--r--boot/fdt_support.c (renamed from common/fdt_support.c)0
-rw-r--r--common/Kconfig20
-rw-r--r--common/Makefile4
-rw-r--r--common/spl/spl_ram.c19
-rw-r--r--doc/develop/bootstd.rst23
-rw-r--r--drivers/video/Kconfig16
-rw-r--r--drivers/video/Makefile1
-rw-r--r--drivers/video/bmp.c (renamed from common/bmp.c)0
-rw-r--r--lib/Kconfig17
-rw-r--r--lib/fwu_updates/Kconfig9
-rw-r--r--test/Kconfig12
15 files changed, 225 insertions, 189 deletions
diff --git a/Kconfig b/Kconfig
index 91170bf8d22..2d4b8214986 100644
--- a/Kconfig
+++ b/Kconfig
@@ -585,10 +585,75 @@ config MP
This provides an option to bringup different processors
in multiprocessor cases.
-endmenu # General setup
+config HAVE_TEXT_BASE
+ bool
+ depends on !NIOS2 && !XTENSA
+ depends on !EFI_APP
+ default y
+
+config TEXT_BASE
+ depends on HAVE_TEXT_BASE
+ default 0x0 if POSITION_INDEPENDENT
+ default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
+ default 0x81700000 if MACH_SUNIV
+ default 0x2a000000 if MACH_SUN9I
+ default 0x4a000000 if SUNXI_MINIMUM_DRAM_MB >= 256
+ default 0x42e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
+ hex "Text Base"
+ help
+ The address in memory that U-Boot will be running from, initially.
+
+config HAVE_SYS_MONITOR_BASE
+ bool
+ depends on ARC || MIPS || M68K || NIOS2 || PPC || XTENSA || X86 \
+ || ENV_IS_IN_FLASH || MTD_NOR_FLASH
+ depends on !EFI_APP
+ default y
+
+config SYS_MONITOR_BASE
+ depends on HAVE_SYS_MONITOR_BASE
+ hex "Physical start address of boot monitor code"
+ default TEXT_BASE
+ help
+ The physical start address of boot monitor code (which is the same as
+ CONFIG_TEXT_BASE when linking) and the same as CFG_SYS_FLASH_BASE
+ when booting from flash.
+
+config SPL_SYS_MONITOR_BASE
+ depends on MPC85xx && SPL && HAVE_SYS_MONITOR_BASE
+ hex "Physical start address of SPL monitor code"
+ default SPL_TEXT_BASE
+
+config TPL_SYS_MONITOR_BASE
+ depends on MPC85xx && TPL && HAVE_SYS_MONITOR_BASE
+ hex "Physical start address of TPL monitor code"
+
+config DYNAMIC_SYS_CLK_FREQ
+ bool "Determine CPU clock frequency at run-time"
+ help
+ Implement a get_board_sys_clk function that will determine the CPU
+ clock frequency at run time, rather than define it statically.
+
+config SYS_CLK_FREQ
+ depends on !DYNAMIC_SYS_CLK_FREQ
+ int "CPU clock frequency"
+ default 125000000 if ARCH_LS1012A
+ default 100000000 if ARCH_P2020 || ARCH_T1024 || ARCH_T1042 || \
+ ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
+ default 66666666 if ARCH_P1010 || ARCH_P1020 || ARCH_T4240
+ default 66660000 if ARCH_T2080
+ default 33333333 if RCAR_GEN3
+ default 24000000 if ARCH_EXYNOS
+ default 20000000 if RCAR_GEN2
+ default 0
+ help
+ A static value for the CPU frequency. Note that if not required
+ for a given SoC, this can be left at 0.
source "api/Kconfig"
+endmenu # General setup
+
source "boot/Kconfig"
source "common/Kconfig"
diff --git a/boot/Kconfig b/boot/Kconfig
index 0a98f1e2220..a01e6cb8aaf 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -3,14 +3,25 @@ menu "Boot options"
menu "Boot images"
config ANDROID_BOOT_IMAGE
- bool "Enable support for Android Boot Images"
+ bool "Android Boot Images"
default y if FASTBOOT
help
This enables support for booting images which use the Android
image format header.
-config FIT
- bool "Support Flattened Image Tree"
+config TIMESTAMP
+ bool "Show image date and time when displaying image information"
+ default y if CMD_DATE
+ help
+ When CONFIG_TIMESTAMP is selected, the timestamp (date and time) of
+ an image is printed by image commands like bootm or iminfo. This
+ is shown as 'Timestamp: xxx' and 'Created: xxx'. If this option is
+ enabled, then U-Boot requires FITs to have a timestamp. If a FIT is
+ loaded that does not, the message 'Wrong FIT format: no timestamp'
+ is shown.
+
+menuconfig FIT
+ bool "Flattened Image Tree (FIT)"
select HASH
select MD5
select SHA1
@@ -25,20 +36,10 @@ config FIT
multiple configurations, verification through hashing and also
verified boot (secure boot using RSA).
-config TIMESTAMP
- bool "Show image date and time when displaying image information"
- default y if CMD_DATE
- help
- When CONFIG_TIMESTAMP is selected, the timestamp (date and time) of
- an image is printed by image commands like bootm or iminfo. This
- is shown as 'Timestamp: xxx' and 'Created: xxx'. If this option is
- enabled, then U-Boot requires FITs to have a timestamp. If a FIT is
- loaded that does not, the message 'Wrong FIT format: no timestamp'
- is shown.
+if FIT
config FIT_EXTERNAL_OFFSET
hex "FIT external data offset"
- depends on FIT
default 0x0
help
This specifies a data offset in fit image.
@@ -49,7 +50,6 @@ config FIT_EXTERNAL_OFFSET
config FIT_FULL_CHECK
bool "Do a full check of the FIT before using it"
- depends on FIT
default y
help
Enable this do a full check of the FIT to make sure it is valid. This
@@ -59,7 +59,7 @@ config FIT_FULL_CHECK
config FIT_SIGNATURE
bool "Enable signature verification of FIT uImages"
- depends on DM && FIT
+ depends on DM
select HASH
imply RSA
imply RSA_VERIFY
@@ -97,7 +97,7 @@ config FIT_RSASSA_PSS
config FIT_CIPHER
bool "Enable ciphering data in a FIT uImages"
- depends on DM && FIT
+ depends on DM
select AES
help
Enable the feature of data ciphering/unciphering in the tool mkimage
@@ -105,7 +105,6 @@ config FIT_CIPHER
config FIT_VERBOSE
bool "Show verbose messages when FIT images fail"
- depends on FIT
help
Generally a system will have valid FIT images so debug messages
are a waste of code space. If you are debugging your images then
@@ -114,7 +113,6 @@ config FIT_VERBOSE
config FIT_BEST_MATCH
bool "Select the best match for the kernel device tree"
- depends on FIT
help
When no configuration is explicitly selected, default to the
one whose fdt's compatibility field best matches that of
@@ -124,7 +122,6 @@ config FIT_BEST_MATCH
config FIT_IMAGE_POST_PROCESS
bool "Enable post-processing of FIT artifacts after loading by U-Boot"
- depends on FIT
depends on SOCFPGA_SECURE_VAB_AUTH
help
Allows doing any sort of manipulation to blobs after they got extracted
@@ -139,14 +136,13 @@ config FIT_IMAGE_POST_PROCESS
config FIT_PRINT
bool "Support FIT printing"
- depends on FIT
default y
help
Support printing the content of the fitImage in a verbose manner.
config SPL_FIT
bool "Support Flattened Image Tree within SPL"
- depends on SPL && FIT
+ depends on SPL
select SPL_HASH
select SPL_OF_LIBFDT
@@ -197,7 +193,7 @@ config SPL_FIT_RSASSA_PSS
config SPL_LOAD_FIT
bool "Enable SPL loading U-Boot as a FIT (basic fitImage features)"
- depends on SPL && FIT
+ depends on SPL
select SPL_FIT
help
Normally with the SPL framework a legacy image is generated as part
@@ -219,7 +215,7 @@ config SPL_LOAD_FIT
config SPL_LOAD_FIT_ADDRESS
hex "load address of fit image"
- depends on SPL_LOAD_FIT || SPL_RAM_SUPPORT || TPL_RAM_SUPPORT
+ depends on SPL_LOAD_FIT
default 0x0
help
Specify the load address of the fit image that will be loaded
@@ -245,7 +241,6 @@ config SPL_LOAD_FIT_APPLY_OVERLAY_BUF_SZ
config SPL_LOAD_FIT_FULL
bool "Enable SPL loading U-Boot as a FIT (full fitImage features)"
- depends on FIT
select SPL_FIT
help
Normally with the SPL framework a legacy image is generated as part
@@ -343,6 +338,8 @@ config VPL_FIT_SIGNATURE_MAX_SIZE
endif # VPL
+endif # FIT
+
config PXE_UTILS
bool
select MENU
@@ -375,8 +372,8 @@ config BOOT_DEFAULTS
of U-Boot to boot various images. Currently much functionality is
tied to enabling the command that exercises it.
-config BOOTSTD
- bool "Standard boot support"
+menuconfig BOOTSTD
+ bool "Standard boot"
default y
depends on DM && OF_CONTROL && BLK
help
@@ -396,6 +393,8 @@ config BOOTSTD
U-Boot)
- bootflow - a description of how to boot (owned by the distro)
+if BOOTSTD
+
config SPL_BOOTSTD
bool "Standard boot support in SPL"
depends on SPL && SPL_DM && SPL_OF_CONTROL && SPL_BLK
@@ -416,8 +415,6 @@ config VPL_BOOTSTD
boot. It is enabled by default since the main purpose of VPL is to
handle the firmware part of VBE.
-if BOOTSTD
-
config BOOTSTD_FULL
bool "Enhanced features for standard boot"
default y if SANDBOX
@@ -676,7 +673,7 @@ config BOOTMETH_SCRIPT
This provides a way to try out standard boot on an existing boot flow.
It is not enabled by default to save space.
-endif
+endif # BOOTSTD
config LEGACY_IMAGE_FORMAT
bool "Enable support for the legacy image format"
@@ -696,108 +693,6 @@ config SUPPORT_RAW_INITRD
address of the initrd must be augmented by it's size, in the following
format: "<initrd address>:<initrd size>".
-config OF_BOARD_SETUP
- bool "Set up board-specific details in device tree before boot"
- depends on OF_LIBFDT
- help
- This causes U-Boot to call ft_board_setup() before booting into
- the Operating System. This function can set up various
- board-specific information in the device tree for use by the OS.
- The device tree is then passed to the OS.
-
-config OF_SYSTEM_SETUP
- bool "Set up system-specific details in device tree before boot"
- depends on OF_LIBFDT
- help
- This causes U-Boot to call ft_system_setup() before booting into
- the Operating System. This function can set up various
- system-specific information in the device tree for use by the OS.
- The device tree is then passed to the OS.
-
-config OF_STDOUT_VIA_ALIAS
- bool "Update the device-tree stdout alias from U-Boot"
- depends on OF_LIBFDT
- help
- This uses U-Boot's serial alias from the aliases node to update
- the device tree passed to the OS. The "linux,stdout-path" property
- in the chosen node is set to point to the correct serial node.
- This option currently references CONFIG_CONS_INDEX, which is
- incorrect when used with device tree as this option does not
- exist / should not be used.
-
-config HAVE_TEXT_BASE
- bool
- depends on !NIOS2 && !XTENSA
- depends on !EFI_APP
- default y
-
-config TEXT_BASE
- depends on HAVE_TEXT_BASE
- default 0x0 if POSITION_INDEPENDENT
- default 0x80800000 if ARCH_OMAP2PLUS || ARCH_K3
- default 0x81700000 if MACH_SUNIV
- default 0x2a000000 if MACH_SUN9I
- default 0x4a000000 if SUNXI_MINIMUM_DRAM_MB >= 256
- default 0x42e00000 if SUNXI_MINIMUM_DRAM_MB >= 64
- hex "Text Base"
- help
- The address in memory that U-Boot will be running from, initially.
-
-config HAVE_SYS_MONITOR_BASE
- bool
- depends on ARC || MIPS || M68K || NIOS2 || PPC || XTENSA || X86 \
- || ENV_IS_IN_FLASH || MTD_NOR_FLASH
- depends on !EFI_APP
- default y
-
-config SYS_MONITOR_BASE
- depends on HAVE_SYS_MONITOR_BASE
- hex "Physical start address of boot monitor code"
- default TEXT_BASE
- help
- The physical start address of boot monitor code (which is the same as
- CONFIG_TEXT_BASE when linking) and the same as CFG_SYS_FLASH_BASE
- when booting from flash.
-
-config SPL_SYS_MONITOR_BASE
- depends on MPC85xx && SPL && HAVE_SYS_MONITOR_BASE
- hex "Physical start address of SPL monitor code"
- default SPL_TEXT_BASE
-
-config TPL_SYS_MONITOR_BASE
- depends on MPC85xx && TPL && HAVE_SYS_MONITOR_BASE
- hex "Physical start address of TPL monitor code"
-
-config DYNAMIC_SYS_CLK_FREQ
- bool "Determine CPU clock frequency at run-time"
- help
- Implement a get_board_sys_clk function that will determine the CPU
- clock frequency at run time, rather than define it statically.
-
-config SYS_CLK_FREQ
- depends on !DYNAMIC_SYS_CLK_FREQ
- int "CPU clock frequency"
- default 125000000 if ARCH_LS1012A
- default 100000000 if ARCH_P2020 || ARCH_T1024 || ARCH_T1042 || \
- ARCH_LS1021A || FSL_LSCH2 || FSL_LSCH3
- default 66666666 if ARCH_P1010 || ARCH_P1020 || ARCH_T4240
- default 66660000 if ARCH_T2080
- default 33333333 if RCAR_GEN3
- default 24000000 if ARCH_EXYNOS
- default 20000000 if RCAR_GEN2
- default 0
- help
- A static value for the CPU frequency. Note that if not required
- for a given SoC, this can be left at 0.
-
-config ARCH_FIXUP_FDT_MEMORY
- bool "Enable arch_fixup_memory_banks() call"
- default y
- help
- Enable FDT memory map syncup before OS boot. This feature can be
- used for booting OS with different memory setup where the part of
- the memory location should be used for different purpose.
-
config CHROMEOS
bool "Support booting Chrome OS"
help
@@ -881,7 +776,7 @@ config SYS_BOOT_RAMDISK_HIGH
endmenu # Boot images
config DISTRO_DEFAULTS
- bool "Select defaults suitable for booting general purpose Linux distributions"
+ bool "(deprecated) Script-based booting of Linux distributions"
select BOOT_DEFAULTS
select AUTO_COMPLETE
select CMDLINE_EDITING
@@ -889,6 +784,10 @@ config DISTRO_DEFAULTS
select HUSH_PARSER
select SYS_LONGHELP
help
+ Note: These scripts have been replaced by Standard Boot. Do not use
+ them on new boards. See 'Migrating from distro_boot' at
+ doc/develop/bootstd.rst
+
Select this to enable various options and commands which are suitable
for building u-boot for booting general purpose Linux distributions.
@@ -1538,6 +1437,63 @@ config SPL_IMAGE_PRE_LOAD_SIG
endmenu
+if OF_LIBFDT
+
+menu "Devicetree fixup"
+
+config OF_BOARD_SETUP
+ bool "Set up board-specific details in device tree before boot"
+ help
+ This causes U-Boot to call ft_board_setup() before booting into
+ the Operating System. This function can set up various
+ board-specific information in the device tree for use by the OS.
+ The device tree is then passed to the OS.
+
+config OF_SYSTEM_SETUP
+ bool "Set up system-specific details in device tree before boot"
+ help
+ This causes U-Boot to call ft_system_setup() before booting into
+ the Operating System. This function can set up various
+ system-specific information in the device tree for use by the OS.
+ The device tree is then passed to the OS.
+
+config OF_STDOUT_VIA_ALIAS
+ bool "Update the device-tree stdout alias from U-Boot"
+ help
+ This uses U-Boot's serial alias from the aliases node to update
+ the device tree passed to the OS. The "linux,stdout-path" property
+ in the chosen node is set to point to the correct serial node.
+ This option currently references CONFIG_CONS_INDEX, which is
+ incorrect when used with device tree as this option does not
+ exist / should not be used.
+
+config FDT_FIXUP_PARTITIONS
+ bool "Overwrite MTD partitions in DTS through defined in 'mtdparts'"
+ help
+ Allow overwriting defined partitions in the device tree blob
+ using partition info defined in the 'mtdparts' environment
+ variable.
+
+config FDT_SIMPLEFB
+ bool "FDT tools for simplefb support"
+ help
+ Enable the fdt tools to manage the simple fb nodes in device tree.
+ These functions can be used by board to indicate to the OS
+ the presence of the simple frame buffer with associated reserved
+ memory
+
+config ARCH_FIXUP_FDT_MEMORY
+ bool "Enable arch_fixup_memory_banks() call"
+ default y
+ help
+ Enable FDT memory map syncup before OS boot. This feature can be
+ used for booting OS with different memory setup where the part of
+ the memory location should be used for different purpose.
+
+endmenu
+
+endif # OF_LIBFDT
+
config USE_BOOTARGS
bool "Enable boot arguments"
help
diff --git a/boot/Makefile b/boot/Makefile
index 10f01572237..6ce983b83fa 100644
--- a/boot/Makefile
+++ b/boot/Makefile
@@ -16,6 +16,7 @@ obj-$(CONFIG_QFW) += bootmeth_qfw.o
endif
obj-y += image.o image-board.o
+
obj-$(CONFIG_ANDROID_AB) += android_ab.o
obj-$(CONFIG_ANDROID_BOOT_IMAGE) += image-android.o image-android-dt.o
@@ -37,6 +38,9 @@ obj-$(CONFIG_$(SPL_TPL_)BOOTSTD) += bootflow_menu.o
obj-$(CONFIG_$(SPL_TPL_)CEDIT) += cedit.o
endif
+obj-$(CONFIG_$(SPL_TPL_)OF_LIBFDT) += fdt_support.o
+obj-$(CONFIG_$(SPL_TPL_)FDT_SIMPLEFB) += fdt_simplefb.o
+
obj-$(CONFIG_$(SPL_TPL_)OF_LIBFDT) += image-fdt.o
obj-$(CONFIG_$(SPL_TPL_)FIT_SIGNATURE) += fdt_region.o
obj-$(CONFIG_$(SPL_TPL_)FIT) += image-fit.o
diff --git a/common/fdt_simplefb.c b/boot/fdt_simplefb.c
index 069ced75a7f..069ced75a7f 100644
--- a/common/fdt_simplefb.c
+++ b/boot/fdt_simplefb.c
diff --git a/common/fdt_support.c b/boot/fdt_support.c
index 5e49078f8c3..5e49078f8c3 100644
--- a/common/fdt_support.c
+++ b/boot/fdt_support.c
diff --git a/common/Kconfig b/common/Kconfig
index d916194b942..21eaa5e815f 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -1157,25 +1157,5 @@ config VPL_IMAGE_SIGN_INFO
endif
-config FDT_SIMPLEFB
- bool "FDT tools for simplefb support"
- depends on OF_LIBFDT
- help
- Enable the fdt tools to manage the simple fb nodes in device tree.
- These functions can be used by board to indicate to the OS
- the presence of the simple frame buffer with associated reserved
- memory
-
config IO_TRACE
bool
-
-config BMP
- bool "Enable bmp image display"
- help
- Enable bmp functions to display bmp image and get bmp info.
-
-config SPL_BMP
- bool "Enable bmp image display at SPL"
- depends on SPL_VIDEO
- help
- Enable bmp functions to display bmp image and get bmp info at SPL.
diff --git a/common/Makefile b/common/Makefile
index f5c3d90f067..5c1617206f0 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -17,8 +17,6 @@ obj-y += board_r.o
obj-$(CONFIG_DISPLAY_BOARDINFO) += board_info.o
obj-$(CONFIG_DISPLAY_BOARDINFO_LATE) += board_info.o
-obj-$(CONFIG_FDT_SIMPLEFB) += fdt_simplefb.o
-obj-$(CONFIG_$(SPL_TPL_)OF_LIBFDT) += fdt_support.o
obj-$(CONFIG_MII) += miiphyutil.o
obj-$(CONFIG_CMD_MII) += miiphyutil.o
obj-$(CONFIG_PHYLIB) += miiphyutil.o
@@ -45,14 +43,12 @@ endif # !CONFIG_SPL_BUILD
obj-$(CONFIG_$(SPL_TPL_)BOOTSTAGE) += bootstage.o
obj-$(CONFIG_$(SPL_TPL_)BLOBLIST) += bloblist.o
-obj-$(CONFIG_$(SPL_)BMP) += bmp.o
ifdef CONFIG_SPL_BUILD
ifdef CONFIG_SPL_DFU
obj-$(CONFIG_DFU_OVER_USB) += dfu.o
endif
obj-$(CONFIG_SPL_NET) += miiphyutil.o
-obj-$(CONFIG_$(SPL_TPL_)OF_LIBFDT) += fdt_support.o
obj-$(CONFIG_SPL_USB_HOST) += usb.o usb_hub.o
obj-$(CONFIG_SPL_USB_STORAGE) += usb_storage.o
diff --git a/common/spl/spl_ram.c b/common/spl/spl_ram.c
index 93cf420d810..4158ed1c32d 100644
--- a/common/spl/spl_ram.c
+++ b/common/spl/spl_ram.c
@@ -20,12 +20,16 @@
static ulong spl_ram_load_read(struct spl_load_info *load, ulong sector,
ulong count, void *buf)
{
- ulong addr;
+ ulong addr = 0;
debug("%s: sector %lx, count %lx, buf %lx\n",
__func__, sector, count, (ulong)buf);
- addr = (ulong)CONFIG_SPL_LOAD_FIT_ADDRESS + sector;
+ if (IS_ENABLED(CONFIG_SPL_LOAD_FIT)) {
+ addr = IF_ENABLED_INT(CONFIG_SPL_LOAD_FIT,
+ CONFIG_SPL_LOAD_FIT_ADDRESS);
+ }
+ addr += sector;
if (CONFIG_IS_ENABLED(IMAGE_PRE_LOAD))
addr += image_load_offset;
@@ -38,20 +42,23 @@ static int spl_ram_load_image(struct spl_image_info *spl_image,
struct spl_boot_device *bootdev)
{
struct legacy_img_hdr *header;
+ ulong addr = 0;
int ret;
- header = (struct legacy_img_hdr *)CONFIG_SPL_LOAD_FIT_ADDRESS;
+ if (IS_ENABLED(CONFIG_SPL_LOAD_FIT)) {
+ addr = IF_ENABLED_INT(CONFIG_SPL_LOAD_FIT,
+ CONFIG_SPL_LOAD_FIT_ADDRESS);
+ }
if (CONFIG_IS_ENABLED(IMAGE_PRE_LOAD)) {
- unsigned long addr = (unsigned long)header;
ret = image_pre_load(addr);
if (ret)
return ret;
addr += image_load_offset;
- header = (struct legacy_img_hdr *)addr;
}
+ header = map_sysmem(addr, 0);
#if CONFIG_IS_ENABLED(DFU)
if (bootdev->boot_device == BOOT_DEVICE_DFU)
@@ -84,7 +91,7 @@ static int spl_ram_load_image(struct spl_image_info *spl_image,
u_boot_pos = (ulong)spl_get_load_buffer(-sizeof(*header),
sizeof(*header));
}
- header = (struct legacy_img_hdr *)map_sysmem(u_boot_pos, 0);
+ header = map_sysmem(u_boot_pos, 0);
ret = spl_parse_image_header(spl_image, bootdev, header);
}
diff --git a/doc/develop/bootstd.rst b/doc/develop/bootstd.rst
index e8b90752f08..6172dc906bd 100644
--- a/doc/develop/bootstd.rst
+++ b/doc/develop/bootstd.rst
@@ -464,6 +464,28 @@ ready File was loaded and is ready for use. In this state the bootflow is
======= =======================================================================
+Migrating from distro_boot
+--------------------------
+
+To migrate from distro_boot:
+
+#. Update your board header files to remove the BOOTENV and BOOT_TARGET_xxx
+ defines. Standard boot finds available boot devices automatically.
+
+#. Remove the "boot_targets" variable unless you need it. Standard boot uses a
+ default order from fastest to slowest, which generally matches the order used
+ by boards.
+
+#. Make sure that CONFIG_BOOTSTD_DEFAULTS is enabled by your board, so it can
+ boot common Linux distributions.
+
+An example patch is at migrate_patch_.
+
+If you are using custom boot scripts for your board, consider creating your
+own bootmeth to hold the logic. There are various examples at
+`boot/bootmeth_...`.
+
+
Theory of operation
-------------------
@@ -775,3 +797,4 @@ Other ideas:
.. _BootLoaderSpec: http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec/
.. _distro_boot: https://github.com/u-boot/u-boot/blob/master/boot/distro.c
.. _bootflow_h: https://github.com/u-boot/u-boot/blob/master/include/bootflow.h
+.. _migrate_patch: https://patchwork.ozlabs.org/project/uboot/patch/20230727215433.578830-2-sjg@chromium.org/
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 09f2cb1a732..ab927641bb7 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -959,6 +959,14 @@ config SPLASH_SOURCE
endif # SPLASH_SCREEN
+config BMP
+ bool "Enable bmp image display"
+ help
+ Enable bmp functions to display bmp image and get bmp info.
+
+ BMP is a simple graphics-image file format designed to store bitmap
+ images. It is primarily used on Windows devices.
+
config VIDEO_BMP_GZIP
bool "Gzip compressed BMP image support"
depends on BMP || SPLASH_SCREEN
@@ -1162,6 +1170,14 @@ config SPL_SPLASH_SOURCE
endif # SPL_SPLASH_SCREEN
+config SPL_BMP
+ bool "Enable bmp image display at SPL"
+ help
+ Enable bmp functions to display bmp image and get bmp info in SPL.
+
+ BMP is a simple graphics-image file format designed to store bitmap
+ images. It is primarily used on Windows devices.
+
config SPL_VIDEO_BMP_GZIP
bool "Gzip compressed BMP image support at SPL"
depends on SPL_SPLASH_SCREEN || SPL_BMP
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index d13af9f3b19..fdc29376324 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -25,6 +25,7 @@ obj-$(CONFIG_PANEL_HX8238D) += hx8238d.o
obj-$(CONFIG_$(SPL_TPL_)SIMPLE_PANEL) += simple_panel.o
obj-$(CONFIG_VIDEO_LOGO) += u_boot_logo.o
+obj-$(CONFIG_$(SPL_TPL_)BMP) += bmp.o
endif
diff --git a/common/bmp.c b/drivers/video/bmp.c
index bab6fa7265a..bab6fa7265a 100644
--- a/common/bmp.c
+++ b/drivers/video/bmp.c
diff --git a/lib/Kconfig b/lib/Kconfig
index 42e559ad0b5..eb2b1016182 100644
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -953,15 +953,6 @@ config VPL_OF_LIBFDT_ASSUME_MASK
0xff means all assumptions are made and any invalid data may cause
unsafe execution. See FDT_ASSUME_PERFECT, etc. in libfdt_internal.h
-config FDT_FIXUP_PARTITIONS
- bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
- depends on OF_LIBFDT
- depends on CMD_MTDPARTS
- help
- Allow overwriting defined partitions in the device tree blob
- using partition info defined in the 'mtdparts' environment
- variable.
-
menu "System tables"
depends on (!EFI && !SYS_COREBOOT) || (ARM && EFI_LOADER)
@@ -989,6 +980,8 @@ config GENERATE_SMBIOS_TABLE
See also SMBIOS_SYSINFO which allows SMBIOS values to be provided in
the devicetree.
+endmenu
+
config LIB_RATIONAL
bool "enable continued fraction calculation routines"
@@ -996,8 +989,6 @@ config SPL_LIB_RATIONAL
bool "enable continued fraction calculation routines for SPL"
depends on SPL
-endmenu
-
config ASN1_COMPILER
bool
help
@@ -1118,8 +1109,4 @@ config PHANDLE_CHECK_SEQ
endmenu
-menu "FWU Multi Bank Updates"
-
source lib/fwu_updates/Kconfig
-
-endmenu
diff --git a/lib/fwu_updates/Kconfig b/lib/fwu_updates/Kconfig
index 71f34793d92..d35247d0e5d 100644
--- a/lib/fwu_updates/Kconfig
+++ b/lib/fwu_updates/Kconfig
@@ -1,4 +1,4 @@
-config FWU_MULTI_BANK_UPDATE
+menuconfig FWU_MULTI_BANK_UPDATE
bool "Enable FWU Multi Bank Update Feature"
depends on EFI_CAPSULE_ON_DISK
select PARTITION_TYPE_GUID
@@ -10,24 +10,25 @@ config FWU_MULTI_BANK_UPDATE
multiple banks(copies) of the firmware images. One of the
bank is selected for updating all the firmware components
+if FWU_MULTI_BANK_UPDATE
+
config FWU_NUM_BANKS
int "Number of Banks defined by the platform"
- depends on FWU_MULTI_BANK_UPDATE
help
Define the number of banks of firmware images on a platform
config FWU_NUM_IMAGES_PER_BANK
int "Number of firmware images per bank"
- depends on FWU_MULTI_BANK_UPDATE
help
Define the number of firmware images per bank. This value
should be the same for all the banks.
config FWU_TRIAL_STATE_CNT
int "Number of times system boots in Trial State"
- depends on FWU_MULTI_BANK_UPDATE
default 3
help
With FWU Multi Bank Update feature enabled, number of times
the platform is allowed to boot in Trial State after an
update.
+
+endif
diff --git a/test/Kconfig b/test/Kconfig
index 6e859fb7d0d..830245b6f9a 100644
--- a/test/Kconfig
+++ b/test/Kconfig
@@ -1,9 +1,4 @@
-config POST
- bool "Power On Self Test support"
- help
- See doc/README.POST for more details
-
-menu "Unit tests"
+menu "Testing"
config UNIT_TEST
bool "Unit tests"
@@ -110,4 +105,9 @@ source "test/lib/Kconfig"
source "test/optee/Kconfig"
source "test/overlay/Kconfig"
+config POST
+ bool "Power On Self Test support"
+ help
+ See doc/README.POST for more details
+
endmenu