1. 编译U-boot
准备好U-boot压缩包urbetter-u-boot-1.1.6-v1.0.tgz,输入命令:tar -xvf urbetter-u-boot-1.1.6-v1.0.tgz
进入U-boot目录,按顺序执行以下命令:
make clean
make smdk6410_config
make
会报出很多/usr/local/arm/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-gcc: not found的错误,这是因为我把交叉编译工具安装到了自己的目录下,因此要改一下Makefile。
打开Makefile,指定161行的CROSS_CONPILE为自己的交叉编译工具路径,保存后再make,在当前路径下就会出现u-boot.bin
2. 将自己编译的U-boot替换掉原来的U-boot
重启6410开发板,在U-boot命令行中输入:dnw 50008000
在Ubuntu中输入:sudo dnw u-boot.bin
此时u-boot.bin已经下载到0x50008000地址中了。
接下来在开发板中依次输入下列命令:
nand erase 0 40000
nand write 50008000 0 40000
注意写入大小不能小于u-boot.bin的大小。
重启开发板,此时起来的U-boot已经是新的U-boot了。
3. 将LCD显示纯色的代码添加进U-boot
将lcd.c和lcd.h拷贝至lib_arm目录下
打开lib_arm下的Makefile,在COBJS后面增加lcd.o
打开lib_arm下的board.c,包含lcd.h,并在第460行左右,for(;;)之前插入三行代码:
lcd_init(); set_bk_color(LCD_RED); lcd_clean();
保存后用make编译。
4. 将新的U-boot替换旧的U-boot
参考第2步。
原文地址:https://www.cnblogs.com/Suzkfly/p/10312454.html