6410移植uboot2012.04.01

来源:互联网 发布:手机淘宝店如何装修 编辑:程序博客网 时间:2024/06/03 15:27

1.下载u-boot源码,u-boot-2012.04.01.tar.bz2

2.解压,tar -jvxf u-boot-2012.04.01.tar.bz2

3.参考smdk6400底板修改配置适配6410,

Makefile添加以下内容:

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

修改CROSS_COMPILECROSS_COMPILE ?=arm-linux-

4.创建修改文件

(1)拷贝/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__

(2)进入/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>

(2)修改/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>

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

(4)复制/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>

(5)复制 /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 $@

5.编译u-boot

make smdk6410_configmake
0 0
原创粉丝点击