1、到ftp://ftp.denx.de/pub/u-boot/下载u-boot-2010.06.tar.bz2
2、解压 tar jxvf u-boot-2010.06.tar.bz2
3、进入uboot cd u-boot-2010.06
4、删减uboot
进入/board,留下samsung,其它全部删除
进入/arch,留下arm,其它全部删除
进入/arch/arm/cpu,留下arm920t,其它全部删除
5、建立自己的DEMO板
cd /board/samsung
mkdir smdk2440
cp -rf smdk2410/* smdk2440/ //将2410下所有的代码复制到2440下
cd smdk2440 //进入smdk2440目录
mv smdk2410.c smdk2440.c //将smdk2440下的smdk2410.c改名为smdk2440.c
然后在文件夹samsung里留下smdk2440,其它全部删除
cp include/configs/smdk2410.h include/configs/smdk2440.h //建立2440头文件
在include/configs下留下smdk2440.h, 其它全部删除
vi board/samsung/smdk2440/Makefile //修改smdk2440下Makefile的编译项,如下:
COBJS := smdk2440.o flash.o //修改第28行因在smdk2440下我们将smdk2410.c改名为smdk2440.c
6、修改u-boot跟目录下的Makefile文件。查找到smdk2410_config的地方,在他下面按照smdk2410_config的格式建立my2440_config的编译选项,另外还要指定交叉编译器,修改159行
CROSS_COMPILE ?= arm-linux- //指定交叉编译器为arm-linux-gcc
smdk2410_config : unconfig //2410编译选项格式
@$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 samsung s3c24x0
smdk2440_config : unconfig //修改蒂3054行,2440编译选项格式
@$(MKCONFIG) $(@:_config=) arm arm920t smdk2440 samsung s3c24x0
*说明:arm :CPU的架构(ARCH)
arm920t:CPU的类型
smdk2440 :对应在board目录下建立新的开发板项目的目录
samsung:新开发板项目目录的上级目录,如直接在board下建立新的开发板项目的目录,则这里就为NULL
s3c24x0:CPU型号
*注意:编译选项格式的第二行要用Tab键开始,否则编译会出错
7、测试编译新建的smdk2440开发板项目
在uboot根目录测试
make smdk2440_config
make即可在uboot根目录下生成bin文件
在uboot里,清除中间文件用命令make distclean
参考文章