本帖最后由 wangcong02345 于 2013-7-5 14:09 编辑
nand flash的一个page=data+oob
yaffs_ecc.c只是对tags的数据进行校验,不对读取的page中的数据进行校验.读取的page中的数据是通过mtd->read_oob来校验的,mtd->read_oob会把data和oob全都读出出来,但是只会校验data中的数据.
tags共28个Byte是存储在nand flash的oob上的,因为yaffs2把oob上的tags作为数据来使用的所以需要校验.
但是tags是存在于OOB上的无法通过mtd->read_oob来校验,所以只好自己写代码来校验,这段代码就是yaffs_ecc.c
通常情况下是不打开tags校验的,param->no_tag_ecc=1所以看起来没事.
|