网站大量收购独家精品文档,联系QQ:2885784924

u-boot移植教程.pdf

  1. 1、本文档共98页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
u-boot移植教程

u-boot 移植 U-boot 相关目录 Board 开发板相关目录 Common 通用文件(命令相关的文件) CPU 特定架构的目录 Doc U-boot 开发使用文档 Drivers U-boot 支持设备的驱动程序 Fs 所支持的系统 Include 系统支持的头文件 Lib-*** 库文件 Net 网络协议 Post 上电自检程序 Tools U-boot 自带的工具 第一阶段 U-boot 的启动初始化(cpu/arm920t/start.s) Start.s 是系统上电后读取的第一个代码,每个可执行的映像 Image,肯 定会给编译器一个入口,而且是“有且只有一个全局的入口”。我们可以把这个入 口放在flash 的0x0 地址上,然后让系统去找这个0x0 即可。 实际上,我们可以通过编写链接文件(lds)和mk 文件来告知编译器这些情况。 Lds 文件可以决定一个可执行代码的各个段的存储位置、入口地址等。这里来说 的Mk 文件,是在board/下对应开发板子目录中的mk 文件。它指定了TEXT_BASE 的地址。(我们用的2440 的芯片是从sdmk2410 改过来的,因此在board/smdk2410 的目录下寻找u-boot.lds) OUTPUT_FORMAT(elf32-littlearm, elf32-littlearm, elf32-littlearm) /*OUTPUT_FORMAT(elf32-arm, elf32-arm, elf32-arm)*/ OUTPUT_ARCH(arm) //定义生成文件的目标平台是arm ENTRY(_start) //定义程序的入口点是start SECTIONS { . = 0 . = ALIGN(4); //4 字节对齐 .text : { cpu/arm920t/start.o (.text) *(.text) } . = ALIGN(4); .rodata : { *(.rodata) } . = ALIGN(4); .data : { *(.data) } . = ALIGN(4); .got : { *(.got) } . = .; __u_boot_cmd_start = .; .u_boot_cmd : { *(.u_boot_cmd) } __u_boot_cmd_end = .; . = ALIGN(4); __bss_start = .; .bss : { *(.bss) } _end = .; } 1.1 中断向量表的设置 .globl _start _start: b reset ldr pc, _undefined_instruction ldr pc, _software_interrupt ldr pc, _prefetch_abort ldr pc, _data_abort ldr pc, _not_used ldr pc, _irq ldr pc, _fiq _undefined_instruction: .word undefined_instruction _software_int

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档