Hi, I have erased NAND flash using the low level functions. I mounted YAFFS2 file-system on NAND flash block driver. At the time of mounting it shows the following data mtdblock_open ok yaffs: dev is 32505856 name is "mtdblock0" yaffs: passed flags "" yaffs_read_super: Using yaffs2 yaffs_read_super: block size 4096 yaffs: Attempting MTD mount on 31.0, "mtdblock0" erase 80413d50 read 80414118 write 80413b54 readoob 8041402c writeoob 80413c3c block_isbad 80413f4c block_markbad 80413f98 writesize 2048 oobsize 64 erasesize 131072 size 2097152 yaffs: yaffs_GutsInitialise() restore entry: isCheckpointed 0 read checkpoint validity find next checkpt block: start: blocks 0 next 1 nandmtd2_ReadChunkWithTagsFromNAND chunk 0 data 00000000 tags 9d603a20 nand_read_oob: from = 0x00000000, len = 28 Page Address=0 ulSpareAddress=800 packed tags obj -1 chunk -1 byte -1 seq -1 ext.tags eccres 0 blkbad 0 chused 0 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 packed tags obj -1 chunk -1 byte -1 seq -1 ext.tags eccres 1 blkbad 0 chused 0 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 find next checkpt block: search: block 1 oid 0 seq 0 eccr 1 nandmtd2_ReadChunkWithTagsFromNAND chunk 64 data 00000000 tags 9d603a20 nand_read_oob: from = 0x00020000, len = 28 *After that I did mkdir and observe the following result.* yaffs_lookup for 1:a yaffs_lookup not found yaffs_mkdir yaffs_mknod: parent object 1 type 3 yaffs_mknod: making oject for a, mode 41ed dev 0 yaffs_mknod: making directory Allocated block 1, seq 4097, 15 left nandmtd2_ReadChunkWithTagsFromNAND chunk 0 data 80960000 tags 9d585b28 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 0 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 1 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 Chunk 64 not erased **>> yaffs chunk 64 was not erased line 1012 delete of chunk 64 Allocated block 2, seq 4098, 14 left nandmtd2_ReadChunkWithTagsFromNAND chunk 64 data 80960000 tags 9d585b28 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 0 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 1 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 Chunk 128 not erased **>> yaffs chunk 128 was not erased line 1012 delete of chunk 128 Allocated block 3, seq 4099, 13 left nandmtd2_ReadChunkWithTagsFromNAND chunk 128 data 80960000 tags 9d585b28 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 0 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 1 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 Chunk 192 not erased **>> yaffs chunk 192 was not erased line 1012 delete of chunk 192 . . . .upto 16th block . . Allocated block 16, seq 4112, 0 left Allocating reserve nandmtd2_ReadChunkWithTagsFromNAND chunk 960 data 80960000 tags 9d585b28 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 0 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 packed tags obj 0 chunk 0 byte 0 seq 0 ext.tags eccres 1 blkbad 0 chused 1 obj 0 chunk0 byte 0 del 0 ser 0 seq 0 Chunk 1024 not erased **>> yaffs chunk 1024 was not erased line 1012 delete of chunk 1024 yaffs tragedy: no more erased blocks Allocating reserve !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!! **>> yaffs write required 16 attempts GC Selected block 1 with 64 free, prioritised:1 yaffs: GC erasedBlocks 0 aggressive 1 Collecting block 1, in use 0, shrink 0, wholeBlock 1 Collecting block 1 that has no chunks in use yaffs_BlockBecameDirty block 1 state 8 *I am just thinking whether mkyaffs2image needs to be executed before writing any data to flash after erasing it. Is my understanding correct or wrong?* Thanks, Saquib