Can you really write a jffs2 image with nandwrite?

Peter Grayson pgrayson at realmsys.com
Mon Feb 28 21:14:07 EST 2005


I am using a PowerPC 405 based Linux system running 2.6.10 kernel with
CVS head of mtd patched in. The board has a 256MB Samsung NAND flash
part with 2048 byte page size, 64 spare bytes per page, and 64 pages per
eraseblock (128kB eraseblock).

I want to use jffs2 partitions on this flash part. I can mount an empty
partition with jffs2 and that works well, but I have been unable to
weild mkfs.jffs2 and nandwrite to successfully write jffs2 images to
flash.

>From reading the mkfs.jffs2 code, it seems that mkfs.jffs2 has no
concept of out-of-bounds data. Consequently, it appears that the
nandwrite expects to find out-of-bounds data immediately after the in-
bounds data for every page. I have looked at the bits of the jffs2 image
produced by mkfs.jffs2 and I can see that it does not really produce out
of bounds data.

Below is the mkfs.jffs2 command line I am using. I have tried many other
combinations of options, but they do not yield appreciably different
results.

mkfs.jffs2
 	--pagesize=2048 \
	--eraseblock=128 \
	--pad \
	--output=image.jffs2 \
	--compression-mode none \
	--no-cleanmarkers \
	--big-endian \
	--squash \
	--verbose \
	--root=$ROOT_DIR

When I try using this image with "nandwrite -j", the image appears to be
written successfully, but when I try to mount the new filesystem, mount
fails with the following error message:

  mount: Mounting /dev/mtdblock0 on /mnt failed: Invalid argument

If I try to use "nandwrite -j -o", nandwrite complains about the image
not being aligned:

  Input file is not page aligned: Success
  Data did not fit into device, due to bad blocks
  : Success

In this case, nandwrite bails out early and does not write anything to
flash.

Is there something obvious I am missing? I have read the FAQ at:

  http://www.linux-mtd.infradead.org/tech/faq.html

so I know that the working theory is that this should work, but it is
not working for me. Has anyone else had a similar experience?

Thanks in advance for any help you can offer.

- Pete





More information about the linux-mtd mailing list