Chinaunix首页 | 论坛 | 博客
  • 博客访问: 353523
  • 博文数量: 90
  • 博客积分: 2017
  • 博客等级: 大尉
  • 技术积分: 615
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-19 08:10
文章分类

全部博文(90)

文章存档

2012年(4)

2011年(74)

2010年(11)

2009年(1)

分类: 嵌入式

2011-05-17 13:46:39

根据实验,已修改补充原作者漏掉的部分。
闲来无事,给自己的开发板移植一下新的U-boot 最新的为2011.03
步骤1
在移植中首先用
tar -jxvf u-boot-latest.tar.bz2
解压到自己的目录下
步骤2
然后进入u-boot-2011.03文件夹
cd u-boot-2011.03/board/samsung/
建立smdk6410文件夹
mkdir smdk6410    
复制6400文件夹下的所有代码到6410下
cp -rf smdk6400/* smdk6410
进入smdk6410
cd smdk6410
将smdk6400_and_spl.c和smdk6400.c改为
smdk6410_and_spl.c和smdk6410.c
打开smdk6410中的Makefile
将COBJS-y    := smdk6400.o
改为COBJS-y    := smdk6410.o
打开board/samsung/smdk6410/u-boot-nand.lds
在.bss __rel_dyn_start (OVERLAY) : {
前加上 _end = .;
这个是Uboot中的一个bug,会导致undefined reference to `_end'
还要修改后面步骤4中nand_spl/board/samsung/smdk6410文件夹的u-boot.lds
回U-boot根目录 进入include/configs/
复制smdk6400.h 并改名为smdk6410.h
步骤3
打开U-boot根目录下的Makefile
首先指定交叉编译工具
找到CROSS_COMPILE?=在等号后面添加arm-linux-
找到smdk6400_noUSB_config \ 
将有关6400的所有行复制并将其中的6400替换为6410
smdk6410_noUSB_config    \
smdk6410_config    :    unconfig
    @mkdir -p $(obj)include $(obj)board/samsung/smdk6410
    @mkdir -p $(obj)nand_spl/board/samsung/smdk6410
    @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
    @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
    @if [ -z "$(findstring smdk6410_noUSB_config,$@)" ]; then            \
        echo "RAM_TEXT = 0x57e00000" >> $(obj)board/samsung/smdk6410/config.tmp;\
    else                                        \
        echo "RAM_TEXT = 0xc7e00000" >> $(obj)board/samsung/smdk6410/config.tmp;\
    fi
    @$(MKCONFIG) smdk6410 arm arm1176 smdk6410 samsung s3c64xx
    @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
步骤4
从U-boot根目录,进入nand_spl/board/samsung/
cd nand_spl/board/samsung/
新建目录smdk6410并将smdk6400下的所有文件复制到smdk6410中
mkdir smdk6410
cp -ar smdk6400/* smdk6410/
进入nand_spl/board/samsung/smdk6410文件夹
打开u-boot.lds
在.bss __rel_dyn_start (OVERLAY) : {
前加上 _end = .;
还要修改nand_spl/board/samsung/smdk6410下的文件名,把6400相关的改成6410
步骤5
再修改u-boot根目录进入nand_spl/board/samsung/smdk6410/Makefile中的,把6400改成相关的6410,与第四步修改的文件匹配。
步骤6
然后make smdk6410_config
make编译通过,呵呵
 
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lcwyylcwyy/archive/2011/05/07/6401628.aspx
阅读(1724) | 评论(0) | 转发(0) |
0

上一篇:Bootloader之uBoot简介

下一篇:shell 调试

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