先解压u-boot-2010.03.tar.bz2
tar -jxvf u-boot-2010.03.tar.bz2
进入u-boot-2010.03目录,先精简代码删掉没用的
rm -r lib_av* lib_b* lib_i* lib_m* lib_n* lib_p* lib_s*
删除后
在主Makefile里面增加4412的配置信息如图
进入include目录下,标红框的11个目录
rm -r asm-av* asm-b* asm-i* asm-m* asm-n* asm-p* asm-s*
然后进入include/asm-arm目录,删除标红框目录
mv arch-s5pc1xx/ ../
rm -r arch-*
mv ../arch-s5pc1xx/ .
cp -fr arch-s5pc1xx/ arch-exynos/
进入include/configs目录下
mv smdkc100.h ../
rm -r *
mv ../smdkc100.h .
cp smdkc100.h smdk4412.h
进入cpu目录,除arm_cortexa8目录外,都删除
mv arm_cortexa8/ ../
rm -r *
mv ../arm_cortexa8/ .
cp -fr arm_cortexa8/ armv7
进入armv7目录后,删除mx51 omap3目录,修改s5pc1xx 为 exynos
rm -r mx51/ omap3/
mv s5pc1xx/ exynos
修改uboot.lds
vi u-boot.lds
进入命令模式
输入%s/arm_cortexa8/armv7/g
然后保存
进入board目录,除samsung目录外,都删除
mv samsung/ ../
rm -r *
mv ../samsung/ .
然后进入samsung,除smdkc100目录外,都删除
mv smdkc100/ ..
rm -r *
mv ../smdkc100/ .
cp -fr smdkc100/ smdk4412/
进入smdk4412目录,修改smdkc100.c 为 smdk4412.c
mv smdkc100.c smdk4412.c
修改Makefile 跟 config.mk
vi Makefile
进入命令模式
输入%s/smdkc100/smdk4412/g
然后保存
vi config.mk
修改TEXT_BAS的值
TEXT_BASE = 0x43E00000
这第一步就完成了,大家可以试下
make smdk4412_config
Configuring for smdk4412 board...
make
arm-linux-objcopy -O srec u-boot u-boot.srec
arm-linux-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin