NAND Bad Block Algorithm, JFFS2, and CRAMFS

Richard Schmitt rschmitt at
Fri May 28 07:40:07 EDT 2004

We are using JFFS2 on NAND devices and are currently running into a
problem that I was hoping to get some guidance on.

We've created a 14MB partition.  We've configured the NAND driver to -
Verify Writes
- Enable ECC
- Disable Bad Block Checking

We've disabled Bad Block checking because as we understand it, this must
be disabled in order to support JFFS2.  I have a question on this that
I'll raise a bit further on.

We can copy a 64K jffs2 image onto the flash and mount it without problem.
 When we try to copy a 7MB image onto the flash, the copy will fail with a
generic 'input/output error'.

Our hypothesis is that there is a bad block somewhere in the flash that is
not hit with the 64K image but is hit with the 7MB image.  Because of this
and with Verify Writes enabled, the copy will fail.

This brings us back to the question introduced earlier.  If we need to
disable bad block checking with NAND in order to support JFFS2, then how
do we copy a JFFS2 image onto the flash if the flash has a bad block in

The second piece of this question is that we really wanted to support two
partitions, one with a JFFS2, and another with CRAMFS.  We wanted to run
with the bad block algorithm on CRAMFS and without it on the JFFS2 one.
We've heard rummblings that this is not supported. Is that true or is
there some way that we can get that to work.

Richard Schmitt
Blue Peach Solutions
Phone: 877.BLU.PEACH (877.258-7322) x 704
Fax: 508.302.6183

More information about the linux-mtd mailing list