QQ在线咨询
售前咨询热线
15821572819
售后咨询热线
15821572819

Uboot之一 ~~~ 板级的移植


刚开始做Uboot的移植,发现移植的任务量也是很大的。所以把每个主要的阶段分成一块,希望自己能坚持着写完。

实验环境:win7 + Ubuntu10.04

交叉编译器:arm-linux-gcc-4.3.2

开发板:TQ2440

 

首先,分析Uboot已经支持的开发板,选择出于硬件配置最接近的开发板。首选MCU(微控制单元,micor control unit,集成了外围器件)相同的开发板,如果没有相同的,则选择MPU(微处理单元,micor processor unit)相同的。

接下来,就是修改Uboot当中与开发板最相近的文件:

1:# cd /u-boot-2010.06

      #vi Makefile

a.添加编译器

# set default to nothing for native builds
ifeq ($(HOSTARCH),$(ARCH))
CROSS_COMPILE = arm-linux-
endif

b.参照已有的:

smdk2410_config : unconfig
         @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 samsung s3c24x0

修改2440为:

smdk2440_config : unconfig
         @$(MKCONFIG) $(@:_config=) arm arm920t smdk2440 samsung s3c24x0

2:在board目录下创建一个属于新开发板的目录,并修改此目录下的Makefile

    # mkdir  -p /board/smdk2440

    #cp -rf  board/samsung/smdk2410/ board/samsung/smdk2440

    #cd /board/samsung/smdk2440

    #mv smdk2410.c smdk2440.c

    #vi Makefile

#COBJS  := smdk2410.o flash.o    注释掉已有的关于2410的信息

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

3:为开发板添加新的配置文件,先复制,后修改。

    # cd /u-boot-2010.06

    #cp include/configs/smdk2410.h include/configs/smdk2440.h

4:编译自己的板子

    # make smdk2440 _config

    #make

当出现下面的内容时,就是正确了

rch/arm/lib/eabi_compat.o -L /usr/local/arm/4.3.2/bin/../lib/gcc/arm-none-linux-gnueabi/4.3.2/armv4t -lgcc -Map u-boot.map -o u-boot
arm-linux-objcopy -O srec u-boot u-boot.srec
arm-linux-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin




注:本文转载自csdn,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除。
上一篇 下一篇

分享