[ECOS] Q: Support for ST NAND512W3A / bad block relocations

Manfred Petz pm@deuromedia.at
Tue Jan 10 15:45:00 GMT 2006


Hello,

I'm trying to include support for the above NAND device (for RedBoot), 
and I got a question, which I could not get answered by browsing the 
mail archive and the sources.

As I understood, there's no support for bad block relocation in the
flash driver API. So, the caller of the flash_() routines always expects, 
that the requested memory region can be read/written/erased. By quickly
browsing through the RedBoot code, I saw, that RedBoot also does not
support bad block relocation. Right?

My idea to implement this, would be, to reserve a spare are in the
flash - exclusively for the driver - for bad block relocation. The size
depends on the specs in the data-sheet. If there are more bad blocks,
than defined, the flash is considered to be defective. And then, make
the driver transparently remap bad blocks (by writing the required
meta information (offset to a valid block) into the flash's spare 
blocks).

Is this a good approach, or could this be done better? Or am I
completely missing something? :)

Regards,
Manfred


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss



More information about the Ecos-discuss mailing list