加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

AM3517之SD卡启动盘恢复NAND flash的数据:U-boot(三)

发布时间:2020-12-15 18:37:06 所属栏目:百科 来源:网络整理
导读:更新存贮在nandflash 里的nandflash 起动的Uboot AM3517_EVM #? mmc init ?『初始化sd 卡』 mmc1 is available AM3517_EVM #? mw.b 0x80000000 0xFF 0x100000 ?『初始化使用的内存,全部置1』 AM3517_EVM #? nand erase 0x80000 0x1C0000 ?『擦除nandflash

更新存贮在nandflash 里的nandflash 起动的Uboot

AM3517_EVM #?mmc init?『初始化sd 卡』
mmc1 is available
AM3517_EVM #?mw.b 0x80000000 0xFF 0x100000?『初始化使用的内存,全部置1』
AM3517_EVM #?nand erase 0x80000 0x1C0000?『擦除nandflash 中存放u-boot 区域』
NAND erase: device 0 offset 0x80000,size 0x1c0000
Erasing at 0x220000 -- 100% complete.
AM3517_EVM #?fatload mmc1 0 0x80000000 u-boot.bin?『从sd 卡读u-boot 到内存』
reading u-boot.bin
214944 bytes read
AM3517_EVM #?nandecc sw?『设定ecc 校验为硬件校验』
SW ECC selected
AM3517_EVM #?nand write.i 0x80000000 0x80000 0x1C0000?『存u-boot 到nandflash 指
定位置』
NAND write: device 0 offset 0x80000,size 0x1c0000
1835008 bytes written: OK
AM3517_EVM #

到此为止,更新Uboot完成。

整个过程是

1先初始化SD卡,

2初始化内存区域0x80000000----0x80100000全为1,

3擦除nandflash的区域0x80000-(0x80000+0x1c0000)即0x80000----0x240000,

4将SD中的u-boot.bin读到内存0x80000000处,

5设置nandflash的ecc校验为硬件检测,

6将内存中的u-boot.bin文件(0x80000000----0x801c0000区域)读取到nandflash中(地址为0x80000----0x240000)。

命令基本和更新x-loader时都一样,这里只说最后一个命令:

1835008 bytes written: OK
这个命令是把内存中的0x80000000----0x801c0000区域写入(复制到)nandflash0x80000----0x240000区域的。

简洁来看是:

mmc init?『初始化sd 卡』
AM3517_EVM #?nand erase 0x80000 0x1C0000?『擦除nandflash 中存放u-boot 区域』
AM3517_EVM #?fatload mmc1 0 0x80000000 u-boot.bin?『从sd 卡读u-boot 到内存』
AM3517_EVM #?nandecc sw?『设定ecc 校验为硬件校验』
AM3517_EVM #?nand write.i 0x80000000 0x80000 0x1C0000?『存u-boot 到nandflash 指 定位置』 ?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读