TI中文支持网
TI专业的中文技术问题搜集分享网站

am335x 从SD卡向nand烧写程序

利用am3358开发产品,开始是在SD卡中调试,没问题后都烧写到nand中。命令如下:

U-Boot #mmc rescan

U-Boot #nand erase 0x0 0x280000

U-Boot #nandecc hw 2

U-Boot #fatload mmc 0 0x82000000 MLO

U-Boot #nand write 0x82000000 0x0 0x20000

U-Boot #fatload mmc 0 0x82000000 u-boot.img

U-Boot #nand write 0x82000000 0x80000 0x1E0000

U-Boot #nand erase 0x280000 0x500000

U-Boot #nandecc hw 2

U-Boot #fatload mmc 0 0x82000000 uImage

U-Boot #nand write 0x82000000 0x280000 0x500000

U-Boot#nand erase 0x780000 0x3200000

U-Boot#nandecc hw 2

U-Boot#fatload mmc 0 0x82000000 ubi.img

U-Boot#nand write 0x82000000 0x780000 0x2000000

每次都要输入这么多命令,非常麻烦,并且容易出错。有没有好的办法可以自动完成这些操作。比如提前写好命令,在uboot下自动执行这些命令。

kooking:

u-boot下面好像没有好的办法

不过可以进入文件系统后烧写,可以定怀个程序或者用脚本,不过如果文件系统没有相应的nand命令,可能就需要移植一下

Jian Zhou:

回复 kooking:

Meng xiangzhen,

U-boot里完全是可以写个脚本命令的,我记得我们之前讨论过啊

rabbit:

回复 Jian Zhou:

具体怎么弄呢,我试过,没有成功

rabbit:

回复 rabbit:

问题解决,修改环境变量即可。

但是发现另外一个问题,当SD卡插在板子上时,利用setenv………;saveenv命令,设置环境变量,保存环境变量。断电,将SD卡拔出,上电发现环境变量并没有保存到nand中,需要修改哪里吗?

tony2:

回复 rabbit:

直接改掉编译uboot的默认的环境变量

kooking:

回复 rabbit:

xiangzhen meng

问题���决,修改环境变量即可。

但是发现另外一个问题,当SD卡插在板子上时,利用setenv………;saveenv命令,设置环境变量,保存环境变量。断电,将SD卡拔出,上电发现环境变量并没有保存到nand中,需要修改哪里吗?

rabbit:

回复 kooking:

 硬件应该没有问题,在没有SD卡时,可以将环境变量保存到nand。

leo chen:

回复 rabbit:

有个方法可供参考,可以做个nand的镜像文件,在linux系统下,直接覆盖nand分区

Jian Zhou:

回复 leo chen:

应该是U-boot里的命令默认是这样写的,先把环境变量保存在SD里,如果SD卡不存在,再保存到NAND里。

薄伟:

关于指令“nandecc hw 2”

1. U-Boot下无法识别nandecc指令,如何添加该指令;

2.如果没有该指令会有什么严重后果呢;

赞(0)
未经允许不得转载:TI中文支持网 » am335x 从SD卡向nand烧写程序
分享到: 更多 (0)