ARM上电启动及Uboot代码分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
文件编号:01 版本号:1.0
ARM 上电启动及 Uboot 代码分析
部 门: 作 者: 联系方式: ຫໍສະໝຸດ 期:2013.03.08
文件修订记录
时间
作者
主要修订内容
目录
目录
文件修订记录 ...............................................................................................................................1 目录 ...............................................................................................................................................2 摘要 ...............................................................................................................................................4 1 ARM 上电取第一条指令流程 .................................................................................................5 1.1 上电后的第一条指令在哪里? ...........................................................................................5 1.1.1 norflash 和 nandflash 的异同 .............................................................................................5 2 Uboot.lds 链接脚本分析 ..........................................................................................................7 2.1 为什么要分析 uboot 链接脚本? ........................................................................................7 2.2 连接代码具体分析 ...............................................................................................................7 3 Uboot 中 start.S 文件分析 .......................................................................................................9 3.1 start.S 详解 .............................................................................................................................9 3.1.1 _start ....................................................................................................................................9 3.1.2 reset .....................................................................................................................................9 3.1.3 cpu_init_cp15 ....................................................................................................................11 3.1.4 cpu_init_crit ......................................................................................................................12 3.1.5 lowlevel_init......................................................................................................................13 3.1.6 s_init ..................................................................................................................................14 3.1.7 call_board_init_f ...............................................................................................................15 3.1.8 board_init_f .......................................................................................................................15 3.1.9 relocate_code.....................................................................................................................16 3.1.10 clear_bss ..........................................................................................................................17 3.1.11 jump_2_ram.....................................................................................................................17 3.2 本章小结 .............................................................................................................................18 4 板级初始化及跳入 Linux 内核执行 ....................................................................................19 4.1 board_init_r...........................................................................................................................19 4.1.1 三级标题 ............................................................................................ 错误!未定义书签。 4.2 本章小结 ............................................................................................... 错误!未定义书签。 5 Uboot 异常处理 ......................................................................................................................20 5.1 Uboot 异常向量表 ...............................................................................................................20 5.1.1 异常处理入口函数 ..........................................................................................................20 5.1.2 异常处理函数跳转 ..........................................................................................................21 5.1.3 异常真正处理函数 ..........................................................................................................22 5.2 本章总结 .............................................................................................................................24
目录
结论 .............................................................................................................................................25 参考文献 .....................................................................................................................................26 问题总结及解答 .........................................................................................................................27 附录 .............................................................................................................................................29
ARM 上电启动及 Uboot 代码分析
部 门: 作 者: 联系方式: ຫໍສະໝຸດ 期:2013.03.08
文件修订记录
时间
作者
主要修订内容
目录
目录
文件修订记录 ...............................................................................................................................1 目录 ...............................................................................................................................................2 摘要 ...............................................................................................................................................4 1 ARM 上电取第一条指令流程 .................................................................................................5 1.1 上电后的第一条指令在哪里? ...........................................................................................5 1.1.1 norflash 和 nandflash 的异同 .............................................................................................5 2 Uboot.lds 链接脚本分析 ..........................................................................................................7 2.1 为什么要分析 uboot 链接脚本? ........................................................................................7 2.2 连接代码具体分析 ...............................................................................................................7 3 Uboot 中 start.S 文件分析 .......................................................................................................9 3.1 start.S 详解 .............................................................................................................................9 3.1.1 _start ....................................................................................................................................9 3.1.2 reset .....................................................................................................................................9 3.1.3 cpu_init_cp15 ....................................................................................................................11 3.1.4 cpu_init_crit ......................................................................................................................12 3.1.5 lowlevel_init......................................................................................................................13 3.1.6 s_init ..................................................................................................................................14 3.1.7 call_board_init_f ...............................................................................................................15 3.1.8 board_init_f .......................................................................................................................15 3.1.9 relocate_code.....................................................................................................................16 3.1.10 clear_bss ..........................................................................................................................17 3.1.11 jump_2_ram.....................................................................................................................17 3.2 本章小结 .............................................................................................................................18 4 板级初始化及跳入 Linux 内核执行 ....................................................................................19 4.1 board_init_r...........................................................................................................................19 4.1.1 三级标题 ............................................................................................ 错误!未定义书签。 4.2 本章小结 ............................................................................................... 错误!未定义书签。 5 Uboot 异常处理 ......................................................................................................................20 5.1 Uboot 异常向量表 ...............................................................................................................20 5.1.1 异常处理入口函数 ..........................................................................................................20 5.1.2 异常处理函数跳转 ..........................................................................................................21 5.1.3 异常真正处理函数 ..........................................................................................................22 5.2 本章总结 .............................................................................................................................24
目录
结论 .............................................................................................................................................25 参考文献 .....................................................................................................................................26 问题总结及解答 .........................................................................................................................27 附录 .............................................................................................................................................29