Bit flip detection after boot

Raphael Pereira raphael at rmi.inf.br
Wed Apr 13 14:25:23 PDT 2016


Hi,

I have a custom board with a GPMI interface (Freescale i.MX233) with
kernel 4.1.18 using Micron MT29F4G08ABADAWP (nand: 512 MiB, SLC, erase
size: 128 KiB, page size: 2048, OOB size: 64).

When I boot, the flash gets recognized and works flawless. I can
ubiformat, ubiattach, mount, copy a lot of files, umount, remount,
check and test in whatever way I need. No problem arrises.
The problem is that when I shut the system down (turn it off) and boot
again, all used blocks are marked as badblocks.

I have used another flash (Toshiba with w/ erase size: 256KiB) and it
works perfectly, with no problem at all.

Trying to find out what might be the problem, I found BBT DTS option,
so I enabled it and, instead of marking all blocks as bad, I end up
with UBI detecting bit-flips on all sectors, but correctable flips, so
I can use the flash normally (although it takes a lot of time to boot
because of the many messages "ubi0: fixable bit-flip detected at PEB
XXX".

I have changed the chip a lot of times and have checked my hardware
and I am quite sure it is not a hardware problem. I think that some
structure detection of the flash is wrong in the kernel for this
particular case (i.MX233 BCH + MT29F4G08ABADAWP).

Can someone guide me in debugging this problem?

Best Regards,

--
Raphael Derosso Pereira
raphael at rmi.inf.br
+55-41-8877-1762



More information about the linux-mtd mailing list