u-boot SPL的理解

Posted 程序猿Ricky的日常干货

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了u-boot SPL的理解相关的知识,希望对你有一定的参考价值。

uboot分为uboot-spl和uboot两个组成部分。SPL是Secondary Program Loader的简称,第二阶段程序加载器,这里所谓的第二阶段是相对于SOC中的BROM来说的,之前的文章已经有所介绍,SOC启动最先执行的是BROM中的固化程序。

BROM会通过检测启动方式来加载第二阶段bootloader。uboot已经是一个bootloader了,那么为什么还多一个uboot spl呢?

这个主要原因是对于一些SOC来说,它的内部SRAM可能会比较小,小到无法装载下一个完整的uboot镜像,那么就需要spl,它主要负责初始化外部RAM和环境,并加载真正的uboot镜像到外部RAM中来执行。

所以由此来看,SPL应该是一个非常小的loader程序,可以运行于SOC的内部SRAM中,它的主要功能就是加载真正的uboot并运行之。

以上是关于u-boot SPL的理解的主要内容,如果未能解决你的问题,请参考以下文章

am335x u-boot2011.09 SPL 流程跟踪

U-boot的目录结构及spl功能

RK356x U-Boot研究所(编译篇)2.1 U-Boot编译过程浅析

am335x uboot2016.05 (MLO u-boot.img)执行流程(转)

ARMv8架构u-boot启动流程详细分析

NUC970烧录文件系统