Skip to contentSkip to conversation

Spurious ECC errors with mtd_subpagetest (OMAP3, NAND)

DISCUSSION Orjan Friberg 3 participants 6 messages Mar 2, 2012 – Mar 5, 2012 Memory technology devices (MTD)

lore
Share & tools
lore
#0 lore raw

Hi,

When running the mtd_subpagetest I'm seeing more or less spurious ECC corrections. I.e., one round may show 4 corrections and the next will show 7, only some of which are the same as the previous 4.

Are the ECC errors expected to be that volatile and frequent?

I've seen various discussions regarding the OMAP sub page support, as well as problems with the GPMC prefetch engine. Disabling both made no difference regarding this. I've also tried two different sets of NAND timings (relaxed and optimized), with no difference.

I'm using a Micron NAND that requires 4-bit ECC correction but I'm running with only 1-bit (software) ECC. This is on an old kernel, 2.6.32.

Thanks,
Orjan

Signature · 6 lines
Orjan Friberg
FlatFrog Laboratories AB

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
#1 lore raw
Quoted 5 lines · Orjan Friberg

Hi,

When running the mtd_subpagetest I'm seeing more or less spurious ECC corrections. I.e., one round may show 4 corrections and the next will show 7, only some of which are the same as the previous 4.

FWIW

* I'm seeing the same behaviour (i.e. transient ECC errors) when doing nanddump on a partition.
* mtd_oobtest fails on "verify failed at <varying address>", and "read past end of device".

Signature · 2 lines
Orjan Friberg
FlatFrog Laboratories AB
#2 lore raw
In reply to Orjan Friberg

Hello,

Quoted 7 lines · Orjan Friberg

When running the mtd_subpagetest I'm seeing more or less spurious ECC corrections.  I.e., one round may show 4 corrections and the next will show 7, only some of which are the same as the previous 4.

Are the ECC errors expected to be that volatile and frequent?

Quoted 7 lines

I've seen various discussions regarding the OMAP sub page support, as well as problems with the GPMC prefetch engine.  Disabling both made no difference regarding this.  I've also tried two different sets of NAND timings (relaxed and optimized), with no difference.

I'm using a Micron NAND that requires 4-bit ECC correction but I'm running with only 1-bit (software) ECC.  This is on an old kernel, 2.6.32.

IIRC NAND in mainline was broken for very long time on OMAP3, I think it was only fixed in 2.6.39.1.

Signature · 5 lines
Gražvydas
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
#3 lore raw
Quoted 2 lines · Grazvydas Ignotas

IIRC NAND in mainline was broken for very long time on OMAP3, I think it was only fixed in 2.6.39.1.

That seems to be the case; the 2.6.39.1 diff contains the OMAP NAND sub page write fix (applied locally).

Anyone else who can testify on the "volatile-ness" of NAND ECC errors?

I.e., are they expected to be more persistent?

Thanks,
Orjan

Signature · 2 lines
Orjan Friberg
FlatFrog Laboratories AB
#4 lore raw

Hi,

Quoted 7 lines · Orjan Friberg
Quoted 2 lines · Grazvydas Ignotas

IIRC NAND in mainline was broken for very long time on OMAP3, I think it was only fixed in 2.6.39.1.

That seems to be the case; the 2.6.39.1 diff contains the OMAP NAND sub page write fix (applied locally).

Note that the omap driver is still broken :
http://article.gmane.org/gmane.linux.drivers.mtd/36079/match=

We detected this when stressing a board.

Because all of these bugs in omap driver, I wonder how many people really use the mainline version.

Also if you use a nand that need 4-bit ECC, you need a better ecc than hamming. You can use the bch code (
http://article.gmane.org/gmane.linux.drivers.mtd/37864/match=omap )

Matthieu

PS : why omap driver use in omap_dev_ready GPMC*IRQ_STATUS instead of GPMC_STATUS.

PS2 : ecc hamming look strange. Weird isEccFF code. Doesn't seem to handle bit flip in ecc.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

#5 lore raw
Quoted 7 lines · Matthieu CASTET

Note that the omap driver is still broken :
http://article.gmane.org/gmane.linux.drivers.mtd/36079/match=

We detected this when stressing a board.

Because all of these bugs in omap driver, I wonder how many people really use the mainline version.

Do you know any repo where this is working correctly (linux-omap, or one of the vendor trees etc)?

Quoted 3 lines

Also if you use a nand that need 4-bit ECC, you need a better ecc than hamming. You can use the bch code (
http://article.gmane.org/gmane.linux.drivers.mtd/37864/match=omap )

Yes, I've been looking at the BCH 4-bit code (both generic implementations and the OMAP GPMC-enabled one) in u-boot and linux.

Signature · 2 lines
Orjan Friberg
FlatFrog Laboratories AB