uboot移植记录之1.docVIP

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

uboot移植记录之一 ? uboot整个移植过程我们可以分为三个阶段: 一,移植可以从Nor flash启动的uboot 这个阶段是移植一个最简单的uboot,可以烧在Nor flash内运行. 二,移植支持Nand flash驱动的uboot 加入Nand flash驱动的支持,可以在uboot命令行下操作Nand flash.但还未能从Nand flash启动,只能在Nor flash内运行. 三,移植可以从Nor flash启动的uboot 可以烧录在Nand flash,并设置从Nand flash启动运行uboot. 分三个阶段进行移植,可以对整个uboot的移植过程及原理更加清晰明了,同时降低了发现问题时解决问题的困难度和解决范围. ? 首先介绍移植可以从Nor flash启动的uboot. 这个阶段相对简单一点,是移植一个最简单的uboot,可以烧在Nor flash内运行.不需要修改太多的东西。步骤如下: 测试一下默认的smdk2410_config配置能否在你的板子上正常运行 1.编译uboot1.1.4 #make smdk2410_config #make ARCH=arm 注:编译针对arm的平台时,uboot默认使用arm-linux-gcc编译,若交叉编译器名字不一样,需要自行在Makefile里修改。 ? 会出现两个错误. 错误信息一: cc1: Invalid option `abi=apcs-gnu   make[1]: *** [hello_world.o] Error 1   make[1]: Leaving directory `/root/u-boot-1.1.4/examples   make: *** [examples] Error 2   解决办法: 出错的文件是/cpu/arm920t/下的config.mk: 将   PLATform_CPPFLAGS +=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) 改成:   PLATform_CPPFLAGS +=$(call cc-option,-mapcs-32,$(call cc-option,-mabi=apcs-gnu,)) ? 错误信息二: make[1]: *** No rule to make target `hello_world.srec, needed by `all.? Stop. make[1]: Leaving directory `/work/src/u-boot-1.1.4/examples 解决方法: 打开 examples/Makefile?? 把example文件夹下的Makefile中的 第126行 %.srec: % 改成 %.srec: %.o 第129行的 %.bin: % 改成 %.bin: %.o ? 2.若编译成功,则会在uboot源码下产生u-boot.bin文件。将这个文件烧录到nor flash。 注意: 默认u-boot的smdk2410_config是不支持nandflash的,只能在nor flash内运行,所以只能烧录到nor flash内运行。如果烧录到nandflash下是不能运行的。 ? 3.参考开发板资料,设置好跳线,从nor flash启动。 启动信息如下: U-Boot 1.1.4 (Dec 30 2007 - 23:25:02) U-Boot code: 33F80000 - 33F9696C BSS: - 33F9AC58 RAM Configuration: Bank #0:64 MB *** Warning - bad CRC, using default environment Flash: 512 kB In: serial Out: serial Err: serial ? 发现有3个问题: 1) 启动时开发板蜂鸣器一直在响。 怀疑是我的开发板蜂鸣器对应的GPIO口和smdk2410的GPIO口地址不对应,从而导致启动时误赋了值,一直在响。 2) Warning - bad CRC, using default environment 这个问题是因为第一次使用uboot时没有设置过变量,设置保存一下就不会在出现了。 3) Flash: 512 kB 我的板子Nor flash是1MB的,而这里显示512KB ? 4.下面进行uboot源码修改 这里主要根据开发板硬件的实际情况,基于smdk2410的源码进行修改(主要是配置文件include/configs/smdk2410.h),并解决如上碰到的问题1和3。 若对硬件板子的情况不是太了解,可以参考2410的data

文档评论(0)

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

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

1亿VIP精品文档

相关文档