FW: Handling boot on NAND Bad Blocks

Kjell Ove Røte kjellove.rote at zenitel.com
Thu Nov 23 05:45:22 PST 2017


We have a product on the Freescale imx28 booting from a NAND Flash.
Lately we have seen high numbers of boards failing, and find we have received batches with marked bad blocks in lower boot addresses of Flash.
Typically we see bad blocks in partition where Barebox are located. 

We do also use the barebox command "bcb" to create the Boot Control Block. 
I did just test that using two partitions for the bootstream, and adding these to BCB handles my problem with bad block in one bootstream partition.

I realize we will get into same problem for bareboxenv, kernel and devicetree partitions.
Is there any sort of built-in mechanism or best practice dealing with this? 
Or do I need to make redundant copy of all partition and verifications before load?

We are currently using a rather old Barebox 2013.01.0, which has been working perfectly fine for many years.

Example running an update command on a partition with one bad block below.

barebox at Stentofon Turbine:/ update -t bootstream -d nand -f sti_boot
host is alive

erasing partition /dev/nand0.bootstream.bb

Skipping bad block at 0x00140000

flashing sti_boot to /dev/nand0.bootstream.bb

Kjell Ove

This e-mail may contain confidential and privileged material for the sole use of the intended recipient. Any review, use, distribution or disclosure by others is strictly prohibited. If you are not the intended recipient (or authorized to receive for the recipient), please contact the sender by reply e-mail and delete all copies of this message.

More information about the barebox mailing list