首页 mtd-utils工具(linux下flash工具)

mtd-utils工具(linux下flash工具)

举报
开通vip

mtd-utils工具(linux下flash工具)PAGE/NUMPAGES一、下载源码包并解压wgetftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-1.5.1.tar.bz2wgethttp://www.zlib.net/zlib-1.2.8.tar.gzwgetHYPERLINK"http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz"http://www.oberhumer.com/opensource/lzo/down...

mtd-utils工具(linux下flash工具)
PAGE/NUMPAGES一、下载源码包并解压wgetftp://ftp.infradead.org/pub/mtd-utils/mtd-utils-1.5.1.tar.bz2wgethttp://www.zlib.net/zlib-1.2.8.tar.gzwgetHYPERLINK"http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz"http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gzwgethttps://www.kernel.org/pub/linux/utils/util-linux/v2.21/util-linux-2.21.1.tar.gztarzxvfzlib-1.2.8.tar.gztarzxvflzo-2.03.tar.gztarjxvfmtd-utils-1.5.1.tar.bz2tarzxvfutil-linux-2.21.1.tar.gz二、编译安装zlib1)cdzlib-1.2.8CC=arm-none-linux-gnueabi-gcc./configure--prefix=/usr/local/arm-2007q1/arm-none-linux-gnueabi--shared   (注意:这里的/usr/local/arm-2007q1/arm-none-linux-gnueabi是交叉编译工具默认目录。)2)makemakeinstallcd..3)安装完成后会在/usr/local/arm-2007q1/arm-none-linux-gnueabi/目录下生成三个目录:include、lib、share。安装完后检查一下目录/usr/local/arm-2007q1/zlib/ 假如include中没有zlib.h之类的头文件,lib中没有libz.so.1.2.3,那就自己手动拷到这些目录下去,记着拷的时候把所有的*.h都需要拷过去,在拷库的时候用cp-Calibz.*/…./lib 就行,要用上-Ca选项。三、编译安装lzo1)cdlzo-2.03/CC=arm-none-linux-gnueabi-gcc./configure--host=arm-none-linux-gnueabi--prefix=/usr/local/arm-2007q1/arm-none-linux-gnueabi2)makemakeinstallcd..3)同上四、编译安装uuid1)cdutil-linux-2.21.1/./configure--prefix=/usr/local/arm-2007q1/arm-none-linux-gnueabi--host=arm-none-linux-gnueabi--disable-mount--disable-makeinstall-setuid--disable-makeinstall-chown--disable-use-tty-group--disable-chsh-only-listed--disable-schedutils--disable-wall--disable-kill--disable-pivot_root--disable-switch_root--disable-cramfs--disable-agetty--disable-unshare--disable-fallocate--disable-mountpoint--disable-uuidd--disable-partx--disable-fsck--disable-losetup--disable-mount--disable-libmount--disable-tls--without-ncurses2)makemakeinstallcd..3)同上五、交叉编译mtd-utils1)cdmtd-utils-1.5.1/2)makeCROSS=arm-none-linux-gnueabi-WITHOUT_XATTR=1查看下mtd-utils-1.0.0目录下是否生成了咱们所需要大工具(flashcp,nandwrite......等)。有工具生成了,OK,交叉编译成功。4)将生成大工具拷贝到文件系统开发板的根文件系统,放在/bin或/sbin都行。再编译内核就OK拉。五、补充如果交叉编译器为4.3.x以上,编译不通过,请参考http://www.mail-archive.com/ptxdist@pengutronix.de/msg01067.htmlhttp://patchwork.ozlabs.org/patch/12689/打补丁六、mtd-utils工具命令的使用1)使用命令前用cat/proc/mtd查看一下mtdchar字符设备;或者用ls-l/dev/mtd*#cat/proc/mtddev:   size  erasesize namemtd0:00c0000000020000"ROOTFS"mtd1:0020000000020000"BOOTLOADER"mtd2:0020000000020000"KERNEL"mtd3:0320000000020000"NANDROOTFSpartition"mtd4:04b0000000020000"NANDDATAFSpartition"为了更详细了解分区信息用mtd_debug命令#mtd_debuginfo/dev/mtdX(不能使用mtdblockX,mtdblockX只是提供用來mount而已)mtd.type=MTD_NORFLASHmtd.flags=mtd.size=12582912(12M)mtd.erasesize=131072(128K)mtd.oobblock=1mtd.oobsize=0mtd.ecctype=(unknownECCtype-newMTDAPImaybe?)regions=02)命令:flash_erase作用:擦出指定范围内flash的内容,如果不指定,默认擦出起始位置的第一块,使相应flash变为全1用法:flash_eraseMTD-device[start][cnt(#eraseblocks)][lock]MTD-device:待擦出的分区,如/dev/mtd0start:起始位置设置,这里必须设置为0x20000(128K)的整数倍cnt:从start开始计算,要擦出的块数lock:写保护                             eg: ./flash_erase/dev/mtd00x400005  //擦出mtd0分区上从0x40000开始的5块数据,128K/块命令:flash_eraseall作用:擦出整个分区的数据,同时也会作坏块检测用法:flash_eraseall[OPTION]MTD_DEVICE-q,--quiet   不显示打印信息-j,--jffs2   一jffs2格式化分区eg:./flash_eraseall-j/dev/mtd0命令:flashcp作用:copy 数据到flash中用法:usage:flashcp[-v|--verbose]      flashcp-h|--helpfilename:待写入的数据device:写入的分区,如/dev/mtd0eg:  filename制作:mkfs.jffs2-e0x20000-dcq8401-ocq8401.img -n //这里的-e0x20000必须更你芯片的erasesize相等 ./flashcpcq8401.img/dev/mtd0 //copycq8401.img文件系统到 /dev/mtd0分区中当然这个命令的功能跟ddif=/tmp/fs.imgof=/dev/mtd0差不多命令:nandwrite作用:向nandflash中写数据用法: nandwrite[OPTION]MTD_DEVICEINPUTFILE -a,--autoplace      Useautoooblayout -j,--jffs2          forcejffs2ooblayout(legacysupport) -y,--yaffs          forceyaffsooblayout(legacysupport) -f,--forcelegacy    forcelegacysupportonautoplacementenabledmtddevice -n,--noecc          writewithoutecc -o,--oob            imagecontainsoobdata -saddr,--start=addrsetstartaddress(defaultis0) -p,--pad            padtopagesize -b,--blockalign=1|2|4setmultipleoferaseblockstoalignto -q,--quiet          don'tdisplayprogressmessages     --help           displaythishelpandexit     --version        outputversioninformationandexit    eg:./nandwrite-p/dev/mtd0 /tmp/rootfs.jffs2命令:nanddump作用:dump出nandflash一些信息,如:blocksize,erasesize,oobblock大小,oobdata,pagedata等;同时也会作坏块检测用法:nanddump[OPTIONS]MTD-device          --help              displaythishelpandexit          --version           outputversioninformationandexit-ffile   --file=file         dumptofile-i        --ignoreerrors      ignoreerrors-llength --length=length     length-o        --omitoob           omitoobdata-b        --omitbad           omitbadblocksfromthedump-p        --prettyprint       printnice(hexdump)-saddr   --startaddress=addr startaddresseg:./nanddump-p-fnandinfo.txt/dev/mtd0 //dump出nandflash/dev/mtd0数据并保存到nandinfo.txt命令:mtd_debug作用:对mtd调试作用用法:usage:mtd_debuginfo      mtd_debugread      mtd_debugwrite      mtd_debugeraseeg:#./mtd_debuginfo/dev/mtd0 //输出/dev/mtd0上的一些信息,这里必须用mtdx#./mtd_debugerase/dev/mtd00x00x40000 //擦出/dev/mtd0分区上从0x0开始的 ,128K*2大小的数据#./mtd_debugwrite/dev/mtdblock0ox00x360810cq8401.img//向mtdblock0分区,写入3.6M大小的文件系统cq8401.img,这里最好用mtdblockx#./mtd_debugread /dev/mtdblock0ox00x360810read.img //从mtdblock0中读出3.6M数据保存到read.img#cmp-lcq8401.imgread.img //验证writetoflash和readfromflash中的数据是否一致;也可以使用diff命令来比较另外针对nandflash,mtd_debug这个工具来测试mtd驱动也不是很好,用nandwrite和nanddump这两个工具或许更好点。然后可以用cmp这个命令来比较一下nanddump出来的数据和nandwrite写入的数据是否一致。命令:ftl_format解释:Inordertouseoneofconventionalfilesystems(Ext2,ext3,XFS,JFS,FAT)overanMTDdevice,youneedasoftwarelayerwhichemulatesablockdeviceovertheMTDdevice.TheselayersareoftencalledFlashTranslationLayers(FTLs).七、参考文章http://blog.csdn.net/yinkaizhong/archive/2008/12/25/3604794.aspxhttp://hi.baidu.com/qwetiop/blog/item/f2acb50f03e800eaab64577a.htmlhttp://blog.chinaunix.net/u1/53103/showart_1101011.html
本文档为【mtd-utils工具(linux下flash工具)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥20.0 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
夕夕资料
拥有专业强大的教研实力和完善的师资团队,专注为用户提供合同简历、论文写作、PPT设计、计划书、策划案、各类模板等,同时素材和资料部分来自网络,仅供参考.
格式:doc
大小:15KB
软件:Word
页数:0
分类:企业经营
上传时间:2021-06-23
浏览量:73