admin管理员组文章数量:1125605
I'm struggling to understand what U-Boot and/or Coreboot does that a RISC-V SBI (Supervisor Binary Interface) doesn't. I understand that the SBI's function in abstracting features, but I don't understand what things need initialising that an SBI doesn't do. I've seen a few examples (slide 9) of the types of boot processes you can have, but I don't understand why which one is necessary in each case.
Could the boot process be?: ZSBL (Zero-Stage bootloader) -> SBI -> Kernel
And if that's the case what is the point of having Coreboot or U-Boot at all? I understand that a First-Stage bootloader may need to be loaded into Static RAM first to initialise the Dynamic RAM and then move to an SBI, but what would be the point of having the SBI load into U-Boot after the SBI then? Just for the boot manager?
In the theoretical case that RISC-V gets to the PC market, what would be an ideally fast boot setup?
I'm struggling to understand what U-Boot and/or Coreboot does that a RISC-V SBI (Supervisor Binary Interface) doesn't. I understand that the SBI's function in abstracting features, but I don't understand what things need initialising that an SBI doesn't do. I've seen a few examples (slide 9) of the types of boot processes you can have, but I don't understand why which one is necessary in each case.
Could the boot process be?: ZSBL (Zero-Stage bootloader) -> SBI -> Kernel
And if that's the case what is the point of having Coreboot or U-Boot at all? I understand that a First-Stage bootloader may need to be loaded into Static RAM first to initialise the Dynamic RAM and then move to an SBI, but what would be the point of having the SBI load into U-Boot after the SBI then? Just for the boot manager?
In the theoretical case that RISC-V gets to the PC market, what would be an ideally fast boot setup?
Share Improve this question edited 2 days ago CocytusDEDI asked 2 days ago CocytusDEDICocytusDEDI 1187 bronze badges1 Answer
Reset to default 3Could the boot process be?: ZSBL (Zero-Stage bootloader) -> SBI -> Kernel
Yes. It works perfectly fine on QEMU this way, but only because QEMU already loads the kernel into RAM. OpenSBI ("fw_jump") in this case just does some firmware setup and simply jumps to the kernel.
On normal devices, your kernel is likely located in a file system. OpenSBI has no drivers to read that file system and cannot load the kernel. Here you need something like U-Boot that comes with the needed drivers.
I think these slides (from page 14) are a good resource.
本文标签: bootloaderWhat is necessary in the RISCV boot processStack Overflow
版权声明:本文标题:bootloader - What is necessary in the RISC-V boot process? - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1736623945a1945636.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论