A follow on from my previous comments on this.... > * Unlike NOR, you can attempt to write 1's on top of 0's without the > operation failing. The result is the logical AND of the two. ie. > programming 0xFE on top of 0x07 should yiled 0x06. Well that's my current > belief anyway (and how I have implemented the writes in the nandemul > layer). I will investigate further to check. > Ehem... bitwise AND. I checked the dox for the Samsumng and Toshiba NAND parts and it looks like this is correct and the NAND parts do not mark these as failures. Indeed the Toshiba docs say that you should not reprogram the same values over already programmed stuff. Instead you should be writing 0xffs. ie. The preferred way to change the sequence 0x01, 0x02, 0xff, 0x04, 0x05 to 0x01, 0x02, 0x03, 0x04, 0x05 is to program over 0xff, 0xff, 0x03, 0xff, 0xff. I expect this all ties in with the maximum number of times you can overwrite a page before an erasure. There are however some checks in the nand.c that will fail the write. These checks are enabled by CONFIG_MTD_NAND_VERIFY_WRITE. Do you have this enabled? Since YAFFS does its own verification, CONFIG_MTD_NAND_VERIFY_WRITE is not required. Maybe this could also become a partition dependent feature? -- CHarles --------------------------------------------------------------------------------------- This mailing list is hosted by Toby Churchill open software (www.toby-churchill.org). If mailing list membership is no longer wanted you can remove yourself from the list by sending an email to yaffs-request@toby-churchill.org with the text "unsubscribe" (without the quotes) as the subject.