public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Igor Grinberg <grinberg@compulab.co.il>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 1/2] arm: omap: nand: introduce CONFIG_NAND_OMAP_SW_ECC_LEGACY
Date: Thu, 12 Dec 2013 10:38:39 +0200	[thread overview]
Message-ID: <52A9760F.1000301@compulab.co.il> (raw)
In-Reply-To: <20980858CB6D3A4BAE95CA194937D5E73EA54702@DBDE04.ent.ti.com>

Hi Pekon,

On 12/11/13 23:18, Gupta, Pekon wrote:
> Hi Nikita,
> 
>> From: Nikita Kiryanov [mailto:nikita at compulab.co.il]
>> Commit "mtd: nand: omap: enable BCH ECC scheme using ELM for generic platform"
>> (d016dc42cedbf6102e100fa9ecb58462edfb14f8) changed the way software ECC is
>> configured, both during boot, and during ecc switch, in a way that is not
>> backwards compatible with older systems (for example, X-Loader on CM-T35 relies
>> on the old behavior).
>>
>> The culprit is the line which assigns ecc.size for software ECC.
>> Older version of omap_gpmc.c always assigned ecc.size = 0 when configuring for
>> software ecc, relying on nand_scan_tail() to select a default for ecc.size
>> (256), while the new version of omap_gpmc.c assigns ecc.size = pagesize, which
>> is likely to not be 256.
>>
> Then its just one-line change.. Remove "ecc.size = pagesize".
> Why do you need to add a newer config for that ?

Well, we think that having that line is actually the right behavior,
and it is a pity we did not have this from the start in the X-Loader.
So that is why we did not want to change it in a brutal way...
But if you say:

> This ecc-scheme (HAM1_SW) is anyways only kept for backward compatibility
> with legacy devices. (As also mentioned in doc/README.nand)
> -----------------------------
>   CONFIG_NAND_OMAP_ECCSCHEME
> 	On OMAP platforms, this CONFIG specifies NAND ECC scheme.
> 	It can take following values:
> 	OMAP_ECC_HAM1_CODE_SW
> 		1-bit Hamming code using software lib.
> 		(for legacy devices only)
> -----------------------------

then it makes real sense to just revert the ecc.size setting to
what it was prior to your patches.

> 
> But I don't have any board to boot-test this, because all my boards
> have newer ROM code, which auto-detects BCH8 or BCH16 based
> on block-size of NAND device connected to it.
> 
> Also, I suggest to migrate to 'HAM1_HW' as this should be compatible to
> OMAP3 ROM code (for NAND boot), at-least I could check that based
> on NAND ecc-layout given in OMAP35xx TRM.

The problem is not the ROM code...
Our systems are in production phase already for a long time and
we have customers relying on the old behavior,
so we cannot just switch the ECC to HW and stop using the SW one.

> 'HAM1_SW' will un-necessary burden your CPU by calculating ECC in
> software, inspite the fact that GPMC controller can do that in hardware.

Well, that is indeed the case.
I think TI should have think about it in first place before
releasing the SW ECC based drivers... ;-)


-- 
Regards,
Igor.

  reply	other threads:[~2013-12-12  8:38 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-11 16:57 [U-Boot] [PATCH 0/2] Introduce CONFIG_NAND_OMAP_SW_ECC_LEGACY, and use it on cm_t35 Nikita Kiryanov
2013-12-11 16:57 ` [U-Boot] [PATCH 1/2] arm: omap: nand: introduce CONFIG_NAND_OMAP_SW_ECC_LEGACY Nikita Kiryanov
2013-12-11 21:18   ` Gupta, Pekon
2013-12-12  8:38     ` Igor Grinberg [this message]
2013-12-12  9:16       ` Gupta, Pekon
2013-12-12 10:17         ` Igor Grinberg
2013-12-12 11:50     ` Nikita Kiryanov
2013-12-11 16:57 ` [U-Boot] [PATCH 2/2] arm: omap: cm_t35: fix nand sw ecc incompatibility with X-Loader Nikita Kiryanov
2013-12-12 12:05 ` [U-Boot] [PATCH 0/2] Introduce CONFIG_NAND_OMAP_SW_ECC_LEGACY, and use it on cm_t35 Nikita Kiryanov

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=52A9760F.1000301@compulab.co.il \
    --to=grinberg@compulab.co.il \
    --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