为了构建一个完整的嵌入式linux平台,从移植u-boot开始 以后将陆续的一直kernel、busybox、BOA(webserver)、yaffs、qtopia(GUI)等。 1、u-boot-1.1.6移植
参考:http://blog.chinaunix.net/u2/89327/article_103628.html
u-boot-1.1.6.tar.bz2
(1)、建立自己QQ2440开发板的配置
1)# cp –r board/smdk2410 board/ QQ2440
2)# cp include/configs/smdk2410.h include/configs/QQ2440.h
(2)、修改顶层Makefile
QQ2440_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t QQ2440 NULL s3c24x0
(ARCH=arm、CPU= arm920t、BOARD=QQ2440、VENDER=NULL、SOC=s3c24x0)
CROSS_COMPILE = (修改为实际的arm-linux-的路径)
(3)、执行脚本mkconfig后执行的操作
ln –s asm-arm asm 创建符号链接
ln –s arch-s3c24x0 asm-arm/arch
ln –s proc-armv asm-arm/proc
include/config.mk 创建文件
include/config.h
(4)、根据需要修改include/configs/s3c2410.h
(5) 修改board/ QQ2440/Makefile
将: OBJS := smdk2410.o flash.o 改为:OBJS := QQ2440.o flash.o (6)依照开发板的内存地址分配情况修改board/QQ2440/lowlevel_init.S文件
(7)make SKY2440_config
(8)make all
移植修改的地方截图
Beyond Compare 3 是个文件夹比较的好工具
Source Insight 3.5 是个看源代码的好工具
通过Beyond Compare 3 找出修改的地方
|