linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: ivan.djelic@parrot.com (Ivan Djelic)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 4/4] ARM: OMAP: gpmc: add DT bindings for GPMC timings and NAND
Date: Thu, 6 Dec 2012 11:15:41 +0100	[thread overview]
Message-ID: <20121206101541.GA4089@parrot.com> (raw)
In-Reply-To: <518397C60809E147AF5323E0420B992E3EA1100E@DBDE01.ent.ti.com>

On Wed, Dec 05, 2012 at 05:15:52AM +0000, Philip, Avinash wrote:
(...)
> > First a short reminder of pros and cons of the "constant polynomial addition"
> > (let's just call it "CPA") feature:
> > 
> > pros:
> > - it elegantly solves all problems related to reading an erased page (no clumsy hack needed)
> > - better performance: when a bitflip appears on an erased page (often this is a "sticky" bitflip),
> >   there is no need to perform a full scan+cleanup of the page each time it is read
> 
> No need for scan + cleanup on each read, as the chances of encountering bit flips in erased page
> is less. Also to find bit flips in erased page, compare ecc vector for read erased page against
> a standard ecc vector. Presence of bit flips can find by checking the compare results. In case of
> mismatch, should go for correction of bit flips in erased page with full scan.

Hi Avinash,

I explicitly mentioned the condition "when a bitflip appears on an erased page", in which case you
_do_ have to do a full scan upon each read, until you erase the block; and then, the bitflip may still be there
(this is what I called a "sticky" bitflip).
My experience with recent devices (4-bit/8-bit) is that erased pages with a single bitflip are not uncommon.
For those pages, there is undeniably a performance penalty compared to CPA.
Benchmarks would be needed to quantify the overall performance impact, but I suspect it is small.

> 
> So with this approach, we can nullify the effect of CPA for erased page bit flip handling.

Well, not completely. I would happily drop CPA is that were the case.
 
> > 
> > cons:
> > - the ecc vector is not compatible with RBL
> > 
> > RBL compatibility is not necessary in my case, because I'm using the OMAP MLC ROM boot mode.
> > Rather than completely removing the CPA feature, I'd like to keep it as an option; it could
> > even be used with the ELM module.
> 
> I agree RBL compatibility depends on the user. But with RBL compatibility, there is no sacrifice
> of any existing feature. Is it right?
> 
> Also nand driver get simplified with removal of CPA, so that both HW & SW error correction
> can go for same ecc calculation.

Indeed that would be a simplification.

> > 
> > I'm OK to submit a patch in this direction, but first I'd like to wait for the dust to settle
> > on arch/arm/mach-omap2 and mtd/nand/omap2.c with Afzal patches and everything; things have become
> > a bit complicated to follow recently :-)
> 
> Afzal's changes are in & are settled now.

What about this set: http://lists.infradead.org/pipermail/linux-mtd/2012-October/044337.html
I cannot see it in l2-mtd-2.6 ? Or did I miss something ?

Thanks,
--
Ivan

  reply	other threads:[~2012-12-06 10:15 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-02 15:25 [PATCH v3 0/4] RFC: OMAP GPMC DT bindings Daniel Mack
2012-11-02 15:25 ` [PATCH v3 1/4] mtd: omap-nand: pass device_node in platform data Daniel Mack
2012-11-02 15:25 ` [PATCH v3 2/4] ARM: OMAP: gpmc: enable hwecc for AM33xx SoCs Daniel Mack
2012-11-05 10:57   ` Philip, Avinash
2012-11-02 15:25 ` [PATCH v3 3/4] ARM: OMAP: gpmc: don't create devices from initcall on DT Daniel Mack
2012-11-02 15:25 ` [PATCH v3 4/4] ARM: OMAP: gpmc: add DT bindings for GPMC timings and NAND Daniel Mack
2012-11-05 11:03   ` Philip, Avinash
2012-11-05 12:58     ` Daniel Mack
2012-11-05 13:29       ` Philip, Avinash
2012-11-05 23:03         ` Murali Karicheri
2012-11-07  9:48         ` Daniel Mack
2012-11-07 15:37           ` Philip, Avinash
2012-11-10 18:56             ` Daniel Mack
2012-11-15  0:26               ` Daniel Mack
2012-11-19  6:06               ` Philip, Avinash
2012-11-20 15:59               ` Peter Korsgaard
2012-11-21 10:15                 ` Daniel Mack
2012-11-23 10:43                   ` Philip, Avinash
2012-11-27 14:00                     ` Daniel Mack
2012-11-28  5:01                       ` Philip, Avinash
2012-12-01 21:50                         ` Ivan Djelic
2012-12-05  5:15                           ` Philip, Avinash
2012-12-06 10:15                             ` Ivan Djelic [this message]
2012-12-06 13:12                               ` Philip, Avinash
2012-11-02 19:29 ` [PATCH v3 0/4] RFC: OMAP GPMC DT bindings Jon Hunter

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=20121206101541.GA4089@parrot.com \
    --to=ivan.djelic@parrot.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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;
as well as URLs for NNTP newsgroup(s).