On 7/28/23 19:32, Simon Glass wrote:
Hi Heinrich,
On Fri, 28 Jul 2023 at 09:58, Heinrich Schuchardt
<heinrich.schucha...@canonical.com> wrote:
Add more detail to the description of U-Boot boot phases:
* describe which steps are optional
* mentions alternative boot flows
Signed-off-by: Heinrich Schuchardt <heinrich.schucha...@canonical.com>
Reviewed-by: Bin Meng <bmeng...@gmail.com>
---
v2:
add missing comma
---
doc/develop/spl.rst | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/doc/develop/spl.rst b/doc/develop/spl.rst
index a1515a7b43..5743bdf37c 100644
--- a/doc/develop/spl.rst
+++ b/doc/develop/spl.rst
@@ -77,10 +77,11 @@ To check whether a feature is enabled, use
CONFIG_IS_ENABLED()::
This checks CONFIG_CLK for the main build, CONFIG_SPL_CLK for the SPL build,
CONFIG_TPL_CLK for the TPL build, etc.
-U-Boot Phases
--------------
+U-Boot Boot Phases
+------------------
-U-Boot boots through the following phases:
+U-Boot goes through the following boot phases where TPL, VPL, SPL are optional.
+While many boards use SPL, less use TPL.
TPL
Very early init, as tiny as possible. This loads SPL (or VPL if enabled).
@@ -97,6 +98,12 @@ SPL
U-Boot
U-Boot proper, containing the command line and boot logic.
+Further usages of U-Boot SPL comprise:
+
+* Launching BL31 of ARM Trusted Firmware which invokes main U-Boot as BL33
+* launching EDK II
Really? Where are the instructions for that?
OpenSBI is used to start RISCV_VIRT_CODE.fd. So you just need to put
both into a FIT image. If you follow the EBBR, this would be a file
FIRMWARE/vendor/board/edk2.fit on the EFI System Partition. Then launch
the FIT image with SPL on qemu-riscv64_spl_defconfig.
You could do the same on real hardware with EDK II support like the
SiFive HiFive Unleashed.
+* launching Linux kernel
This is falcon boot, is it? Can we link to the docs?
No, falcon mode is described in doc/README.falcon and not in the HTML
documentation.
Falcon mode (i.e. using a legacy U-boot image) would be one possibility
to boot into Linux from SPL. Instead you could also use a FIT image.
As legacy U-Boot images are deprecated linking to Falcon mode would seem
misleading.
Best regards
Heinrich
+* launching RISC-V OpenSBI which invokes main U-Boot
Checking the boot phase
-----------------------
--
2.40.1
Regards,
Simon