Anyone using mtd on NAND flash?
David Woodhouse
dwmw2 at redhat.com
Wed Sep 13 05:13:21 EDT 2000
stephane.laroche at colubris.com said:
> On the subject of NAND flash, could some JFFS expert point me
You're posting in the wrong place if you want JFFS experts. Join the JFFS
development list - see http://developer.axis.com/software/jffs/ for
subscription instructions.
> on where I should look for those multiple writes to the same page?
The JFFS code writes out a node header, then writes the data separately. In
some cases, it even goes back after writing the data and puts the correct
checksum into the node header.
Look for calls to flash_safe_write() in intrep.c
> I am currently working on a NAND driver for MTD that takes care of bad
> blocks and virtual mapping. It does ECC, keeps a bad block table and
> does the virtual mapping of blocks so that MTD sees a linear block
> device with 100% good blocks.
Nice. One question - why do you want to do it in the MTD driver rather than
in the next layer up? This kind of functionality will be needed for a
number of devices, so it's probably worth putting it in JFFS.
We're already intending to stop JFFS from treating the flash as a single
linear device, and start keeping a list of erase blocks in various
conditions (full,dirty,empty,etc.). It wouldn't be difficult to handle bad
blocks once that's done.
Also, the write caching to ensure we only perform one write per page is
going to make it extremely easy for JFFS to do its own ECC too, where
appropriate.
--
dwmw2
To unsubscribe, send "unsubscribe mtd" to majordomo at infradead.org
More information about the linux-mtd
mailing list