测试文档
这是一个测试文档,用于填充一些简单的内容。
本次测试:文件夹嵌套。
学习并不是照着书死读,而是能者居之。
1初始阶段:上电 —> 设备(裸机)初始化 —> 启动设备 —> 镜像头 —> Uboot启动入口
2uboot启动第一阶段:初始化硬件-->复制uboot第二阶段代码至RAM-->设置堆栈-->清除BSS段-->跳转到第二阶段入口处
3uboot启动第二阶段:开发板相关初始化-->NAND/EMMC初始化-->环境变量初始化-->串口控制台初始化-->中断初始化-->网络初始化-->进入run_main_loop函数
4uboot加载内核阶段:硬件初始化与内存分配-->u-boot自身重定位-->内核加载到DDR-->传递环境变量与设备树-->搭建内核运行环境-->控制权交接,启动Linux内核-->Linux内核开始运行
uboot.lds到__start阶段:
编译后在uboot的解压目录的uboot.lds是uboot的连接脚本,是uboot的入口。
__image_copy_start -->0x87800000 这里是镜像文件的起始地址
.vectors -> 0x87800000 用于存放中断向量表
arch/arm/cpu/armv7/start.o start.c
__image_copy_end 结束镜像文件重定向。
一、reset函数
- bicne=bic+ne
- reset函数用于将处理器设置为SVC模式,并关闭FIQ和IRQ
- 设置中断向量
- 初始化CP15