This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Q: Support for ST NAND512W3A / bad block relocations


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]