1、背景介绍
目前bmc更新固件一般有四种方法:
一种方法是采用烧写器直接烧flash,然后把flash贴在板子上;
一种是在NC-SI调通的情况下在网页界面中更新固件。
另一种是通过socflash或yafuflash在dos下烧录
今天介绍另一种方法,也就是在uboot中更新固件,uboot中更新固件又分为两种,一种是可以对flash进行操作的,也就是支持sf命令的操作,如AST2600;一种是不可以的,RU 。
2、操作步骤:
AST2600:
Zynq在uboot中就可以对flash进行操作,基本思路是将boot.bin先通过tftp传到ddr中,然后再将ddr中的数据写入flash,下面是具体操作办法:
tftp 0x83000000 将rom.ima先通过tftp传到ddr中
sf probe 0 初始化flash
update 0x83000000 0x00000000 0x4000000 将ddr中的数据写入flash
对地址的解释:
ddr:
flash:程序存储的地方:
AST2400:
ast2400中的uboot中缺少对flash操作的sf命令,无法用AST2600中那样操作了。
Ast2400中的步骤如下:
(1) //设置ast2500本地IP地址和上位机IP地址
setenv ipaddr 192.168.57.86\r
setenv serverip 192.168.57.38\r
saveenv\r
(2)//确认和上位机网络连通
ping 192.168.57.38
(3)//擦除flash
protect off all
erase all
(4)//这一步直接把镜像拷贝到flash里面了,0x20000000这个地址是固定的
tftp 0x20000000 rom.ima
(5)//保存环境变量
saveenv
(6)//重启
reset
对地址的解释: