u-boot 启动流程分成哪两个阶段?分别要完成哪些功能
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了u-boot 启动流程分成哪两个阶段?分别要完成哪些功能相关的知识,希望对你有一定的参考价值。
第一阶段(汇编):设置中断向量表、设置cpu模式为svc、关中断、关mmu、关D-Cache、初始化系统时钟、内存、网卡、串口、设置堆栈,将第二阶段代码搬移到内存,清空BSS段、跳转执行第二阶段代码
第二阶段(c):
初始化外设、进入main_loop主循环,进入命令行模式或者自启动模式,设置堆栈,加载内核映像,跳转解压内核 参考技术A 4. 烧写.bin文件(若二进制文件扩展名不是.bin改成xxx.bin即可)
1)打开.bin文件(bootloader):File ->Open data file
2)Target -> Connect
3)Target ->Erase chip
4)Target -> Program本回答被提问者和网友采纳
Linux嵌入式驱动学习之路⑤u-boot启动流程分析
这里说的u-boot启动流程,值得是从上电开机执行u-boot,到u-boot,到u-boot加载操作系统的过程。这一过程可以分为两个过程,各个阶段的功能如下。
第一阶段的功能:
- 硬件设备初始化。
- 加载u-boot第二阶段代码到RAM空间。
- 设置好栈。
- 跳转到第二阶段代码入口。
第二阶段的功能:
- 初始化本阶段使用的硬件设备。
- 检查系统内存映射。
- 将内核从Flash读取到RAM中。
- 为内核设置启动参数。
- 调用内核。
u-boot启动第一阶段流程
根据连接器脚本 board/samsung/$(BOARD)/u-boot.lds中指定的链接方式,u-boot代码段第一个链接的是arch/arm/cpu/armv7/start.o
,入口是_start,因此u-boot的入口代码在对应的源文件 arch/arm/cpu/armv7/start.
S中。
sd
以上是关于u-boot 启动流程分成哪两个阶段?分别要完成哪些功能的主要内容,如果未能解决你的问题,请参考以下文章