- 1、本文档共69页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
U-boot引导加载程序Bootloader源代码分析与移植
U-boot引导加载程序(Bootloader)源代码分析与移植
目 录
第一章 绪论 3
1.1 U-boot 简介 3
1.2 U-boot 源码树 4
1.3 U-boot 支持的主要功能 5
第二章 U-boot源代码详细分析 6
2.1 U-boot的启动流程 6
2.1.1 第一阶段(Stage 1) 6
2.1.2 第二阶段(Stage 2) 9
2.2 U-boot 的初始化 13
2.2.1 私有数据 global_data 13
2.2.2 初始化序列init_sequence 14
2.2.3 NAND Flash 初始化 20
2.2.4 DataFlash 初始化 22
2.2.5 环境变量重定位 23
2.2.6 初始化设备 25
2.2.7 控制台初始化 27
2.2.8 单板后期初始化 30
2.3命令处理 33
2.3.1 命令数据结构 33
2.3.2 命令查找 35
2.3.3 主循环 35
2.4 Linux 的引导 42
2.4.1 映象格式 42
2.4.2 linux 引导 42
2.4.3 linux 的内核参数传递 52
第三章 U-boot 在S3C2410 上的移植分析 58
3. 1 对ARM-920T内核的支持 58
3. 2 配置自己的开发板 58
3. 3 实现网卡的驱动程序 60
3.4 从NAND Flash启动 61
3.4.1 修改cpu/arm920t/start.s 添加NAND Flash启动跳转代码 61
3.4.2 添加从NAND Flash启动代码 63
3.4.3 添加上述代码中引用的宏定义 65
3. 5 修改Makefile 文件 65
3.6 搭建编译环境 66
3. 7 生成目标文件并进行测试 67
3. 8 测试 69
第一章 绪论
1.1 U-boot 简介
U-Boot,全称Universal Boot Loader,是遵循GPL条款的开放源码项目。从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编译形式与Linux内核很相似,事实上,不少U-Boot源码就是相应的Linux内核源程序的简化,尤其是一些设备的驱动程序,这从U-Boot源码的注释中能体现这一点。但是U-Boot不仅仅支持嵌入式Linux系统的引导,当前,它还支持NetBSD, VxWorks, QNX, RTEMS, ARTOS, LynxOS嵌入式操作系统。其目前要支持的目标操作系统是OpenBSD, NetBSD, FreeBSD,4.4BSD, Linux, SVR4, Esix, Solaris, Irix, SCO, Dell, NCR, VxWorks, LynxOS, pSOS, QNX, RTEMS, ARTOS。这是U-Boot中Universal的一层含义,另外一层含义则是U-Boot除了支持PowerPC系列的处理器外,还能支持MIPS、x86、ARM、NIOS、XScale等诸多常用系列的处理器。这两个特点正是U-Boot项目的开发目标,即支持尽可能多的嵌入式处理器和嵌入式操作系统。就目前来看,U-Boot对PowerPC系列处理器支持最为丰富,对Linux的支持最完善。其它系列的处理器和操作系统基本是在2002年11月PPCBOOT改名为U-Boot后逐步扩充的。从PPCBOOT向U-Boot的顺利过渡,很大程度上归功于U-Boot的维护人德国DENX软件工程中心Wolfgang Denk[以下简称W.D]本人精湛专业水平和持着不懈的努力。当前,U-Boot项目正在他的领军之下,众多有志于开放源码BOOT LOADER移植工作的嵌入式开发人员正如火如荼地将各个不同系列嵌入式处理器的移植工作不断展开和深入,以支持更多的嵌入式操作系统的装载与引导。 U-Boot的:
开放源码; 支持多种嵌入式操作系统内核,如Linux、NetBSD, VxWorks, QNX, RTEMS, ARTOS, LynxOS; 支持多个处理器系列,如PowerPC、ARM、x86、MIPS、XScale; 较高的可靠性和稳定性; 高度灵活的功能设置,适合U-Boot调试、操作系统不同引导要求、产品发布等; 丰富的设备驱动源码,如串口、以太网、SDRAM、FLASH、LCD、NVRAM、EEPROM、RTC、键盘等; 较为丰富的开发调试文档与强大的网络技术支持;
从根目录树中可以看出,U-boot 源代码主要包含以下几个部分
board 目标板相关文件,主要包含SDRAM、FLASH驱动;
common 独立于处理器体系结构的通用代码,如内存
您可能关注的文档
- Profibus与Danfoss变频器通讯.doc
- PR视频特效及视频转场特效中英文对照表.doc
- PubMed检索完全攻略----好东西_吐血狂顶.doc
- Python中的多进程与多线程一.doc
- QFZD0001S-2013熏烤熟肉制品.doc
- qxx-1561新建住宅小区的用电负荷计算.doc
- RCD钳位电路分析及参数设计.doc
- RFC1994PPP挑战握手身份验证协议.doc
- RHCSA真题.doc
- RDA585X开发板及量产工具80205使用说明20140317.doc
- 2-红河州建筑施工安全生产标准化工地复核评分表(2022年修改版).docx
- 6.锡通项目2018年下半年工作会汇报材料(2018.7.9).docx
- 2018道路工程知识点汇总(新版).docx
- 附件3:月度生产例会安全汇报资料-站台门项目部.docx
- 附件2:广东建工集团2018年度科技成果汇总表.DOC
- 马武停车区、三汇停车区停车位管理系统,0#台账缺量.doc
- 攀成钢委办发〔2015〕19号(党风廉政建设责任考核与追究办法).doc
- 1-红河州建筑工程质量管理标准化复核评分表(2022年修改版).docx
- 中交第三公路工程局第四工程分公司项目经济合同结算管理办法(修订).doc
- 厂站安全操作规程汇编.doc
最近下载
- 2025入党积极分子考试试卷(含答案).docx VIP
- 空调维修保养服务方案(技术方案).pdf
- 中医基础理论(暨南大学)中国大学MOOC慕课章节测验答案(课程ID:1206450825).pdf
- 高级卫生专业技术资格考试慢性非传染性疾病控制(088)(正高级)试卷及解答参考.docx VIP
- 大学英语四级考试高频词汇1500(打印版).pdf VIP
- 2025年医学分析-心脏再同步化治疗(CRT).pptx VIP
- 慢性非传染性疾病控制(088)(副高级)高级卫生专业技术资格考试2024年复习试题及解答参考.pdf VIP
- 我国未成年人专门矫治教育制度研究.docx VIP
- 北京市属高校国外访问学者英文简历模板.doc
- 工厂电工安全培训.pptx VIP
文档评论(0)