文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>skyeye下模拟uboot的nand启动(一星期的成果啊!疯..

skyeye下模拟uboot的nand启动(一星期的成果啊!疯..

时间:2009-08-21  来源:天海一线

环境:fedora 9(内核版本2.6.24.4),arm-linux-gcc-2.95.3,u-boot-1.1.4,skyeye-1.2.6rc1,s3c2410A

1、编译u-boot

首先修复u-boot的几个BUG:

(1)arm-linux-gcc-2.95.4的安装位置必须在/usr/local/arm/2.95.3(可做符号链接),否则会出现cpp0错误;
(2)hello_world.srec错误(make 3.81的bug引起)
可以简单的改一个目录 examples下的Makefile来解决。
将原文件的第58行开始的内容:
SREC    = hello_world.srec
BIN     = hello_world.bin hello_world
改为:
SREC    = hello_world.o
BIN     = hello_world.o hello_world
即可重新编译通过了。
(3)cc1: error: invalid option `abi=apcs-gnu'
    出错的文件是/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 smdk2410_config
make顺利通过编译。

(4)增加nand支持:
        参见http://blog.csdn.net/zblue78/archive/2008/02/26/2121871.aspx,感谢作者给我们提供的这么宝贵的资料。

2、安装skyeye(略)

3、skyeye的使用方法说明(网上资料太少了,只有错误,错误,还是错误。。。)

(1)对板子资源的情况进行统计:
我的是:Nandflash 64M,SDRAM 64M

(2)明确几点:(非常重要,害我太深!!!!!!!!!!!!!)

        nand.dump文件必须自己生成,直接使用skyeye,执行过程中发现没有 nand.dump会自动生成,但是这个事不能用的,用出现很多bus read error或mem read error,使用mknandflashdump.c,生成a.out(gcc mknandflashdump.c),使用./a.out u-boot.bin nand.dump 0x0即可。

        只能使用u-boot.bin,不能使用u-boot(至少我使用时会出现 N多错误);上面操作的意义是虚拟nandflash,因为nandflash不占有寻址空间(只是前4K缓冲到0x0,然后只能通过时序定位了),经过 操作之后我们的nandflash中(即nand.dump中)才能有我们的u-boot.bin程序,现在skyeye还不能自动的这样操作,它只是分 配了空间,没有填充内容。

         skyeye的书写:
第一段:首4K自己,用于u-boot从nand拷贝到SDRAM,file=u-boot.bin, boot=yes(从0地址启动)--》大于4K亦可;
第二段:0x30000000-0x33ffffff(64M SDRAM)-------->我们的程序实际运行的空间。

4、模拟运行:

skyeye -c skyeye.config,正常启动。

下一步,启动内核,添加tftpboot,ping命令。

相关阅读 更多 +
排行榜 更多 +
边境检察最后区域手机版下载

边境检察最后区域手机版下载

角色扮演 下载
酋长你别跑手游下载

酋长你别跑手游下载

休闲益智 下载
心动漫画app下载官方版

心动漫画app下载官方版

浏览阅读 下载