U-Boot supports MMC card & tftpbooting
Why another runtime service Provider ? Why OpenSBI ??Qemu can load super
That’s the personification of RISC-V I could come up with which tells how incapable is right brain is
Legacy – BBL + Vmlinux as a single binary
Grub was ported to RISC-V were upstreamed sometime in last year. UEFI support in U-Boot was done even before that time. But it was way ahead of its time as there was no effort in separating supervisor binary interface implementation from the Linux.
Maintain and evolve the SBI specifications
20K lines of code
49K – dynamic firmware
SPL (Secondary Program Loader) is a small binary, generated from U-Boot source, that fits in the SRAM and loads the main U-Boot into system RAM.
SPL also support network/mmc boot.
OpenSBI firmware with dynamic information about the next booting stage
The next stage booting stage (i.e. BOOTLADER) and FW_DYNAMIC are loaded by the previous booting stage (i.e. LOADER)
The previous booting stage (i.e. LOADER) passes the location of struct fw_dynamic_info to FW_DYNAMIC via ‘a2’ register
Down-side:
Previous booting stage (i.e. LOADER) needs to be aware of struct fw_dynamic_info