ARM9-UBOOT移植学习笔记.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM9-UBOOT移植学习笔记

U-BOOT移植 【我所理解的u-boot移植】 其实u-boot类似于windows最底层的BIOS,为上层的一些指令、文件提供一个平台;由于在实际的嵌入式开发中,出于对硬件设备要求、存储空间大小、成本等的考虑就要在u-boot移植过程中进行适当的修改,以满足客服要求、达到较高的性能。 我所采用的LINUX操作系统是Ubuntu-10.04;u-boot的版本是1.1.6;编译器为:arm-linux-gcc-3.4.5; 【如何进行u-boot的移植】 step 1:下载gcc交叉编译器及u-boot gcc下载地址:/pub/gnu/gcc u-boot下载地址:/projects/u-boot/ step 2:配置编译环境 下面的操作基本就是结合“终端”来操作了;在“终端”(下简称ZD)中输入: arm-linux-gcc -v 回车; 此时一般都会显示:.....(内容已省略)找不到命令; 这说明了linux中缺少gcc交叉编译器开发环境的路径;这样应该手动添加路径。方法如下: 首先,在文件系统中新建一个文件夹,在ZD中输入:sudo mkdir /usr/local/arm 创建一个属于 arm 开发板的文件夹,存放gcc交叉编译器。 然后,在ZD中输入:sudo gedit /etc/bash.bashrc 进入bash.bashrc文件添加一个编译环境的入口路径: PATH=/usr/local/arm/3.4.5/bin:$PATH (这里提醒下,不要凭个人习惯随意的添加空 格,不然运行会通不过。) 其实这里就是gcc安装到/usr/local/arm路径下,保存;接着在ZD中: .(空格)/etc/bash.bashrc 重新运行该bash.bashrc文件。 再在ZD中:arm-linux-gcc -v 这样子不会再显示“找不到命令”了,而是会显示gcc版本号等相关信息。 小结:通过以上的几个步骤,就完成了编译环境的设定,即以后gcc交叉编译器就作为编译的环境(我是这样子理解的)。 step 3:修改u-boot的相关信息,生成标准的u-boot.bin文件 (1)修改u-boot-1.1.6文件夹下面的makefile文件 为了更加快捷的找到要修改的内容,可以在打开makefile文件之后,搜索cross找到 ifeq ($(ARCH),arm) CROSS COMPILE = arm-linux- endif 然后把第二行改成你gcc存放在文件系统中的位置(就是我们之前建立的那个arm文件夹),修改成: CROSS COMPILE = /usr/local/arm/gcc-3.4.5/bin/arm-linux- 这样就设置好了arm编译的环境入口。 接着,在ZD中:cd u-boot-1.1.6 进入到u-boot的文件夹中; 在ZD中:make clean 主要是将上次编译产生的临时文件清除掉; make at91rm9200dk_config (我所用的开发板是arm920t为内核的) make 编译; 小结:这样就实现了一个正规的arm920t内核开发板的 *.bin就形成了。 (但是由于我所使用的dk板是由导师自己设计制作的,相关的flash、sdram等信息还需要修改。这样子的话我还需要继续往下走,而且一般的dk板基本都是参照Atmel公司衍生出来的,所以一般都需要针对标准的dk板修改相关信息)。 接下来,就要根据自身的DK板来修改相关信息,生成相配套的u-boot.bin step 4:修改dk板flash、sdram的相关信息 (修改u-boot-1.1.6/include/configs下的at91rm9200dk.h) 根据自身的DK板,将相关的自定义语句改成如下所示: #define CONFIG_HAS_DATAFLASH 0 /*noneed dataflash,我们根本没有用到dataflash,所以此处为0*/ #define SDRC_CR_VAL 0x2188c154 // set up the SDRAM #define PHYS_SDRAM_SIZE 0x1000000 /* 用到的是两片 HY57V641620HGLT-H 的芯片,总共 16M */ #define CFG_MAX_FLASH_SECT 2048 //max_section 一共有2048个块 #define PHYS_FLASH_SIZE 0

文档评论(0)

wuailuo + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档