ECC on 2048 byte page size 8-bit NAND on Samsung S3C2440
David Woodhouse
dwmw2 at infradead.org
Tue May 15 03:04:13 EDT 2007
On Tue, 2007-05-15 at 08:30 +0800, Harald Welte wrote:
> Hi!
>
> On openmoko's future mobile communications devices, we're using 2048
> byte page sized NAND chips (x8 organization such as K9F8G08U0A).
> of
> However, it seems to me that the ECC support for 2048byte page sized
> NAND chips is not really implemented yet, neither by the NAND core, nor
> by the S3C2440 NAND driver.
The NAND core shouldn't be a problem -- in development of both the
CS553x and CAFÉ drivers for OLPC, we've used software ECC to start with,
then later switched over to hardware ECC support.
> As far as I understand it (I haven't worked with 2k page before), the
> 2440 NAND controller can generate a 4-byte ECC for each 2048byte page (8
> bytes in case of x16 organization, this seems somehow strange).
>
> In addition to ECC on the actual main data area, it also supports ECC on
> the OOB data, too. I haven't found any piece of code in any other NAND
> driver in the kernel that uses this feature.
Right. We haven't used ECC in the spare area. JFFS2 doesn't really need
it, although I _suppose_ we could use it for the cleanmarker.
Maybe there's something to be said for using it on the BBT too.
> Also, I don't see something like a standard ECC layout for the 2048byte
> page deivces. Is there one?
Basically, no.
> I can certainly spend my time hacking up some working code. The
> quesetion is if there is already some thought by one of the people
> involved for some longer time with linux-mtd and/or the s3c2440.
Well, since I just got my Neo1973 working I need to make a ppc->arm
cross-toolchain anyway. I suppose I could try it with one of the 512MiB
or 1GiB chips I have lying around.
Probably better just to see what Ben comes up with :)
--
dwmw2
More information about the linux-mtd
mailing list