[U-Boot] NAND bad block table

Scott Wood scottwood at freescale.com
Wed Feb 5 20:16:02 CET 2014


On Wed, 2014-02-05 at 15:16 +0100, Michal Simek wrote:
> On 02/04/2014 09:46 PM, Scott Wood wrote:
> > On Tue, 2014-02-04 at 13:43 +0100, Michal Simek wrote:
> >> Hi Scott and others,
> >>
> >> I have a question regarding BBT position and number of blocks allocated
> >> for BBT.
> >>
> >> Did you face the issue with last 4 blocks broken in any NAND flash
> >> device since the default option in Linux/u-boot BBM is last 4 blocks?
> >>
> >> It doesn't mean that if the last 4 blocks are broken than the NAND flash
> >> device is broken too.
> >> Also I haven't seen any common binding for Linux kernel to change it.
> >>
> >> Has someone tried to improve this algorithm or process of storing BBT in a better way.
> >> For example just look for BBT from the end till any limit?
> > 
> > I don't recall if I've ever tested it personally, but that sort of
> > scanning is already there.  Have you seen a problem with it?
> 
> We have met with nand device which has broken last 4 blocks and
> u-boot and linux just scan last 4 blocks by default.
> 
> In connection to Linux. Interesting is that there is no binding
> for extending scan blocks and this has to be done through driver
> properties.

Could you be more specific about what sort of "driver property" you're
talking about?  AFAICT from glancing at the code, searching is the
default unless the controller driver specifies NAND_BBT_ABSPAGE.

In any case, this code comes straight from Linux, so you'll probably
find people more familiar with this code on linux-mtd.

-Scott




More information about the U-Boot mailing list