开发环境:开发板:FriendlyARM Tiny6410 主机:CentOS release 6.4 (Final)
开发板与主机通过串口线连接
调试用的uboot源码为开发板光盘提供的u-boot-mini6410-20110405.tar.gz
在调试uboot时,没有必要把临时版本写到nand flash中,既耗时又损伤nand flash。可将uboot的调试版本下载到sdram中运行。
预先在nand flash中烧写完好的u-boot.bin文件,使开发板从nand flash启动,进入uboot命令行模式。
键入"?"可查看可用的uboot命令
发现有三条命令可以用来下载uboot到ram
loadb - load binary file over serial line (kermit mode)
loady - load binary file over serial line (ymodem mode)
tftpboot - boot image via network using TFTP protocol
help [命令]可用来查看命令的用法,loadb,loady,tftpboot用法如下:
loadb [ off ][ baud ]
loady [ off ][ baud ]
tftpboot [loadAddress][bootfilename]
loadb,loady是通过串口传文件。
如果串口调试工具用的是minicom,建议用loady,因为minicom不支持kermit协议传输文件。
uboot命令行下键入:
loady 0x50000000 115200
ctrl-A Z切换到minicom选项,选S依照提示选择要传输的文件
下载完毕后,在uboot命令行键入:
go 0x50000000
可以运行新的uboot。
如果串口调试工具用的是kermit,建议用loadb。
uboot命令行下键入:
loadb 0x50000000 115200
ctrl-\ C切换到kermit,键入“send [u-boot.bin路径]”发送文件。
下载完毕后,在uboot命令行键入:
go 0x50000000
即可运行新的uboot。
光盘提供的现成的uboot貌似没有加载网卡驱动,所以无法尝试用tftp下载uboot,以后再研究。
注:由board/samsung/mini6410/config.mk得知,nand flash中的uboot被加载在sdram的0x57e00000以上的内存区域执行,故下载调试版本的uboot时,要避免新的uboot覆盖原来uboot的内存区。