Hello all, When I traced code of function *yaffs_scan()* in YAFFS2 source code: ---------------------------------------------------------------- yaffs_Scan -> yaffs_QueryInitialBlockState -> nandmtd2_QueryNANDBlock -> nandmtd2_ReadChunkWithTagsFromNAND ---------------------------------------------------------------- In function *nandmtd2_ReadChunkWithTagsFromNAND()*, it writes: ---------------------------------------------------------------- yaffs_PackedTags2 pt; ¡­¡­ if(tags) retval = mtd->read_oob(mtd,addr,mtd->oobsize,&dummy,dev->spareBuffer); ¡­¡­ memcpy(&pt,dev->spareBuffer,sizeof(pt)); ---------------------------------------------------------------- Value of "sizeof(pt)" is 32Bytes. So I have 2 questions: 1. Do the forhead 32B data stored in spare area of each page of NAND Device can 1-1 map to member variables of structure yaffs_PackedTags2? 2. For small page NAND Device, there are *ONLY* 16B for spare area, how could execute memcpy(&pt,dev->spareBuffer,sizeof(pt)); for them? Does YAFFS2 can only support Large-Page NAND? Thanks!