RE: [PATCH v2 3/3] mtd: nand: omap2: Support for hardware BCH errorcorrection

From: Philip, Avinash
Date: Tue Dec 04 2012 - 08:17:47 EST


On Fri, Nov 30, 2012 at 17:58:00, Artem Bityutskiy wrote:
> On Wed, 2012-10-31 at 12:38 +0530, Philip, Avinash wrote:
> > +static int erased_sector_bitflips(u_char *data, u_char *oob,
> > + struct omap_nand_info *info)
> > +{
> > + int flip_bits = 0, i;
> > +
> > + for (i = 0; i < info->nand.ecc.size; i++) {
> > + flip_bits += hweight8(~data[i]);
> > + if (flip_bits > info->nand.ecc.strength)
> > + return 0;
> > + }
> > +
> > + for (i = 0; i < info->nand.ecc.bytes - 1; i++) {
> > + flip_bits += hweight8(~oob[i]);
> > + if (flip_bits > info->nand.ecc.strength)
> > + return 0;
> > + }
>
> Why do you need the second for loop?

BCH ecc is self protected & can correct bit flips in ecc bytes.
So here checking bit flips in read_ecc. I will rename variable
"oob" to "read_ecc"

Thanks
Avinash

>
> --
> Best Regards,
> Artem Bityutskiy
>

N‹§²æìr¸›yúèšØb²X¬¶ÇvØ^–)Þ{.nÇ+‰·¥Š{±‘êçzX§¶›¡Ü}©ž²ÆzÚ&j:+v‰¨¾«‘êçzZ+€Ê+zf£¢·hšˆ§~†­†Ûiÿûàz¹®w¥¢¸?™¨è­Ú&¢)ßf”ù^jÇy§m…á@A«a¶Úÿ 0¶ìh®å’i