fastboot# mmc mmc - MMC sub system Usage: mmc read <device num> addr blk# cnt mmc write <device num> addr blk# cnt mmc write.ext4sp <device num> addr blk# cnt mmc bootread <device num> addr blk# cnt mmc bootwrite <device num> addr blk# cnt mmc rescan <device num> mmc list - lists available devices mmc bootmoderead <device num> addr size mmc reg <device num> fastboot# mmcinfo Device: XXXXXXX Manufacturer ID: 11 OEM: 100 Name: 004G9 Tran Speed: 25000000 Rd Block Len: 512 MMC version 4.0 High Capacity: Yes Capacity: 3959422976 Bus Width: 8-bit
通过mmcinfo可以看到mmc的block size(Rd Block Len: 512 bytes)
mmc具体参数的获取与计算:
- <device num> 通过mmc list进行查看
- addr :内存的绝对线性地址以byte为单位
- blk# : device-num设备的第blk#块,由于长度按线性计算,可以根据长度进行计算。pre-size-in-bytes / 512
- cnt: 进行数据传输的块量
mmc read <device num> addr blk# cnt
| | | | |
`-------+----------|---|----|-- disk2mem 从device-num中读取 blk# * 512 <-----> (blk# + cnt)*512 的数据到内存(地址以addr开头)中
| | | |
`----------|---|----|-- mmc list
| | |
`---|----|-- memory start address
| |
`----|-- disk start block
|
`-- length-block: cnt
mmc write <device num> addr blk# cnt
| | | | |
`-------+----------|---|----|-- mem2disk 从内存(地址以addr开头)中读取cnt*512 byts 写入device-num中(from: blk# * 512)
| | | |
`----------|---|----|-- mmc list
| | |
`---|----|-- memory start address
| |
`----|-- disk start block
|
`-- length-block: cnt
mmc write.ext4sp <device num> addr blk# cnt
| | | | |
`-------+----------|---|----|-- mem2disk 从内存(地址以addr开头)中读取cnt*512 byts 写入device-num中(from: blk# * 512)
| | | |
`----------|---|----|-- mmc list
| | |
`---|----|-- memory start address
| |
`----|-- disk start block
|
`-- length-partition-block: cnt
http://gist.github.com/qianjigui/7150077
以上这些命令都是用于nand烧写存储器的。
与此相关的还有sf,nand。这些命令在使用上与mmc相似,主要的不同是不需要按block进行单位換算。
最近见到的一些设备,需要先前存储区全0xff置位,再进行烧写。
理解MMC存储器操作与NAND烧写技术

本文深入探讨了MMC存储器的操作指令及其应用,特别关注于NAND烧写过程。通过实例解析MMC读写命令,阐述了如何在实际应用中高效管理存储设备。同时,文章还涉及了NAND烧写的前置准备步骤,强调了全0xff置位的重要性,为读者提供了一套完整的烧写流程指南。
879

被折叠的 条评论
为什么被折叠?



