u-boot的移植: (版本 2010 目标:生成s3c2451下的u-boot)
根据相似的开发板来配置新的开发板的u-boot
移植目的:reuse实现代码复用
移植原因:存在差异
移植方法:
- 架构 选择arm版本,解决CPU适配问题
- 片内外设 即SOC(system on chip) 芯片级支持
- 板级支持 配置DRAM FLASH
- 产品支持(扩展)
Mini2451与smdk2410类似,下面是具体操作
1. 在根目录Makefile中创建配置目标:
mini2451_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm926ejs mini2451 samsung s3c24x0
注释:mini2451_config配置入口
arm是处理器 arm926ejs是具体架构 samsung s3c24x0
2. 在Makefile中修改编译器和目标架构
ifeq(arm,$(ARCH)) //如果架构是arm,则使用以下编译器
CROSS_COMPILE =arm-linux- //编译器的名称要与自己的编译器一致
endif
3. 添加新的soc支持
cparch/arm/cpu/arm920t/s3c24x0 arch/arm/cpu/arm926ejs/ -a
注释:添加芯片级支持,mini2451和s3c24x0最像
4. 添加板级支持
cd board/samsung
cp smdk2410 mini2451 -a
cd mini2451
mv smdk2410.cmini2451.c
修改当前目录下Makefile
COBJS := mini2451.oflash.o
5. 添加配置头文件
cd u-boot-2010.06
cpinclude/configs/smdk2410.h include/configs/mini2451.h
6. 配置及编译
make distclean //清除之前编译留下的东西
make mini2451_config //生成相关配置
make mini2451_config //配置
make
如果在源码根目录产生u-boot.bin,说明走通配置编译流程。