[U-Boot] NAND bad environment block handling

Schlaegl Manfred jun. manfred.schlaegl at gmx.at
Sun Jan 11 21:30:55 CET 2009


Am Sonntag, den 11.01.2009, 14:28 +0100 schrieb Wolfgang Denk:
> Dear Manfred,
> 
> In message <1231672254.3130.29.camel at mobil.alm.archives.at> you wrote:
> > 
> > 1. For our systems we assume, that the env-block never gets bad in
> > productive use, because the env-block is never written again. So we
> > reduced the problem to number of initial/factory bad blocks.
> 
> That's a pretty risky setup because  it  is  based  on  an  incorrect
> assumption  - on NAND, block become not only bad when being erased or
> written to, but also after a certain number  of  read  operations  is
> exceeded.  Yes, there is a maximum number of reads per block on NAND!
> People like to ignore that... See for example  the  Micron  Technical
> Note   "Design   and  Use  Considerations  for  NAND  Flash  Memory",
> http://download.micron.com/pdf/technotes/nand/tn2917.pdf
Yes I know. I think my description was a little bit misunderstanding:
Our solution is only a solution for positioning env-block(s) and
handling initial/factory bad blocks. This solution can(should) combined
with redundant env-blocks too, if write/erase-wearout is an issue.

The problem you discribe is a general nand-flash-problem. To keep the
system aware of this you theoretically have to implement a redundant
uboot partition too. It makes no sense to have two env-blocks(except for
erase/write-wearout-issues), but only one u-boot binary in nand-flash.

> 
> Time to look into UBI, me thinks.
Yes I think too. It would make things much easier .. :-)
Perhaps: Uboot + Environment (ev. Kernel) on NOR-Flash and
filesystem-partitions on NAND/UBI.

Best regards,
Manfred



More information about the U-Boot mailing list