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 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