aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRandolph <randolph@andestech.com>2023-10-12 14:35:04 +0800
committerLeo Yu-Chi Liang <ycliang@andestech.com>2023-10-19 17:29:33 +0800
commite09a2287c1faf8951ec7e7517788dae55d41a2c6 (patch)
tree851202eba8b78673672a63c4e3bb5cf6b9c01837
parent5367b9e798279bd28d920212e842f637eec359bc (diff)
downloadu-boot-e09a2287c1faf8951ec7e7517788dae55d41a2c6.zip
u-boot-e09a2287c1faf8951ec7e7517788dae55d41a2c6.tar.gz
u-boot-e09a2287c1faf8951ec7e7517788dae55d41a2c6.tar.bz2
riscv: kconfig: introduce SPL_LOAD_FIT_OPENSBI_OS_BOOT symbol
Introduce common Kconfig symbol for riscv architecture. This symbol SPL_LOAD_FIT_OPENSBI_OS_BOOT is like falcon mode on ARM, the Falcon boot is a shortcut boot method for SD/eMMC targets. It skips the loading the RAM version U-Boot. Instead, it will loads the FIT image and boots directly to Linux. When SPL_OPENSBI_OS_BOOT is enabled, linux.itb is created after compilation instead of the default u-boot.itb. It initialises memory with the U-Boot SPL at the first stage, just as a normal boot process does at the beginning. Instead of jumping to the U-Boot proper from OpenSBI before booting the Linux kernel, the RISC-V falcon mode process jumps directly to the Linux kernel to gain shorter booting time. Signed-off-by: Randolph <randolph@andestech.com> Reviewed-by: Simon Glass <sjg@chromium.org>
-rw-r--r--arch/riscv/Kconfig8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 183885e..49b6e1a 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -424,4 +424,12 @@ config TPL_USE_ARCH_MEMSET
endmenu
+config SPL_LOAD_FIT_OPENSBI_OS_BOOT
+ bool "Enable SPL (OpenSBI OS boot mode) applying linux from FIT"
+ depends on SPL_LOAD_FIT
+ help
+ Use fw_dynamic from the FIT image, and u-boot SPL will invoke it directly.
+ This is a shortcut boot flow, from u-boot SPL -> OpenSBI -> u-boot proper
+ -> linux to u-boot SPL -> OpenSBI -> linux.
+
endmenu