mtd, mtdblock and nand ecc.
tglx at linutronix.de
Wed Apr 14 10:48:12 EDT 2004
On Wednesday 14 April 2004 16:11, David Daney wrote:
> >NAND aware filesystem drivers provide their own oobsel structure and use
> > the xxx_ecc functions.
> I am using the cramfs on a NAND partition as my root file system.
> cramfs is not NAND aware, and I cannot be running userspace programs
> before mounting as it is the root file system.
I know, but why must you use cramfs ? Why dont you use jffs2 or yaffs as your
root fs. Mount it r/o, so you have no hassle at all.
> I have not completely educated myself on the mtdblock driver. Since the
> mtdblock driver can be used by non-mtd-aware filesystems, I am proposing
> making mtdblock NAND aware so that it uses the xxx_ecc functions iff ECC
> is available. Perhaps there would be a kernel/module command line
> switch to help manage the behavior.
mtdblock is a block device driver and only provides an interface. It must not
be aware of anything.
Using NAND unaware filesystems on NAND is nothing we want to support.
ECC is only one part of NAND support. What about bad blocks? NAND chips can
have bad blocks, even when they are new. Only block 0 is guaranteed to be not
bad at delivery time. How want you deal with a board, where a bad block is in
the partition which is reserved for your cramfs ?
We have two reliable working NAND aware filesystems around. I don't see any
reason to provide support for predictable trouble.
"Free software" is a matter of liberty, not price. To understand the concept,
you should think of "free" as in "free speech,'' not as in "free beer".
linutronix - competence in embedded & realtime linux
mail: tglx at linutronix.de
More information about the linux-mtd