- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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
您可能关注的文档
最近下载
- 4郭永康光的干涉-14.ppt VIP
- 中职教育一年级上学期英语《We Are Friends》课件.pptx
- 4郭永康光的干涉-11.ppt VIP
- 《危险化学品目录(2015版)》(2022年调整)-标注为爆炸物的化学品.pdf VIP
- 湘南学院2021-2022学年第2学期《高等数学(下)》期末试卷(B卷)附标准答案.pdf
- 人美版小学四年级上册美术教案.pdf VIP
- 人教PEP版五年级上册英语Unit 2 My week单元整体教学设计(教案).docx VIP
- 4郭永康 光干涉-7 .ppt VIP
- 小学语文新部编版一年级上册全册教案(2025秋新版).doc
- 湘南学院2022-2023学年第2学期《高等数学(下)》期末试卷(B卷)附标准答案.pdf
文档评论(0)