u-boot工作流程
启动模式(自主模式)和下载模式(开发模式)
uboot启动流程:
开发板上电后,执行u-boot的第一条指令,然后顺序执行u-boot启动参数。看一
下/board/smdk2410/u-boot.lds这个链接脚本,可以知道目标程序的各部分链接顺
序。第一个要链接的是/cpu/arm920t/start.o,那么u-boot的入口指令一定位于
start.s这个程序中。下面分两阶段介绍启动流程:
第一阶段
1 /cpu/arm920t/start.s
这个汇编程序是u-boot的入口程序,开头就是复位向量的代码
复位启动子程序
设置cpu为SVC32模式
关闭看门狗
重新定位代码
初始化堆栈
跳转到start_armboot(c)函数入口
第二阶段
2 lib_arm/board.c
start_armboot是u-boot执行的第一个c语言函数,完成系统初始化工作,进入主循
环,处理用户输入的命令。
3 init_sequence[]
init_sequence[]数组保存着基本的初始化函数指针
/*************************/
Author: Daniel.G
QQ: 448146607
/*************************/