社区
朱有鹏的课程社区_NO_4
uboot源码分析1-启动第一阶段-2.5.uboot和系统移植第5部分
帖子详情
2.5.9.uboot重定位详解
朱有鹏老师
2023-01-12 15:05:27
课时名称
课时知识点
2.5.9.uboot重定位详解
...全文
125
回复
打赏
收藏
2.5.9.uboot重定位详解
课时名称课时知识点2.5.9.uboot重定位详解
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
u
boot
启动流程
详解
要分析
boot
启动流程,首先要找到程序入口地址,可以通过编译u
boot
生成u-
boot
.lds,通过查看链接脚本u-
boot
.lds知道入口点是 arch/arm/lib/vectors.S 文件中的_start。 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") OUTPUT_ARCH(arm) ENTRY(_start)//代码当前入口点: _start, _start 在文件arch/arm/lib/vecto
U
boot
启动过程
详解
u
boot
就是将start.o和大量的built-in.o链接在一起。 built-in.o好像是把所有子目录下的.o文件进行链接到一起。 链接脚本为u-
boot
.lds ,u
boot
链接首地址为0x87800000,裸机的时候也是-Ttest 来执行链接首地址 查找一下这个链接的地址 grep -nR "87800000" 在mx6_common.h文件中设置 通过u
boot
-lds可以看到入口地址为_start ...
[u-
boot
] u
boot
启动过程中的代码
重定位
直到我在找到了这一句,段的链接地址是定义的地址 加载地址(Load Address)和运行地址(Running Address) 早期的启动阶段、u
boot
还没打开MMU,即使后面MMU Enable的情况下,也是做的一一映射(虚拟地址 = 物理地址),在这个前提下,加载地址就是运行地址 u
boot
是被前级
Boot
loader加载到RAM上的,通常情况下,前级BL也是把镜像搬移到运行地址上去 u
boot
中的第一次
重定位
和,这段地址空间是如何生成的?保存的是什么数据?如何进行的
重定位
?
重定位
的目的
imx6ull的U
boot
启动过程——区别于传统U
boot
本文捋一捋imx6ull的u
boot
的启动流程。首先,NXP提供的u
boot
经过编译最终烧写进存储介质中的是u
boot
.imx文件,这个imx后缀的文件不同于传统的比如S3C2440最终烧写的u
boot
.bin文件。imx文件是在bin文件的基础上加上了一些东西,其中最重要的是一个叫DCD表的东西。DCD表中包含了时钟寄存器的地址和寄存器的值,引脚复用寄存器地址和寄存器的值,DDR控制器的寄存器地址和寄存器的值。imx6ull内部的
BOOT
ROM会根据DCD表的内容打开时钟,初始化外部DDR。因此u
boot
[IMX][U
Boot
] 07.启动流程 (3) - U
Boot
程序
重定位
- relocate_code
U
Boot
启动流程 (3) - U
Boot
程序
重定位
- relocate_code
朱有鹏的课程社区_NO_4
1
社区成员
99
社区内容
发帖
与我相关
我的任务
朱有鹏的课程社区_NO_4
朱有鹏,先后从事电子工程师、单片机软件工程师、嵌入式linux软件工程师、物联网软件工程师、架构师等工作,朱老师物联网大讲堂创始人,畅销书作者。擅长U-Boot、linux kernel等嵌入式底层和系统层开发、架构设计。擅长汇编、C/C++、Java、C#等常用开发语言,2015年起录制的在线视频课程《朱有鹏老师嵌入式linux核心课程》累计学习人数超300万。2016年与IBM合作制作基于IBM Waston平台的物联网系统开发教程,授予“IBM技术专家”。2018年开始与华为认证合作,开发HCDP-IoT相关的课程体系、视频课程、实验平台、案例等,被授予“华为云享专家”。
复制链接
扫一扫
分享
社区描述
朱有鹏,先后从事电子工程师、单片机软件工程师、嵌入式linux软件工程师、物联网软件工程师、架构师等工作,朱老师物联网大讲堂创始人,畅销书作者。擅长U-Boot、linux kernel等嵌入式底层和系统层开发、架构设计。擅长汇编、C/C++、Java、C#等常用开发语言,2015年起录制的在线视频课程《朱有鹏老师嵌入式linux核心课程》累计学习人数超300万。2016年与IBM合作制作基于IBM Waston平台的物联网系统开发教程,授予“IBM技术专家”。2018年开始与华为认证合作,开发HCDP-IoT相关的课程体系、视频课程、实验平台、案例等,被授予“华为云享专家”。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章