从零开始实现U-Boot

U-Boot这个默默无闻的引导程序,承担着从硬件冷启动到操作系统加载的全过程。

通过逐行研究这些代码,我们不仅学会了如何配置一个特定的芯片,更重要的是理解了嵌入式系统启动的本质规律。这种从硬件最底层开始的认知方式,能让我们在遇到启动故障时,有清晰的问题定位思路;在定制新硬件时,有明确的移植方向。

学习计划:

从处理器上电后执行的第一条指令开始,到C语言环境的搭建,再到开发板专属初始化,最后到操作系统加载。从零学习复现 U-Boot 功能,逐行钻研这些底层的启动代码,理解嵌入式设备启动的本质。

下面是我的博客网站,欢迎大家去访问!一个我记录学习、分享知识的地方。技术之路漫长而有趣,希望我的分享能给你带来一些帮助和启发。

博客网站 STUDYWITHIOT

访问链接

https://uscxi.pages.dev/(推荐)
https://uscxi.github.io/(国内较慢)

文章推荐

  1. U-Boot 构建工具fixdep的工作原理及编译分析
  2. U-Boot 配置/构建系统(Kconfig/Kbuild)
  3. U-Boot 配置编译过程及Makefile分析
  4. U-Boot 的 Host 程序 make 流程
  5. Kconfig 配置描述文件
  6. Kconfig 配置描述文件问题记录
  7. U-Boot编译过程的中间配置文件
  8. IMX6ULL 的启动与 DDR 初始化
  9. IMX6ULL 链接脚本 u-boot.lds
  10. include/generated/asm-offsets.h文件的生成过程
  11. 加载地址、链接地址和运行地址
  12. IMX6ULL ARMv7 Cortex-A start.S 详细解析
  13. IMX6ULL lowlevel_init.S分析
  14. IMX6ULL crt0.S _main函数分析
  15. board_init_f_init_reserve 和 board_init_f_init_reserve 函数分析
  16. U-Boot源码学习和调试快速定位函数代码位置技巧

持续更新中...

相关推荐
zhangzhangkeji21 小时前
笔记 21-9 :彭老师 14章,系统移植,涉及 emmc / SD 的 uboot 命令
arm
zhangzhangkeji2 天前
笔记 21-7 :彭老师 14章,系统移植,uboot 常用命令,shell 里 $() 和 ${}
arm
zhangzhangkeji2 天前
笔记 21-5c :彭老师 14章,系统移植,TF启动卡制作,启动卡制作脚本分析
arm
zhangzhangkeji2 天前
笔记 21-6 :彭老师 14章,系统移植,Uboot变量及命令
arm
Dlrb12112 天前
Linux驱动---PinCtrl 与 GPIO 子系统详解以及基于PinCtrl 与 GPIO的 LED 驱动编写
linux·arm·imx6ull·驱动·gpio子系统·pinctrl
深念Y3 天前
tcpfwd-doc
linux·嵌入式·arm·编译·tcp·服务
Dlrb12114 天前
Linux驱动---sys文件系统自动添加设备节点、添加调试节点以及MISC设备驱动的解释
linux·imx6ull·misc·设备节点·sys文件系统
zhangzhangkeji4 天前
笔记 21-3 :彭老师 14章,系统移植,uboot 升级到 2017,烧写所有文件,mbr 与 GPt 分区
arm
zhangzhangkeji4 天前
笔记 21-4 :彭老师 14章,系统移植,TF启动卡制作
arm
zhangzhangkeji5 天前
笔记 21-1 :彭老师 14章,系统移植,工工具链安装
arm