flash_eraseall和flashcp

文章目录

  • 查看各分区对应的mtd设备号
  • flash_erase 命令
  • flash_eraseall 命令
  • flashcp 命令
  • 参考资料

查看各分区对应的mtd设备号

cat /proc/mtd

flash_eraseall和flashcp_第1张图片
mtd块设备的大小可以通过查看分区信息来得到

cat /proc/partitions

flash_eraseall和flashcp_第2张图片

flash_erase 命令

作用:出指定范围内flash的内容,如果不指定,默认擦出起始位置的第一块,使相应flash变为全1。
用法:

flash_erase MTD-device [start] [cnt (# erase blocks)] [lock]

MTD-device:待擦出的分区,如/dev/mtd0
start:起始位置设置,这里必须设置为0×20000(128K)的整数倍
cnt: 从start开始计算,要擦出的块数
lock: 写保护
eg: ./flash_erase /dev/mtd0 0×40000 5 //擦出mtd0分区上从0×40000开始的5块数据 ,128K/块

flash_eraseall 命令

作用:擦出整个分区的数据,同时也会作坏块检测。
用法:

flash_eraseall [OPTION] MTD_DEVICE

OPTION:
-q, –quiet 不显示打印信息
-j, –jffs2 一jffs2 格式化分区

eg:flash_eraseall /dev/mtd4

flashcp 命令

作用:copy 数据到 flash 中。
用法:

usage: flashcp [ -v | --verbose ] 

filename:待写入的数据
device: 写入的分区,如/dev/mtd0

实例:

flashcp -v /tmp/uImage /dev/mtd4
flashcp -v /tmp/app.squash /dev/mtd5;

filename制作:

mkfs.jffs2 -e 0×20000 -d cq8401 -o cq8401.img  -n  
#这里的-e 0×20000 必须更你芯片的erasesize 相等

参考资料

https://blog.csdn.net/qq_29350001/article/details/51897841
http://www.itboth.com/d/ueQ3Af/mtd-flash_eraseall-mtdblock

你可能感兴趣的:(linux编程,flash_eraseall,flashcp,mtd)