From: Boris Brezillon <boris.brezillon@bootlin.com>
To: David Woodhouse <dwmw2@infradead.org>,
Brian Norris <computersforpeace@gmail.com>,
Boris Brezillon <boris.brezillon@free-electrons.com>,
Marek Vasut <marek.vasut@gmail.com>,
Richard Weinberger <richard@nod.at>,
Cyrille Pitchen <cyrille.pitchen@wedev4u.fr>,
linux-mtd@lists.infradead.org
Cc: Peter Pan <peterpansjtu@gmail.com>,
Frieder Schrempf <frieder.schrempf@exceet.de>
Subject: Re: [PATCH v7 0/7] mtd: nand: Prepare things for SPI NAND support
Date: Fri, 16 Feb 2018 12:01:05 +0100 [thread overview]
Message-ID: <20180216120105.295e5f59@bbrezillon> (raw)
In-Reply-To: <20180205220205.3528-1-boris.brezillon@bootlin.com>
On Mon, 5 Feb 2018 23:01:58 +0100
Boris Brezillon <boris.brezillon@bootlin.com> wrote:
> Hello all,
>
> I'm finally posting a v7 of the SPI NAND preparation patches. That's on
> my TODO list for quite some time, and I finally take the time to submit
> things that are pending in my development branch and are ready for
> submission (at least, that's my opinion :)).
>
> Patches adding SPI NAND support have been ommited because I'm still not
> entirely happy with the SPI memories (NOR/NAND/SRAM) / QSPI controllers
> situation, and, despite what I said earlier, I think it's worth
> addressing the problem now.
>
> What made me change my mind is the rework of the FSL QSPI driver
> initiated by Frieder to support NANDs. Looks like all other QSPI
> drivers will have to implement the same kind of hack to support both
> SPI NORs and SPI NANDs with a single driver, which implies a lot of
> duplicated code.
>
> So, instead of making the situation worse by adding yet another level
> of complexity, I'd like to see if we can expose all QSPI NOR
> controllers as regular SPI controllers. Well, not exactly regular SPI
> controllers, in that they would not be able to do random SPI transfers,
> but instead high-level operations (an operation being a
> CMD[+ADDRS][+DUMMY][+DATA] sequence).
>
> The idea is to extend the SPI framework to provide high-level APIs to
> execute such SPI operations. Then, each SPI controller would be able
> to implement the high-level interface directly (likely the chosen
> approach for advanced SPI controllers) or rely on the default
> implementation which creates regular SPI messages to do the operation.
>
> Note that this high-level spi-mem interface would replace the
> spi_flash_read() APIs and handle optimizations of both read/write
> paths.
>
> I'm currently working on a PoC to validate the feasability of this
> approach (I pushed my work here [1], but it's not yet in a clean
> state), but this will be part of a separate RFC.
>
> Back to the initial topic. The patch series contains
> mechanical/straightforward changes to move existing NAND code to
> the raw subdir (patches 1 to 6) and a patch adding the generic NAND
> layer that is meant to be used by the SPI NAND framework, and at
> some point, by the raw NAND and OneNAND framework.
Applied the whole series.
--
Boris Brezillon, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
http://bootlin.com
prev parent reply other threads:[~2018-02-16 11:01 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-05 22:01 [PATCH v7 0/7] mtd: nand: Prepare things for SPI NAND support Boris Brezillon
2018-02-05 22:01 ` [PATCH v7 1/7] mtd: nand: Get rid of comments giving the file path inside the file itself Boris Brezillon
2018-02-05 22:02 ` [PATCH v7 2/7] mtd: nand: Stop using full path when referring to files placed in the same dir Boris Brezillon
2018-02-05 22:02 ` [PATCH v7 3/7] mtd: nand: ams-delta: Fix path to toto.c source file Boris Brezillon
2018-02-05 22:02 ` [PATCH v7 4/7] mtd: nand: State when references to other drivers are no longer valid Boris Brezillon
2018-02-05 22:02 ` [PATCH v7 5/7] mtd: nand: Add missing copyright information Boris Brezillon
2018-02-05 22:02 ` [PATCH v7 6/7] mtd: nand: move raw NAND related code to the raw/ subdir Boris Brezillon
2018-02-05 22:02 ` [PATCH v7 7/7] mtd: nand: Add core infrastructure to deal with NAND devices Boris Brezillon
2018-02-16 11:01 ` Boris Brezillon [this message]
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=20180216120105.295e5f59@bbrezillon \
--to=boris.brezillon@bootlin.com \
--cc=boris.brezillon@free-electrons.com \
--cc=computersforpeace@gmail.com \
--cc=cyrille.pitchen@wedev4u.fr \
--cc=dwmw2@infradead.org \
--cc=frieder.schrempf@exceet.de \
--cc=linux-mtd@lists.infradead.org \
--cc=marek.vasut@gmail.com \
--cc=peterpansjtu@gmail.com \
--cc=richard@nod.at \
/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