Skip to content

Latest commit

 

History

History
12 lines (7 loc) · 1015 Bytes

20220423-d1-spl.md

File metadata and controls

12 lines (7 loc) · 1015 Bytes

学习 D1 SPL 软件

repo

Tina Linux 引导顺序:brom -> spl -> opensbi -> uboot -> tina kernel

  • brom: Bipolar Read-Only Memory 双极性只读存储器,双极性器件制造的只读存储器
  • spl: Secondary Program Loader 二阶段程序加载器

由于 uboot 在 x86、arm 等平台引导 linux 不存在 sbi 这一层,被设计的与 linux kernel 耦合严重,故在 riscv 上顺序不合逻辑,先 opensbi 后 uboot。正常的 spl 是 uboot 的一部分,只是由于每个阶段能引导的负载容量有限才分出来;在这里由于被 opensbi 切开,是一个独立的软件,和 uboot 无关了。

这个 issue 可以看出 spl 和其他东西(opensbi、uboot、kernel)需要分别烧写到 spi nand flash 的不同位置。spl main 函数 的结尾,控制权转交到 opensbi。