您的位置:首页 > 其它

ok6410-uboot2012.10移植--环境搭建

2014-02-24 23:23 369 查看
一、下载uboot源码
下载地址:ftp://ftp.denx.de/pub/u-boot/,下载uboot2012.10源码

二、解压源码
tar -xvf u-boot-2012.10.tar.bz2

三、修改makefile

1、添加以下内容

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

2、修改CROSS_COMPILE为CROSS_COMPILE ?=arm-linux-

四、创建文件并初步修改

1、复制/board/samsung/smdk6400文件夹为/board/samsung/smdk6410,
将smdk6400.c改为smdk6410.c,将smdk6400_nand_spl.c改为smdk6410_nand_spl.c
修改makefile中的COBJS-y
:= smdk6400.o为COBJS-y := smdk6410.o
修改lowlevel_init.S中的#include <asm/arch/s3c6400.h>为#include <asm/arch/s3c6410.h>
修改smdk6410.c中的#include <asm/arch/s3c6400.h>为#include <asm/arch/s3c6410.h>

2、复制/nand_spl/board/samsung/smdk6400文件夹为/nand_spl/board/samsung/smdk6410
修改makefile中的
COBJS = nand_boot.o nand_ecc.o s3c64xx.o smdk6400_nand_spl.o nand_base.o
为COBJS
= nand_boot.o nand_ecc.o s3c64xx.o smdk6410_nand_spl.o nand_base.o
@ln -s $(TOPDIR)/board/samsung/smdk6400/lowlevel_init.S $@
改为@ln -s $(TOPDIR)/board/samsung/smdk6410/lowlevel_init.S $@
$(obj)smdk6400_nand_spl.c:
改为$(obj)smdk6410_nand_spl.c:
@ln -s $(TOPDIR)/board/samsung/smdk6400/smdk6400_nand_spl.c $@
改为@ln -s $(TOPDIR)/board/samsung/smdk6410/smdk6410_nand_spl.c $@

3、复制/include/configs/smdk6400.h为/include/configs/smdk6410.h
#define CONFIG_S3C6400改为#define CONFIG_S3C6410
#define CONFIG_SMDK6400改为#define CONFIG_SMDK6410

4、复制/arch/arm/include/asm/arch-s3c64xx/s3c6400.h为
/arch/arm/include/asm/arch-s3c64xx/s3c6410.h
改#ifndef __S3C6400_H__
#define __S3C6400_H__
为#ifndef __S3C6410_H__
#define __S3C6410_H__

5、进入/arch/arm/cpu/arm1176/s3c64xx
修改makefile中的COBJS-$(CONFIG_S3C6400)为COBJS-$(CONFIG_S3C6410)
修改cpu_init.S中的#include <asm/arch/s3c6400.h>为#include <asm/arch/s3c6410.h>
修改reset.S中的#include <asm/arch/s3c6400.h>为#include <asm/arch/s3c6410.h>
修改speed.c中的#include <asm/arch/s3c6400.h>为#include <asm/arch/s3c6410.h>
修改timer.c中的#include <asm/arch/s3c6400.h>为#include <asm/arch/s3c6410.h>

6、修改/drivers/mtd/nand/s3c64xx.c中的#include <asm/arch/s3c6400.h>
为#include <asm/arch/s3c6410.h>
修改/drivers/serial/s3c64xx.c中的#include <asm/arch/s3c6400.h>
为#include <asm/arch/s3c6410.h>

五、编译uboot
make smdk6410_config
make
显示cat nand_spl/u-boot-spl-16k.bin u-boot.bin > u-boot-nand.bin编译编译成功
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  移植 uboot