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