基本环境
我这里的基本开发环境与运行环境在之前的博文 U-Boot 之二 零基础编译、详解 Image 镜像及 DTB 文件 已经详细介绍过了,这里就不在赘述。如果在构建时遇到错误,可以参考上面的博文来解决。
示例代码
嵌入式 Linux 运行环境搭建系列博文涉及的所有源代码均放到了我个人的 Gitee 上:https://gitee.com/itexp/BOARD-STM32F769I-EVAL
。这个仓库中包含了的所有源代码会根据后续博文一步步进行各种适配,如果你是纯学习则可以直接 clone 该仓库来学习!
其中,为了在适配 Buildroot、Yocto 等工具时方便,该仓库采用了 git submodule
来进行基本的组织。本篇博文我们重点是学习 U-Boot,因此,也可以直接使用 https://gitee.com/itexp/u-boot-v2021.10 这个子仓库来学习。
启动阶段
同大多数的 Bootloader 一样,U-Boot 的启动过程也分为 BL1、BL2 两