On Fri, May 29, 2009 at 6:05 PM, Robin Iddon <
robin@edesix.com> wrote:
> A word of caution on this:
>>
>> 1. completely wipe the flash, data and spare area
>>
>
> We found that forcing erasure of bad block markers on Micron MLC FLASH part
> (29F32G08QAA) left the block in a state where it could not be programmed
> again (i.e. the bad block marker could not be set again). This is fair
Bad block marker is just non-FF byte/word in the spare area, if all
bits are stuck in 1, the manufacturer wouldn't have had been able to
mark it in the first place. Strange though. I could be wrong but it's
more like a faulty chip or h/w issue.
> enough - there are no guarantees from the manufacturer that bad blocks can
> be reprogrammed if erased.
>
> At the time we did this as we had a h/w problem that was making our s/w
> think good blocks were bad; having corrected the h/w issue we wanted to
> recover all the incorrectly marked bad blocks.
>
> We ended up replacing the FLASH parts on the afflicted boards.
>
> To address this issue properly I think the only choice is to program a bad
> block table into a working block; I would guess only one block would need to
> be sacrificed, but deciding which block to use and which layer to implement
> such a thing at would require more time and effort than it is perhaps worth
> - just don't erase bad blocks!
>
> Hope this helps,
> Robin
>
>
>
>
>
> _______________________________________________
> yaffs mailing list
> yaffs@lists.aleph1.co.uk
> http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs
>
--
Rong