[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