Chinaunix首页 | 论坛 | 博客
  • 博客访问: 30905
  • 博文数量: 13
  • 博客积分: 1411
  • 博客等级: 上尉
  • 技术积分: 140
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-24 14:52
文章分类

全部博文(13)

文章存档

2011年(1)

2009年(9)

2008年(3)

我的朋友
最近访客

分类: LINUX

2008-03-24 16:44:06

u-boot1.5移植

系统环境:
   
windows XP pro2002 pack2
    VMware workstation 5.5.2
    linux 9.0(全安装)

编译环境:
   
cross-2.95.3

原文件
   

    下载地址:

移植过程:
   
1、下载cross-2.95.3,安装cross-2.95.3到/usr/local/arm/2.95.3/
       在命令符下:
       #/usr/local/arm/2.95.3/bin/arm-linux-gcc -v

       能够显示arm-linux-gcc 版本

    2、下载
,并解包
   
    3、编辑u-boot根目录下的Makefile文件
         

include $(TOPDIR)/config.mk
CROSS_COMPILE=/usr/local/arm/2.95.3/bin/arm-linux-
ifndef CROSS_COMPILE



smdk2410_config    :    unconfig
    @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0
    
fs2410_config    :    unconfig
    @$(MKCONFIG) $(@:_config=) arm arm920t fs2410 NULL s3c24x0

SX1_config :        unconfig
    @$(MKCONFIG) $(@:_config=) arm arm925t sx1


    4、复制相关的文件

cp -r board/smdk2410/ board/fs2410
mv board/fs2410/smdk2410.c board/fs2410/fs2410.c
cp include/configs/smdk2410.h include/configs/fs2410.h

    5、修改board/fs2410/Makefile

include $(TOPDIR)/config.mk

LIB    = $(obj)lib$(BOARD).a

COBJS    := fs2410.o flash.o
SOBJS    := lowlevel_init.o


    6、make 测试一下

    make fs2410_config
    make all ARCH=arm

    一般都能够编译通过,在根目录下生成u-boot.bin、u-boot、u-boot.map等文件,其中u-boot.bin为我们需要烧写进目标板的文件。


    7、可能错误 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,就OK了。

    8、skyeye仿真

    已经编译成u-boot.bin文件可以使用skyeye仿真。
    skyeye.conf配置文件


# skyeye config file for S3C2410X

cpu: arm920t
mach: s3c2410x

# physical memory
mem_bank: map=M, type=R, addr=0x00000000, size=0x00400000, file=./u-boot.bin, boot=yes
mem_bank: map=M, type=R, addr=0x00000000, size=0x00c00000
mem_bank: map=M, type=RW, addr=0x30000000, size=0x00800000
mem_bank: map=M, type=RW, addr=0x30800000, size=0x00200000 #, file=./ramdisk.gz
mem_bank: map=M, type=RW, addr=0x32000000, size=0x02000000 #, file=./uImage


# all peripherals I/O mapping area
mem_bank: map=I, type=RW, addr=0x48000000, size=0x20000000
mem_bank: map=I, type=RW, addr=0x19000300, size=0x00000020
#net: type=cs8900a, base=0x19000300, size=0x20,int=9, mac=0:4:3:2:1:f, ethmod=tuntap, hostip=10.0.0.1
#nandflash: type=s3c2410x,name=K9F1208U0B,dump=./nand.dump
#lcd: type=s3c2410x, mod=gtk,state=on
#dbct:state=on


将上述的skyeye.conf 、u-boot.bin文件放在同一个文件夹内
然后输入skyeye命令
阅读(630) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:u-boot实现USB功能

给主人留下些什么吧!~~