Dear Javier Martinez Canillas,

On Sun, 1 Dec 2013 13:27:25 +0100, Javier Martinez Canillas wrote:

> > diff --git a/arch/arm/boot/dts/omap3-igep0020.dts 
> > b/arch/arm/boot/dts/omap3-igep0020.dts
> > index d5cc792..4229e94 100644
> > --- a/arch/arm/boot/dts/omap3-igep0020.dts
> > +++ b/arch/arm/boot/dts/omap3-igep0020.dts
> > @@ -116,7 +116,7 @@
> >                 linux,mtd-name= "micron,mt29c4g96maz";
> >                 reg = <0 0 0>;
> >                 nand-bus-width = <16>;
> > -               ti,nand-ecc-opt = "bch8";
> > +               ti,nand-ecc-opt = "ham1";
> >
> >                 gpmc,sync-clk-ps = <0>;
> >                 gpmc,cs-on-ns = <0>;
> > diff --git a/arch/arm/boot/dts/omap3-igep0030.dts 
> > b/arch/arm/boot/dts/omap3-igep0030.dts
> > index 525e6d9..9043e97 100644
> > --- a/arch/arm/boot/dts/omap3-igep0030.dts
> > +++ b/arch/arm/boot/dts/omap3-igep0030.dts
> > @@ -59,7 +59,7 @@
> >                 linux,mtd-name= "micron,mt29c4g96maz";
> >                 reg = <0 0 0>;
> >                 nand-bus-width = <16>;
> > -               ti,nand-ecc-opt = "bch8";
> > +               ti,nand-ecc-opt = "ham1";

Tested this with 3.13-rc1, and it somewhat works, but causes some ECC
error messages:

# mount -t jffs2 /dev/mtdblock3 /mnt/
[   10.423736] jffs2: CLEANMARKER node found at 0x00000000 has totlen 0xc != 
normal 0x0
[   10.444671] jffs2: CLEANMARKER node found at 0x00020000 has totlen 0xc != 
normal 0x0
[   10.472290] jffs2: mtd->read(0x100 bytes from 0x40000) returned ECC error
[   10.480743] jffs2: mtd->read(0x100 bytes from 0x60000) returned ECC error
[   10.489013] jffs2: mtd->read(0x100 bytes from 0x80000) returned ECC error
[   10.497283] jffs2: mtd->read(0x100 bytes from 0xa0000) returned ECC error
[   10.505126] jffs2: mtd->read(0x100 bytes from 0xc0000) returned ECC error
[   10.513458] jffs2: mtd->read(0x100 bytes from 0xe0000) returned ECC error
[   10.521667] jffs2: mtd->read(0x100 bytes from 0x100000) returned ECC error
[   10.529968] jffs2: mtd->read(0x100 bytes from 0x120000) returned ECC error
[   10.538269] jffs2: mtd->read(0x100 bytes from 0x140000) returned ECC error
[   10.546295] jffs2: mtd->read(0x100 bytes from 0x160000) returned ECC error
[   10.554534] jffs2: mtd->read(0x100 bytes from 0x180000) returned ECC error
[   10.563323] jffs2: mtd->read(0x100 bytes from 0x1a0000) returned ECC error
[   10.571685] jffs2: mtd->read(0x100 bytes from 0x1c0000) returned ECC error
[   10.579986] jffs2: mtd->read(0x100 bytes from 0x1e0000) returned ECC error
[   10.588287] jffs2: mtd->read(0x100 bytes from 0x200000) returned ECC error
[   10.596313] jffs2: mtd->read(0x100 bytes from 0x220000) returned ECC error
[   10.604522] jffs2: mtd->read(0x100 bytes from 0x240000) returned ECC error
[   10.613037] jffs2: mtd->read(0x100 bytes from 0x260000) returned ECC error
[   10.621307] jffs2: mtd->read(0x100 bytes from 0x280000) returned ECC error
[   10.629608] jffs2: mtd->read(0x100 bytes from 0x2a0000) returned ECC error
[   10.637908] jffs2: mtd->read(0x100 bytes from 0x2c0000) returned ECC error
[   10.645843] jffs2: mtd->read(0x100 bytes from 0x2e0000) returned ECC error
[   10.654113] jffs2: notice: (851) jffs2_build_xattr_subsystem: complete 
building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 
dead, 0 orphan) found.
# 
# 
# cd /mnt/
# ls
MD5SUMS  foo10    foo3     foo5     foo7     foo9
foo1     foo2     foo4     foo6     foo8
# md5sum -c MD5SUMS 
foo1: OK
foo10: OK
foo2: OK
foo3: OK
foo4: OK
foo5: OK
foo6: OK
foo7: OK
foo8: OK
foo9: OK

This is with a JFFS2 image flashed after doing "nandecc sw" in U-Boot.

> Just a note that this binding property got renamed for v3.13 on
> 
> commit c66d039197e42af8867e5d0d9b904daf0fb9e6bc
> Author: Pekon Gupta <pe...@ti.com>
> Date:   Thu Oct 24 18:20:18 2013 +0530
> 
>     mtd: nand: omap: combine different flavours of 1-bit hamming ecc schemes
> 
> so users using current v3.12 kernel or older should use
> 
> ti,nand-ecc-opt = "sw";
> 
> instead.

However, this works perfectly fine, with the same JFFS2 image, flashed
in the same way in U-Boot:

# mount -t jffs2 /dev/mtdblock3 /mnt/
[   19.789306] jffs2: CLEANMARKER node found at 0x00000000 has totlen 0xc != 
normal 0x0
[   19.810455] jffs2: CLEANMARKER node found at 0x00020000 has totlen 0xc != 
normal 0x0
[   19.850860] jffs2: notice: (802) jffs2_build_xattr_subsystem: complete 
building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 
dead, 0 orphan) found.
# cd /mnt/
# ls
MD5SUMS  foo10    foo3     foo5     foo7     foo9
foo1     foo2     foo4     foo6     foo8
# md5sum -c MD5SUMS 
foo1: OK
foo10: OK
foo2: OK
foo3: OK
foo4: OK
foo5: OK
foo6: OK
foo7: OK
foo8: OK
foo9: OK

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to