From: Randolph <randolph@andestech.com>
To: <u-boot@lists.denx.de>
Cc: <randolph.sklin@gmail.com>, <dylan@andestech.com>,
<tim609@andestech.com>, <peterlin@andestech.com>,
Randolph <randolph@andestech.com>
Subject: [PATCH RESEND 4/7] riscv: dts: introduce SPL_LOAD_FIT_OPENSBI_OS_BOOT symbol
Date: Fri, 6 Oct 2023 19:23:48 +0800 [thread overview]
Message-ID: <20231006112351.2275090-5-randolph@andestech.com> (raw)
In-Reply-To: <20231006112351.2275090-1-randolph@andestech.com>
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.
When SPL_OPENSBI_OS_BOOT is enabled, it will change the default FIT
configure file "binman.dtsi" to "binman_linux.dtsi"
Default is not enabled.
Signed-off-by: Randolph <randolph@andestech.com>
---
arch/riscv/Kconfig | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index ec1cfcaaa7..4f104789a7 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -422,8 +422,17 @@ 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.
+
config SPL_LOAD_FIT_CONFIG
string "Default FIT configuration for SPL"
+ default "binman_linux.dtsi" if SPL_LOAD_FIT_OPENSBI_OS_BOOT
default "binman.dtsi"
depends on SPL_LOAD_FIT
help
--
2.34.1
next prev parent reply other threads:[~2023-10-06 11:27 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-06 11:23 [PATCH RESEND 0/7] riscv: spl: OpenSBI OS boot mode Randolph
2023-10-06 11:23 ` [PATCH RESEND 1/7] riscv: dts: Introduce SPL_LOAD_FIT_CONFIG symbol Randolph
2023-10-07 23:09 ` Simon Glass
2023-10-06 11:23 ` [PATCH RESEND 2/7] riscv: dts: add binman_linux.dtsi for opensbi os boot mode Randolph
2023-10-07 23:09 ` Simon Glass
2023-10-06 11:23 ` [PATCH RESEND 3/7] spl: riscv: opensbi: change the default os_type as varible Randolph
2023-10-07 23:09 ` Simon Glass
2023-10-06 11:23 ` Randolph [this message]
2023-10-07 23:09 ` [PATCH RESEND 4/7] riscv: dts: introduce SPL_LOAD_FIT_OPENSBI_OS_BOOT symbol Simon Glass
2023-10-06 11:23 ` [PATCH RESEND 5/7] spl: riscv: add os type for next booting stage Randolph
2023-10-07 23:09 ` Simon Glass
2023-10-06 11:23 ` [PATCH RESEND 6/7] andes: config: add riscv falcon mode for ae350 platform Randolph
2023-10-06 11:23 ` [PATCH RESEND 7/7] riscv: spl: andes: Move the DTB in front of kernel Randolph
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20231006112351.2275090-5-randolph@andestech.com \
--to=randolph@andestech.com \
--cc=dylan@andestech.com \
--cc=peterlin@andestech.com \
--cc=randolph.sklin@gmail.com \
--cc=tim609@andestech.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).