summaryrefslogtreecommitdiff
path: root/boot
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-01-18 13:56:10 -0600
committerTom Rini <[email protected]>2026-01-27 16:19:11 -0600
commit272b8784faf33b0eded27ba78ad4251151ef357b (patch)
treeeaafdff167c6fcc0d3db0b6ac21fe14591e6a048 /boot
parentcfce859b16ffc43c6eb0afb6c49c95e1ec25f5f1 (diff)
fit: Rework SPL_LOAD_FIT_ADDRESS slightly
Options which deal with memory locations and have a default value of 0x0 are dangerous, as that is often not a valid memory location. Rework SPL_LOAD_FIT_ADDRESS as follows: - Add SPL_HAS_LOAD_FIT_ADDRESS to guard prompting the question as the case of loading a FIT image does not strictly require setting an address and allows for a malloc()'d area to be used. - For SPL_RAM_SUPPORT, select the new guard symbol if SPL_LOAD_FIT is enabled because in that case an address must be provided. - Update defconfigs for these new changes. Largely this means some defconfigs need to enable SPL_HAS_LOAD_FIT_ADDRESS to maintain their current status. In the case of sandbox, we also need to set SPL_LOAD_FIT_ADDRESS to 0x0. Signed-off-by: Tom Rini <[email protected]>
Diffstat (limited to 'boot')
-rw-r--r--boot/Kconfig12
1 files changed, 10 insertions, 2 deletions
diff --git a/boot/Kconfig b/boot/Kconfig
index b090f3c4c11..e5db165424a 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -245,16 +245,24 @@ config SPL_LOAD_FIT
3. FDTs are only loaded for images with an "os" property of "u-boot".
"linux" images are also supported with Falcon boot mode.
+config SPL_HAS_LOAD_FIT_ADDRESS
+ bool "Provide a static address to load the fit image to in SPL"
+ depends on SPL_LOAD_FIT
+ default y if ARCH_IMX8M || ARCH_K3 || ARCH_ROCKCHIP
+ help
+ By default, a buffer will be dynamically allocated via malloc to hold
+ the FIT image. This option instead allows for a static location to be
+ used and thus not need a large malloc pool to be defined.
+
config SPL_LOAD_FIT_ADDRESS
hex "load address of fit image in SPL"
- depends on SPL_LOAD_FIT
+ depends on SPL_HAS_LOAD_FIT_ADDRESS
default 0x81000000 if ARCH_K3 && ARM64
default 0x80080000 if ARCH_K3 && CPU_V7R
default 0x44000000 if ARCH_IMX8M
default 0x60080000 if ARCH_ROCKCHIP && SPL_TEXT_BASE = 0x60000000
default 0x40200000 if ARCH_ROCKCHIP && SPL_TEXT_BASE = 0x40000000
default 0x00200000 if ARCH_ROCKCHIP && SPL_TEXT_BASE = 0x00000000
- default 0x0
help
Specify the load address of the fit image that will be loaded
by SPL.