From: Scott Wood <scottwood@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [U-Boot, v2, 2/3] mtd: nand: omap: add support for BCH16_ECC - NAND driver updates
Date: Tue, 19 Nov 2013 12:26:41 -0600 [thread overview]
Message-ID: <1384885601.1403.363.camel@snotra.buserror.net> (raw)
In-Reply-To: <20980858CB6D3A4BAE95CA194937D5E73EA3A76F@DBDE04.ent.ti.com>
On Tue, 2013-11-19 at 13:21 +0000, Gupta, Pekon wrote:
> > From: Scott Wood [mailto:scottwood at freescale.com]
> > > On Tue, Sep 10, 2013 at 12:55:07PM +0530, pekon gupta wrote:
> > > With increase in NAND flash densities occurence of bit-flips has increased.
> > > Thus stronger ECC schemes are required for detecting and correcting
> > multiple
> > > simultaneous bit-flips in same NAND page. But stronger ECC schemes have
> > large
> > > ECC syndrome which require more space in OOB/Spare.
> > > This patch add support for BCH16_ECC:
> > > (a) BCH16_ECC can correct 16 bit-flips per 512Bytes of data.
> > > (b) BCH16_ECC generates 26-bytes of ECC syndrome / 512B.
> > >
> > > Due to (b) this scheme can only be used with NAND devices which have
> > enough
> > > OOB to satisfy following equation:
> > > OOBsize per page >= 26 * (page-size / 512)
> > >
> > > Signed-off-by: Pekon Gupta <pekon@ti.com>
> > >
> > > ---
> > > arch/arm/include/asm/arch-am33xx/cpu.h | 15 ++++-
> > > arch/arm/include/asm/arch-am33xx/omap_gpmc.h | 4 +-
> > > drivers/mtd/nand/omap_gpmc.c | 87
> > +++++++++++++++++++++++-----
> > > include/mtd/mtd-abi.h | 3 +-
> > > 4 files changed, 90 insertions(+), 19 deletions(-)
> >
> > This doesn't apply cleanly.
> >
> This one is on top of previous patch series like..
> [Part 1] http://lists.denx.de/pipermail/u-boot/2013-November/167393.html
> [Part 2] http://lists.denx.de/pipermail/u-boot/2013-November/167445.html
>
> So once the above series are cleaned and accepted. I'll rebase and re-send this
> series for BCH16 ecc-scheme again..
>
>
> > > diff --git a/arch/arm/include/asm/arch-am33xx/cpu.h
> > b/arch/arm/include/asm/arch-am33xx/cpu.h
> > > index 10b56e0..1de92e6 100644
> > > --- a/arch/arm/include/asm/arch-am33xx/cpu.h
> > > +++ b/arch/arm/include/asm/arch-am33xx/cpu.h
> > > @@ -63,7 +63,16 @@ struct gpmc_cs {
> > > };
> > >
> > > struct bch_res_0_3 {
> > > - u32 bch_result_x[4];
> > > + u32 bch_result0;
> > > + u32 bch_result1;
> > > + u32 bch_result2;
> > > + u32 bch_result3;
> > > +};
> >
> > Is this really an improvement?
> >
> Good for readability to match it to actual IP spec..
> Each of bch_resultx map to individual 32-bit registers named accordingly
> in IP spec.
Hardware often names things "FOO1, FOO2, etc", but in C it's often
better to express as foo[n] rather than foo1, foo2, etc.
> > It would also be nice if headers for things in drivers/mtd/nand weren't
> > in arch.
> >
> I agree.. but I would take that separately, as I need to test all other
> platforms also for this change .. (like am335x, am43xx, omap3.. )
Yes, of course it would be separate.
-Scott
next prev parent reply other threads:[~2013-11-19 18:26 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-10 7:25 [U-Boot] [PATCH v2 0/3] mtd: nand: omap: add support for BCH16_ECC Pekon Gupta
2013-09-10 7:25 ` [U-Boot] [PATCH v2 1/3] am33xx: elm: add support for BCH16_ECC - ELM driver updates Pekon Gupta
2013-11-14 0:35 ` [U-Boot] [U-Boot, v2, " Scott Wood
2013-09-10 7:25 ` [U-Boot] [PATCH v2 2/3] mtd: nand: omap: add support for BCH16_ECC - NAND " Pekon Gupta
2013-11-14 0:40 ` [U-Boot] [U-Boot, v2, " Scott Wood
2013-11-19 13:21 ` Gupta, Pekon
2013-11-19 18:26 ` Scott Wood [this message]
2013-11-19 23:50 ` Scott Wood
2013-09-10 7:25 ` [U-Boot] [PATCH v2 3/3] am335x: update README for BCH16 Pekon Gupta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1384885601.1403.363.camel@snotra.buserror.net \
--to=scottwood@freescale.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox