没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
AM335x uboot spl 分析
芯片到 uboot 启动流程
ROM → SPL→ uboot.img
简介
在 335x 中 ROM code 是第一级的 bootlader。mpu 上电后将会自动执行这里的代码,
完成部分初始化和引导第二级的 bootlader,第二级的 bootlader 引导第三级 bootader,
在 ti 官方上对于第二级和第三级的 bootlader 由 uboot 提供。
SPL
To unify all existing implementations for a secondary program loader (SPL)
and to allow simply adding of new implementations this generic SPL
framework has been created. With this framework almost all source 'les for a
board can be reused. No code duplication or symlinking is necessary anymore.
1> Basic ARM initialization
2> UART console initialization
3> Clocks and DPLL locking (minimal)
4> SDRAM initialization
5> Mux (minimal)
6> BootDevice initialization(based on where we are booting
from.MMC1/MMC2/Nand/Onenand)
7> Bootloading real u-boot from the BootDevice and passing control to it.
uboot spl 源代码分析
一、make'le 分析
打开 spl 文件夹只有一个 make'le 可见 spl 都是复用 uboot 原先的代码。
主要涉及的代码文件为 u-boot-2011.09-psp04.06.00.03/arch/arm/cpu/armv7
u-boot-2011.09-psp04.06.00.03/arch/arm/lib
u-boot-2011.09-psp04.06.00.03/drivers
LDSCRIPT := $(TOPDIR)/board/$(BOARDDIR)/u-boot-spl.lds
这个为链接脚本
二、u-boot-spl.lds
Sram 0x402F0400 Sdram 0x80000000
.bss
.TEXT (arch/arm/cpu/armv7/start.o)
.rodata
.data
__start 为程序开始
__image_copy_end
_end
三、代码解析
__start 为程序开始 (arch/arm/cpu/armv7/start.S)
.globl _start 这是在定义 u-boot 的启动定义入口点,汇编程序的缺省入口是 start 标
号,用户也可以在连接脚本文件中用 ENTRY 标志指明其它入口点。
.global 是 GNU ARM 汇编的一个伪操作,声明一个符号可被其他文档引用,相当
于声明了一个全局变量,.globl 和.global 相同。该部分为处理器的异常处理向量表。地址
范围为 0x0000 0000 ~ 0x0000 0020,刚好 8 条指令。
为什么是 8 条指令呢?这里来算一算。首先,一条 arm 指令为 32bit(位),
资源评论
- ccccccsdn2015-12-16不详细,没什么用
- ketiy20042015-07-28不值得下载,网上其他地方多的是相同资料。
dragoniye
- 粉丝: 38
- 资源: 14
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- mybatis动态sql及其JAVA示例
- 微软常用运行库 游戏运行库 VC++各个版本
- 微信小程序开发教程.pptx
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- 锐捷网络认证中心网络管理.pdf
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
- SD8233LF是一款用于单按键触摸及接近感应开关,其用途是替代传统的机械型开关芯片IC
- 基于YOLOv5的烟雾火焰检测算法研究
- 基于STM32的联合调试侦听设备解决方案原理图PCB源文件调试工具视频(大赛作品)
- MyBatis动态SQL是一种强大的特性,它允许我们在SQL语句中根据条件动态地添加或删除某些部分,从而实现更加灵活和高效的数据
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功