Hi Juergen, Thanks for your ideas. I managed to clear the BBT, it was a bit of a hack... the saga is below for anyone who runs into similar problem. On Thursday, July 26, 2012 11:27:48 AM Juergen Beisert wrote: > The flash blocks which contains the "bad block table" are protected by > the "bad block table" aware MTD layer. > > So, the ugly way: run a bootloader which does not use the in-flash bad block > table. Then the tables are regular blocks in the flash and can be erased. > After that run again the bad block table aware bootloader and it will > re-create the in-flash table. But be careful: In this case the generic > functions scans all blocks in the NAND to collect the bad block markers in > each NAND block's OOB. If this information is already destroyed somehow, > this solution does not help. Recompiling barebox with bbt support disabled stopped the all the bad block messages, however erasing the nand didn't clear the BBT for subsequent reboots... The issue was that the erase commands and functions skip erasing bad blocks, and the blocks that held the actual BBT were being considered bad, so they weren't getting erased. After commenting out calls to nand_block_checkbad() in nand_write.c and block_isbad() in mtd_erase()/core.c I was able to manually erase the blocks. (erasing actual bad blocks results in I/O error) Next restart of barebox the BBT was regenerated with the two actual bad blocks. After all that, I noticed imx_low_erase() in nand_imx.c. Probably would have been easier to make up a command around that. Cheer,s Marc _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox