From: Boris Brezillon <boris.brezillon@bootlin.com>
To: Mark Brown <broonie@kernel.org>
Cc: "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, linux-spi@vger.kernel.org,
"Peter Pan" <peterpansjtu@gmail.com>,
"Frieder Schrempf" <frieder.schrempf@exceet.de>,
"Vignesh R" <vigneshr@ti.com>,
"Yogesh Gaur" <yogeshnarayan.gaur@nxp.com>,
"Rafał Miłecki" <rafal@milecki.pl>,
"Kamal Dasu" <kdasu.kdev@gmail.com>,
"Sourav Poddar" <sourav.poddar@ti.com>
Subject: Re: [RFC PATCH 1/6] spi: Extend the core to ease integration of SPI memory controllers
Date: Mon, 19 Feb 2018 15:32:37 +0100 [thread overview]
Message-ID: <20180219153237.2563574d@bbrezillon> (raw)
In-Reply-To: <20180219140003.GF32761@sirena.org.uk>
On Mon, 19 Feb 2018 14:00:03 +0000
Mark Brown <broonie@kernel.org> wrote:
> On Tue, Feb 06, 2018 at 12:21:15AM +0100, Boris Brezillon wrote:
>
> > + /*
> > + * The controller can implement only the high-level SPI-memory like
> > + * operations if it does not support regular SPI transfers.
> > + */
> > + if (ctlr->mem_ops) {
> > + if (!ctlr->mem_ops->supports_op ||
> > + !ctlr->mem_ops->exec_op)
> > + return -EINVAL;
> > + } else if (!ctlr->transfer && !ctlr->transfer_one &&
> > + !ctlr->transfer_one_message) {
> > + return -EINVAL;
> > + }
>
> BTW your comment isn't describing what the code does - the comment says
> that having the memory operations means the driver can't be a regular
> SPI controller while the code does not do that and only checks that if a
> driver has memory ops it implements two required ones. Indeed the
> existing drivers that are updated to the new API continue to implement
> normal SPI operations.
Definitely not what I wanted to say :-/. I guess replacing 'can' by
'may' would be more appropriate. What I want to say is that SPI
controllers do not have to implement the hooks for regular SPI
operations if they only support SPI-mem like operations, but of course
they can implement those hooks if they support both spi_mem and regular
SPI ops.
This check is here to allow registration of SPI controllers that
support spi_mem ops, regular ops or both, and prevent registration if
both spi_mem and regular hooks are missing.
Is it clearer?
--
Boris Brezillon, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
http://bootlin.com
next prev parent reply other threads:[~2018-02-19 14:32 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-05 23:21 [RFC PATCH 0/6] spi: Extend the framework to generically support memory devices Boris Brezillon
2018-02-05 23:21 ` Boris Brezillon
2018-02-05 23:21 ` [RFC PATCH 1/6] spi: Extend the core to ease integration of SPI memory controllers Boris Brezillon
2018-02-05 23:21 ` Boris Brezillon
2018-02-06 9:43 ` Maxime Chevallier
2018-02-06 9:43 ` Maxime Chevallier
2018-02-06 10:25 ` Boris Brezillon
2018-02-06 10:25 ` Boris Brezillon
2018-02-06 12:06 ` Mark Brown
2018-02-06 12:06 ` Mark Brown
2018-02-09 12:52 ` Miquel Raynal
2018-02-09 12:52 ` Miquel Raynal
2018-02-11 16:00 ` Boris Brezillon
2018-02-11 16:00 ` Boris Brezillon
2018-02-12 11:50 ` Vignesh R
2018-02-12 11:50 ` Vignesh R
2018-02-12 12:28 ` Boris Brezillon
2018-02-12 12:28 ` Boris Brezillon
2018-02-19 13:53 ` Mark Brown
2018-02-19 14:20 ` Boris Brezillon
2018-02-19 14:00 ` Mark Brown
2018-02-19 14:32 ` Boris Brezillon [this message]
2018-02-28 7:51 ` Peter Pan
2018-02-28 7:51 ` Peter Pan
2018-02-28 12:25 ` Boris Brezillon
2018-02-28 12:25 ` Boris Brezillon
2018-03-04 21:15 ` Cyrille Pitchen
2018-03-04 21:15 ` Cyrille Pitchen
2018-03-05 9:00 ` Boris Brezillon
2018-03-05 9:00 ` Boris Brezillon
2018-03-05 13:01 ` Cyrille Pitchen
2018-03-05 13:01 ` Cyrille Pitchen
2018-03-05 13:47 ` Boris Brezillon
2018-03-05 13:47 ` Boris Brezillon
2018-03-08 14:07 ` Boris Brezillon
2018-03-08 14:07 ` Boris Brezillon
2018-02-05 23:21 ` [RFC PATCH 2/6] spi: bcm-qspi: Implement the spi_mem interface Boris Brezillon
2018-02-05 23:21 ` Boris Brezillon
2018-02-05 23:21 ` [RFC PATCH 3/6] spi: bcm53xx: " Boris Brezillon
2018-02-05 23:21 ` Boris Brezillon
2018-02-05 23:21 ` [RFC PATCH 4/6] spi: ti-qspi: " Boris Brezillon
2018-02-05 23:21 ` Boris Brezillon
2018-02-11 15:17 ` Miquel Raynal
2018-02-11 15:17 ` Miquel Raynal
2018-02-11 17:18 ` Boris Brezillon
2018-02-11 17:18 ` Boris Brezillon
2018-02-12 7:54 ` Miquel Raynal
2018-02-12 7:54 ` Miquel Raynal
2018-02-12 11:43 ` Vignesh R
2018-02-12 11:43 ` Vignesh R
2018-02-12 12:31 ` Boris Brezillon
2018-02-12 12:31 ` Boris Brezillon
2018-02-12 16:00 ` Vignesh R
2018-02-12 16:00 ` Vignesh R
2018-02-12 16:08 ` Boris Brezillon
2018-02-12 16:08 ` Boris Brezillon
2018-02-14 16:25 ` Vignesh R
2018-02-14 16:25 ` Vignesh R
2018-02-14 19:09 ` Boris Brezillon
2018-02-14 19:09 ` Boris Brezillon
2018-02-14 20:44 ` Schrempf Frieder
2018-02-14 20:44 ` Schrempf Frieder
2018-02-14 21:00 ` Boris Brezillon
2018-02-14 21:00 ` Boris Brezillon
2018-02-15 16:38 ` Schrempf Frieder
2018-02-15 16:38 ` Schrempf Frieder
2018-02-17 11:01 ` Vignesh R
2018-02-17 11:01 ` Vignesh R
2018-02-17 21:52 ` Boris Brezillon
2018-02-17 21:52 ` Boris Brezillon
2018-02-16 10:25 ` Boris Brezillon
2018-02-16 10:25 ` Boris Brezillon
2018-02-05 23:21 ` [RFC PATCH 5/6] mtd: spi-nor: Use the spi_mem_xx() API Boris Brezillon
2018-02-05 23:21 ` Boris Brezillon
2018-02-12 11:44 ` Vignesh R
2018-02-12 11:44 ` Vignesh R
2018-02-12 12:32 ` Boris Brezillon
2018-02-12 12:32 ` Boris Brezillon
2018-06-11 6:25 ` Yogesh Narayan Gaur
2018-06-11 6:25 ` Yogesh Narayan Gaur
2018-06-11 7:35 ` Boris Brezillon
2018-06-11 7:35 ` Boris Brezillon
2018-02-05 23:21 ` [RFC PATCH 6/6] spi: Get rid of the spi_flash_read() API Boris Brezillon
2018-02-05 23:21 ` Boris Brezillon
2018-02-16 10:21 ` Vignesh R
2018-02-16 10:21 ` Vignesh R
2018-02-16 10:24 ` Boris Brezillon
2018-02-16 10:24 ` Boris Brezillon
2018-02-19 16:25 ` [RFC PATCH 0/6] spi: Extend the framework to generically support memory devices Mark Brown
2018-02-19 16:51 ` Boris Brezillon
2018-03-04 21:40 ` Cyrille Pitchen
2018-03-04 21:40 ` Cyrille Pitchen
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=20180219153237.2563574d@bbrezillon \
--to=boris.brezillon@bootlin.com \
--cc=boris.brezillon@free-electrons.com \
--cc=broonie@kernel.org \
--cc=computersforpeace@gmail.com \
--cc=cyrille.pitchen@wedev4u.fr \
--cc=dwmw2@infradead.org \
--cc=frieder.schrempf@exceet.de \
--cc=kdasu.kdev@gmail.com \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-spi@vger.kernel.org \
--cc=marek.vasut@gmail.com \
--cc=peterpansjtu@gmail.com \
--cc=rafal@milecki.pl \
--cc=richard@nod.at \
--cc=sourav.poddar@ti.com \
--cc=vigneshr@ti.com \
--cc=yogeshnarayan.gaur@nxp.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 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.