NAND BBT corruption on MPC83xx

Artem Bityutskiy dedekind1 at
Thu Jun 23 04:35:46 EDT 2011

On Wed, 2011-06-15 at 15:48 -0400, Matthew L. Creech wrote:
> Hi, I'm not sure whether this list or the U-Boot list is more
> appropriate, but figured I'd start here and see if anyone can help.
> We've gotten some devices back from the field which all suffer from
> this same problem on bootup when attaching UBI (these messages are
> from U-Boot):
> ...
> Bad block table found at page 524224, version 0x01
> Bad block table found at page 524160, version 0x01
> nand_bbt: ECC error while reading bad block table
> ...(long stream of bogus bad blocks)...
> UBI: attaching mtd1 to ubi0
> UBI: physical eraseblock size:   131072 bytes (128 KiB)
> UBI: logical eraseblock size:    129024 bytes
> UBI: smallest flash I/O unit:    2048
> UBI: sub-page size:              512
> UBI: VID header offset:          512 (aligned 512)
> UBI: data offset:                2048
> UBI error: vtbl_check: volume table check failed: record 0, error 9
> UBI error: ubi_init: cannot attach mtd1
> UBI error: ubi_init: UBI error: cannot initialize UBI, error -22
> UBI init error -22
> A full console dump is here:
> Question #1: Is the UBI error here attributable to the blocks which
> are wrongly marked as bad?  I would assume that it's a red herring,
> and I should focus on figuring out how the BBT got corrupted, but
> figured I'd check first.

UBI prints error messages if a block is marked bad, and they should go
to syslog. If you are able to access the syslog - you can see if
anything was marked as bad by UBI. But I really doubt this is UBI to

This might be BBT stuff - I never used on-flash BBT and when I look at
the code - I do not trust it...

Best Regards,
Artem Bityutskiy

More information about the linux-mtd mailing list