From: Randolph Date: Thu, 12 Oct 2023 06:35:04 +0000 (+0800) Subject: riscv: kconfig: introduce SPL_LOAD_FIT_OPENSBI_OS_BOOT symbol X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=e09a2287c1faf8951ec7e7517788dae55d41a2c6;p=u-boot.git 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 Reviewed-by: Simon Glass --- diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index 183885ebe7..49b6e1a4d6 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