From: Boris Brezillon <boris.brezillon@free-electrons.com>
To: Petr Kulhavy <petr@barix.com>
Cc: Murali Karicheri <m-karicheri2@ti.com>, linux-mtd@lists.infradead.org
Subject: Re: DaVinci NAND: disable subpage write (28c015)
Date: Fri, 22 Apr 2016 11:05:47 +0200 [thread overview]
Message-ID: <20160422110547.7fdf019c@bbrezillon> (raw)
In-Reply-To: <5719DEB9.1020909@barix.com>
Hi Petr,
On Fri, 22 Apr 2016 10:20:09 +0200
Petr Kulhavy <petr@barix.com> wrote:
> Hi,
>
> this email refers to the commit:
> 28c015a9daabe4ed3aeb0ccf669a3f1c2b8b81d5 on drivers/mtd/nand/davinci-nand.c.
> This commit sets the NAND_NO_SUBPAGE_WRITE option for "ti,keystone-nand"
> to workaround a HW issue on the controller.
>
> Disabling subpage write however should be made a general option because
> some NAND chips do not support subpage write at all. Subpage write is a
> feature of the NAND chip, not the NAND interface. In combination with
> "ti,davinci-nand" there is no option to disable subpage write.
> In my case I'm struggling with this issue on the AM1808 with a 1Gb
> Micron NAND (MT29F1GxxABB).
That's true that subpage write is initially a feature exposed by NAND
chips (actually called subpage in datasheets), but the controller can
say that it does not support writing subpages.
The problem is, in most drivers we don't have the concept of
controllers, hence the reason we're asking NAND controllers to
explicitly modify chip->options and set the NAND_NO_SUBPAGE_WRITE flag
manually.
Note that, unless the CHIP supports subpage write, mtd->subpage_sft
will be 0, which should prevent subpage writes [1].
>
> My proposal would be to add a boolean property
> "ti,davinci-disable-subpage-write" or similar, which sets the
> NAND_NO_SUBPAGE_WRITE option.
Hm, that's not a good idea IMO. This limitation is controller specific.
If some versions of your controller are supporting subpage writes, then
they should not set this flag. So, setting NAND_NO_SUBPAGE_WRITE
depending on the compatible string looks like the good approach here.
Regards,
Boris
[1]http://lxr.free-electrons.com/source/drivers/mtd/nand/nand_base.c#L4350
--
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
next prev parent reply other threads:[~2016-04-22 9:06 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-22 8:20 DaVinci NAND: disable subpage write (28c015) Petr Kulhavy
2016-04-22 9:05 ` Boris Brezillon [this message]
2016-04-22 11:49 ` Petr Kulhavy
2016-04-22 12:09 ` Boris Brezillon
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=20160422110547.7fdf019c@bbrezillon \
--to=boris.brezillon@free-electrons.com \
--cc=linux-mtd@lists.infradead.org \
--cc=m-karicheri2@ti.com \
--cc=petr@barix.com \
/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