Kernel 2.6.20, so it is using the translate_spare2oob stuff. The problem seems to be (from memory now, since I no longer have the old code in place), that yaffs_tagsCompatabilityQueryNANDBlock, which in turn would have called nandmtd_ReadChunkFromNAND, expected the bad block information to be in there, but I don't think it is if you do an MTD_OOB_AUTO read of the OOB. File details (from older version) "$Id: yaffs_guts.c,v 1.49 2007-05-15 20:07:40 charles Exp $"; "$Id: yaffs_mtdif.c,v 1.19 2007/02/14 01:09:06 wookey Exp $"; The OOB definition was the standard one, so nand_oob_16: static struct nand_ecclayout nand_oob_16 = { .eccbytes = 6, .eccpos = {0, 1, 2, 3, 6, 7}, .oobfree = { {.offset = 8, . length = 8}} }; I believe when you do an MTD_OOB_AUTO read you just get back the bytes in oobfree (as in from 8, length 8), meaning the bad block information is not supplied (byte 6). Andre ian@brightstareng.com wrote: > Andre, > > On Monday 17 September 2007 16:32, Andre Renaud wrote: >> We were having some issues with a ~4 month old yaffs checkout, >> where it would incorrectly think that blocks were bad. It >> appeared as though it was using MTD_OOB_AUTO to read the OOB >> tags, but then assuming that byte 5 of these contained the bad >> block marker. This was all before the large patch which added >> yaffs_mtdif1.c. Has anyone seen this issue in older versions - >> was it a known bug? > > More details needed... MTD version, versions of the > yaffs_mtd*.c files (see $Id in files, or use 'ident' command). > I presume you have a small page device -- it has the bad-block > marker at the 6th byte (so offset 5) of oob/space on the chip. > > What is your MTD nand_oobinfo definition? -- see MTD's > nand_base.c source file, or perhaps your platform NAND mapping > code. > > Do you know if your build of yaffs_mtd.c is using the > translate_spare2oob() calls? -- depends on kernel version > seen during Yaffs build. > > -imcd -- Bluewater Systems Ltd - ARM Technology Solutions Centre Andre Renaud Bluewater Systems Ltd Phone: +64 3 3779127 (Aus 1 800 148 751) Level 17, 119 Armagh St Fax: +64 3 3779135 PO Box 13889 Email: arenaud@bluewatersys.com Christchurch Web: http://www.bluewatersys.com New Zealand