diff for duplicates of <587603.70189.qm@web39805.mail.mud.yahoo.com> diff --git a/a/1.txt b/N1/1.txt index 0b394a7..6e4241f 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,33 +1,16 @@ -Hi Vimal, - -> > With the current ndfc code, the error correction gets the bits wrong. -> > Switching it back to the original way and the correction is correct. -> > -> > diff --git a/drivers/mtd/nand/ndfc.c b/drivers/mtd/nand/ndfc.c -> > index 89bf85a..497e175 100644 -> > --- a/drivers/mtd/nand/ndfc.c -> > +++ b/drivers/mtd/nand/ndfc.c -> > @@ -101,9 +101,8 @@ static int ndfc_calculate_ecc(struct mtd_info *mtd, -> > -> > wmb(); -> > ecc = in_be32(ndfc->ndfcbase + NDFC_ECC); -> > - /* The NDFC uses Smart Media (SMC) bytes order */ -> > - ecc_code[0] = p[2]; -> > - ecc_code[1] = p[1]; -> > + ecc_code[0] = p[1]; -> > + ecc_code[1] = p[2]; -> > ecc_code[2] = p[3]; -> > -> > return 0; -> > -> > Does anybody see a problem with my method of reproducing the bug? This -> > bug is deadly for our customers. I don't want to make the change unless -> > it is absolutely necessary.. -> -> Just one question: did you enabled MTD_NAND_ECC_SMC in configs? - -Yes, it was set. - -Best Regards, - -Victor Gallardo +Hi Vimal,=0A=0A> > With the current ndfc code, the error correction gets th= +e bits wrong.=0A> > Switching it back to the original way and the correctio= +n is correct.=0A> >=0A> > diff --git a/drivers/mtd/nand/ndfc.c b/drivers/mt= +d/nand/ndfc.c=0A> > index 89bf85a..497e175 100644=0A> > --- a/drivers/mtd/n= +and/ndfc.c=0A> > +++ b/drivers/mtd/nand/ndfc.c=0A> > @@ -101,9 +101,8 @@ st= +atic int ndfc_calculate_ecc(struct mtd_info *mtd,=0A> >=0A> > =A0 =A0 =A0 = +=A0wmb();=0A> > =A0 =A0 =A0 =A0ecc =3D in_be32(ndfc->ndfcbase + NDFC_ECC);= +=0A> > - =A0 =A0 =A0 /* The NDFC uses Smart Media (SMC) bytes order */=0A> = +> - =A0 =A0 =A0 ecc_code[0] =3D p[2];=0A> > - =A0 =A0 =A0 ecc_code[1] =3D p= +[1];=0A> > + =A0 =A0 =A0 ecc_code[0] =3D p[1];=0A> > + =A0 =A0 =A0 ecc_code= +[1] =3D p[2];=0A> > =A0 =A0 =A0 =A0ecc_code[2] =3D p[3];=0A> >=0A> > =A0 = +=A0 =A0 =A0return 0;=0A> >=0A> > Does anybody see a problem with my method = +of reproducing the bug? This=0A> > bug is deadly for our customers. I don't= + want to make the change unless=0A> > it is absolutely necessary..=0A> =0A>= + Just one question: did you enabled MTD_NAND_ECC_SMC in configs?=0A=0AYes, = +it was set.=0A=0ABest Regards,=0A=0AVictor Gallardo diff --git a/a/content_digest b/N1/content_digest index 87b0cb9..3d54bb1 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -16,38 +16,21 @@ " linuxppc-dev@ozlabs.org\0" "\00:1\0" "b\0" - "Hi Vimal,\n" - "\n" - "> > With the current ndfc code, the error correction gets the bits wrong.\n" - "> > Switching it back to the original way and the correction is correct.\n" - "> >\n" - "> > diff --git a/drivers/mtd/nand/ndfc.c b/drivers/mtd/nand/ndfc.c\n" - "> > index 89bf85a..497e175 100644\n" - "> > --- a/drivers/mtd/nand/ndfc.c\n" - "> > +++ b/drivers/mtd/nand/ndfc.c\n" - "> > @@ -101,9 +101,8 @@ static int ndfc_calculate_ecc(struct mtd_info *mtd,\n" - "> >\n" - "> > \302\240 \302\240 \302\240 \302\240wmb();\n" - "> > \302\240 \302\240 \302\240 \302\240ecc = in_be32(ndfc->ndfcbase + NDFC_ECC);\n" - "> > - \302\240 \302\240 \302\240 /* The NDFC uses Smart Media (SMC) bytes order */\n" - "> > - \302\240 \302\240 \302\240 ecc_code[0] = p[2];\n" - "> > - \302\240 \302\240 \302\240 ecc_code[1] = p[1];\n" - "> > + \302\240 \302\240 \302\240 ecc_code[0] = p[1];\n" - "> > + \302\240 \302\240 \302\240 ecc_code[1] = p[2];\n" - "> > \302\240 \302\240 \302\240 \302\240ecc_code[2] = p[3];\n" - "> >\n" - "> > \302\240 \302\240 \302\240 \302\240return 0;\n" - "> >\n" - "> > Does anybody see a problem with my method of reproducing the bug? This\n" - "> > bug is deadly for our customers. I don't want to make the change unless\n" - "> > it is absolutely necessary..\n" - "> \n" - "> Just one question: did you enabled MTD_NAND_ECC_SMC in configs?\n" - "\n" - "Yes, it was set.\n" - "\n" - "Best Regards,\n" - "\n" - Victor Gallardo + "Hi Vimal,=0A=0A> > With the current ndfc code, the error correction gets th=\n" + "e bits wrong.=0A> > Switching it back to the original way and the correctio=\n" + "n is correct.=0A> >=0A> > diff --git a/drivers/mtd/nand/ndfc.c b/drivers/mt=\n" + "d/nand/ndfc.c=0A> > index 89bf85a..497e175 100644=0A> > --- a/drivers/mtd/n=\n" + "and/ndfc.c=0A> > +++ b/drivers/mtd/nand/ndfc.c=0A> > @@ -101,9 +101,8 @@ st=\n" + "atic int ndfc_calculate_ecc(struct mtd_info *mtd,=0A> >=0A> > =A0 =A0 =A0 =\n" + "=A0wmb();=0A> > =A0 =A0 =A0 =A0ecc =3D in_be32(ndfc->ndfcbase + NDFC_ECC);=\n" + "=0A> > - =A0 =A0 =A0 /* The NDFC uses Smart Media (SMC) bytes order */=0A> =\n" + "> - =A0 =A0 =A0 ecc_code[0] =3D p[2];=0A> > - =A0 =A0 =A0 ecc_code[1] =3D p=\n" + "[1];=0A> > + =A0 =A0 =A0 ecc_code[0] =3D p[1];=0A> > + =A0 =A0 =A0 ecc_code=\n" + "[1] =3D p[2];=0A> > =A0 =A0 =A0 =A0ecc_code[2] =3D p[3];=0A> >=0A> > =A0 =\n" + "=A0 =A0 =A0return 0;=0A> >=0A> > Does anybody see a problem with my method =\n" + "of reproducing the bug? This=0A> > bug is deadly for our customers. I don't=\n" + " want to make the change unless=0A> > it is absolutely necessary..=0A> =0A>=\n" + " Just one question: did you enabled MTD_NAND_ECC_SMC in configs?=0A=0AYes, =\n" + it was set.=0A=0ABest Regards,=0A=0AVictor Gallardo -29e54bf69e9bf3105d5ccd55be7394750398a1eb45c48faca448862f14777173 +2841bed58265af890b996bd011674ceb0402adfc69ef5d8068c74ec565002181
diff --git a/a/1.txt b/N2/1.txt index 0b394a7..e870248 100644 --- a/a/1.txt +++ b/N2/1.txt @@ -9,16 +9,16 @@ Hi Vimal, > > +++ b/drivers/mtd/nand/ndfc.c > > @@ -101,9 +101,8 @@ static int ndfc_calculate_ecc(struct mtd_info *mtd, > > -> > wmb(); -> > ecc = in_be32(ndfc->ndfcbase + NDFC_ECC); -> > - /* The NDFC uses Smart Media (SMC) bytes order */ -> > - ecc_code[0] = p[2]; -> > - ecc_code[1] = p[1]; -> > + ecc_code[0] = p[1]; -> > + ecc_code[1] = p[2]; -> > ecc_code[2] = p[3]; +> > ? ? ? ?wmb(); +> > ? ? ? ?ecc = in_be32(ndfc->ndfcbase + NDFC_ECC); +> > - ? ? ? /* The NDFC uses Smart Media (SMC) bytes order */ +> > - ? ? ? ecc_code[0] = p[2]; +> > - ? ? ? ecc_code[1] = p[1]; +> > + ? ? ? ecc_code[0] = p[1]; +> > + ? ? ? ecc_code[1] = p[2]; +> > ? ? ? ?ecc_code[2] = p[3]; > > -> > return 0; +> > ? ? ? ?return 0; > > > > Does anybody see a problem with my method of reproducing the bug? This > > bug is deadly for our customers. I don't want to make the change unless diff --git a/a/content_digest b/N2/content_digest index 87b0cb9..8f09ff6 100644 --- a/a/content_digest +++ b/N2/content_digest @@ -5,15 +5,9 @@ "ref\020090820153644.631dbd7b@lappy.seanm.ca\0" "ref\0ce9ab5790908202217t2430646co5059f308a23d7397@mail.gmail.com\0" "From\0Victor Gallardo <victorgallardo@yahoo.com>\0" - "Subject\0Re: [U-Boot] NAND ECC Error with wrong SMC ording bug\0" + "Subject\0[U-Boot] NAND ECC Error with wrong SMC ording bug\0" "Date\0Thu, 20 Aug 2009 23:30:45 -0700 (PDT)\0" - "To\0vimal singh <vimal.newwork@gmail.com>" - " Sean MacLennan <smaclennan@pikatech.com>\0" - "Cc\0u-boot@lists.denx.de" - Stefan Roese <sr@denx.de> - Feng Kan <fkan@amcc.com> - linux-mtd@lists.infradead.org - " linuxppc-dev@ozlabs.org\0" + "To\0u-boot@lists.denx.de\0" "\00:1\0" "b\0" "Hi Vimal,\n" @@ -27,16 +21,16 @@ "> > +++ b/drivers/mtd/nand/ndfc.c\n" "> > @@ -101,9 +101,8 @@ static int ndfc_calculate_ecc(struct mtd_info *mtd,\n" "> >\n" - "> > \302\240 \302\240 \302\240 \302\240wmb();\n" - "> > \302\240 \302\240 \302\240 \302\240ecc = in_be32(ndfc->ndfcbase + NDFC_ECC);\n" - "> > - \302\240 \302\240 \302\240 /* The NDFC uses Smart Media (SMC) bytes order */\n" - "> > - \302\240 \302\240 \302\240 ecc_code[0] = p[2];\n" - "> > - \302\240 \302\240 \302\240 ecc_code[1] = p[1];\n" - "> > + \302\240 \302\240 \302\240 ecc_code[0] = p[1];\n" - "> > + \302\240 \302\240 \302\240 ecc_code[1] = p[2];\n" - "> > \302\240 \302\240 \302\240 \302\240ecc_code[2] = p[3];\n" + "> > ? ? ? ?wmb();\n" + "> > ? ? ? ?ecc = in_be32(ndfc->ndfcbase + NDFC_ECC);\n" + "> > - ? ? ? /* The NDFC uses Smart Media (SMC) bytes order */\n" + "> > - ? ? ? ecc_code[0] = p[2];\n" + "> > - ? ? ? ecc_code[1] = p[1];\n" + "> > + ? ? ? ecc_code[0] = p[1];\n" + "> > + ? ? ? ecc_code[1] = p[2];\n" + "> > ? ? ? ?ecc_code[2] = p[3];\n" "> >\n" - "> > \302\240 \302\240 \302\240 \302\240return 0;\n" + "> > ? ? ? ?return 0;\n" "> >\n" "> > Does anybody see a problem with my method of reproducing the bug? This\n" "> > bug is deadly for our customers. I don't want to make the change unless\n" @@ -50,4 +44,4 @@ "\n" Victor Gallardo -29e54bf69e9bf3105d5ccd55be7394750398a1eb45c48faca448862f14777173 +47c82f24521ad2e936fe2182f12339089b06253664364f5eebfbf43fe480d46f
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.