u-boot工作流程
2012-10-12 19:58
162 查看
启动模式(自主模式)和下载模式(开发模式)
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
邮件: guodaijing.hhr@gmail.com
/*************************/
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
邮件: guodaijing.hhr@gmail.com
/*************************/
相关文章推荐
- [国嵌笔记][030][U-Boot工作流程分析]
- TQ2440 学习笔记—— 27、移植U-Boot【Bootloader 作用、工作流程】
- u-boot分析(二)----工作流程分析
- U-boot的工作流程分析-6410
- u-boot分析(二)-----工作流程分析
- [uboot] (番外篇)uboot串口&console&stdio设备工作流程
- 【嵌入式开发】 Bootloader 详解 ( 代码环境 | ARM 启动流程 | uboot 工作流程 | 架构设计)
- Part4_lesson3---U-Boot工作流程分析
- u-boot移植(二)---修改前工作:代码流程分析1
- 【嵌入式开发】 Bootloader 详解 ( 代码环境 | ARM 启动流程 | uboot 工作流程 | 架构设计)
- 二十一.UBOOT工作流程
- [uboot] (番外篇)uboot串口&console&stdio设备工作流程
- u-boot移植(四)---修改前工作:代码流程分析3---代码重定位
- 4000 [uboot] (番外篇)uboot dm-gpio使用方法以及工作流程
- [uboot] (番外篇)uboot dm-gpio使用方法以及工作流程
- 专题4-我是bootloader设计师-uboot工作流程分析+G-boot构架设计
- u-boot启动流程简图 --木草山人
- hadoop大致的工作流程
- git 工作流程
- 浅谈服务器被黑后的检查工作流程