首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 驱动开发 >

linux下nandflash解决思路

2012-03-28 
linux下nandflash有没有办法知道nandflash的大小以及已使用的nandflash,小弟刚接触。也不知这样问对不对[解

linux下nandflash
有没有办法知道nandflash的大小以及已使用的nandflash,
小弟刚接触。也不知这样问对不对

[解决办法]
看datasheet
[解决办法]
nandflash用来存储程序(又称烧写程序),所以,大小可以看手册,用了多少是用户自己知道的
[解决办法]
看芯片手册。有这方面的。
[解决办法]
看手册是最直接的方法。。。
[解决办法]
据我所知,有两个方法得到大小:
第一个方法,通过/proc/mtd获取,cat /proc/mtd会得到
# cat /proc/mtd
dev: size erasesize name
mtd0: 00200000 00010000 "flash1"
mtd1: 00080000 00010000 "flash2"
·······
size * 1024 即为NAND Flash大小
第二个方法,用ioctl。
ioctl(Fd,MEMGETREGIONCOUNT,&regcount)
ioctl(Fd, MEMGETREGIONINFO, &reginfo)
具体看mtd_utils中的flash_info.c

关于求剩余大小,这个。。。
有文件系统的话,mount后,用statfs获取。
没有文件系统的话,不知道了,会不会是打开设备,然后依次读出其中block,判断多少block是不为空FF,然后再计算。这个楼主可以试试啦~
[解决办法]
lz 手册
[解决办法]
nandflash大小看手册。
使用了多少,可以使用命令查看。

热点排行