uboot版本:u-boot-2010.09 交叉编译工具链:arm-linux-gcc 4.4.3

1.修改顶层Makefile

   a.指定交叉编译工具链

//找到 CROSS_COMPILE 位置,指定交叉编译工具链
# set default to nothing for native builds
ifeq ($(HOSTARCH),$(ARCH))
CROSS_COMPILE ?=arm-linux-
export CROSS_COMPILE
endif

    b.按照smdk6400_config的格式建立th6410_config的编译选

//找到smdk6400_noUSB_config 位置 在下面添加:
tiny6410_noUSB_config   \
tiny6410_config :   unconfig
    @mkdir -p $(obj)include $(obj)board/samsung/tiny6410
    @mkdir -p $(obj)nand_spl/board/samsung/tiny6410
    @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
    @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
    @if [ -z "$(findstring tiny6410_noUSB_config,$@)" ]; then           \
        echo "RAM_TEXT = 0x57e00000" >> $(obj)board/samsung/tiny6410/config.tmp;\
    else                                        \
        echo "RAM_TEXT = 0xc7e00000" >> $(obj)board/samsung/tiny6410/config.tmp;\
    fi
    @$(MKCONFIG) tiny6410 arm arm1176 tiny6400 samsung s3c64xx
    @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk

2.准备好tiny6410工作目录

   a.

//解压源码
#tar -jxvf u-boot-2010.09.tar.bz2
//进入目录
#cd u-boot-2010.09/board/samsung/
//创建tiny6410目录
#mkdir tiny6410
//以smdk6400为模板复制到我们的tiny6410目录内
#cp smdk6400/* tiny6410/
//进入tiny6410目录
#cd tiny6410
//改名
#mv smdk6400.c tiny6410.c
//修改tiny6410下Makefile的编译项,如下:
COBJS    := tiny6410.o

   b.

#cd nand_spl/board/samsung/
#mkdir tiny6410
#cp smdk6400/* tiny6410/


3.测试编译新建的tiny6410 uboot项目

#make tiny6410_config
#make