From: Jeroen Hofstee <jeroen@myspectrum.nl>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] nand: fix reading after switching ecc
Date: Tue, 14 Jan 2014 21:11:10 +0100 [thread overview]
Message-ID: <52D599DE.1000806@myspectrum.nl> (raw)
In-Reply-To: <1389637125.24905.32.camel@snotra.buserror.net>
Hello Scott, Pekon,
On 01/13/2014 07:18 PM, Scott Wood wrote:
>
>>
>>> The omap_gpmc allows switching ecc at runtime. Since
>>> the NAND_SUBPAGE_READ flag is only set, it is kept when
>>> switching to hw ecc, which is not correct. This leads to
>>> calling chip->ecc.read_subpage which is not a valid
>>> pointer. Therefore also clear the flag so reading in
>>> hw mode works again.
>>>
>>> Cc: Scott Wood <scottwood@freescale.com>
>>> Cc: Pekon Gupta <pekon@ti.com>
>>> Cc: Nikita Kiryanov <nikita@compulab.co.il>
>>> Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
>>> ---
>>> drivers/mtd/nand/nand_base.c | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>> diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
>>> index 1ce55fd..0762a19 100644
>>> --- a/drivers/mtd/nand/nand_base.c
>>> +++ b/drivers/mtd/nand/nand_base.c
>>> @@ -3354,6 +3354,8 @@ int nand_scan_tail(struct mtd_info *mtd)
>>> /* Large page NAND with SOFT_ECC should support subpage reads */
>>> if ((chip->ecc.mode == NAND_ECC_SOFT) && (chip->page_shift > 9))
>>> chip->options |= NAND_SUBPAGE_READ;
>>> + else
>>> + chip->options &= ~NAND_SUBPAGE_READ;
> NACK; this breaks NAND_SUBPAGE_READ with hardware ECC for drivers that
> support it.
There is something to argue in favour of that in general, but there are
no such drivers in u-boot at the moment though (well at least not doing
it on
purpose). I don't mind moving it to gpmc, but for correctness, it
doesn't break
things at the moment...
>> I don't think it's good to add OMAP specific changes to nand_base.c.
>> It's better if you can add this as part of omap_select_ecc_scheme() in omap_gpmc.c
> Yes, clear it from the OMAP switching code if OMAP can't do subpage
> reads with hardware ECC.
The gpmc will fail in hw ecc mode when trying to do subpage reads. Pekon any
suggestion for the elm mode, or should this bit just be cleared
unconditionally?
Regards,
Jeroen
next prev parent reply other threads:[~2014-01-14 20:11 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-11 13:39 [U-Boot] [PATCH] nand: fix reading after switching ecc Jeroen Hofstee
2014-01-12 9:27 ` Nikita Kiryanov
2014-01-13 8:29 ` Gupta, Pekon
2014-01-13 18:18 ` Scott Wood
2014-01-14 20:11 ` Jeroen Hofstee [this message]
2014-01-14 20:21 ` Scott Wood
2014-01-14 20:38 ` Jeroen Hofstee
2014-01-14 20:41 ` Scott Wood
2014-01-14 20:56 ` Jeroen Hofstee
2014-01-14 21:05 ` Scott Wood
2014-01-14 21:15 ` Jeroen Hofstee
2014-01-14 21:17 ` Scott Wood
2014-01-15 5:56 ` Gupta, Pekon
2014-01-15 16:58 ` [U-Boot] [PATCH v2] nand, gpmc: " Jeroen Hofstee
2014-01-17 13:06 ` [U-Boot] [U-Boot, " Tom Rini
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=52D599DE.1000806@myspectrum.nl \
--to=jeroen@myspectrum.nl \
--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 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.