devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Nuno Sá" <noname.nuno@gmail.com>
To: David Lechner <dlechner@baylibre.com>,
	Marcelo Schmitt	 <marcelo.schmitt@analog.com>,
	linux-iio@vger.kernel.org,  devicetree@vger.kernel.org,
	linux-doc@vger.kernel.org, linux-pwm@vger.kernel.org,
		linux-spi@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: jic23@kernel.org, ukleinek@kernel.org,
	michael.hennerich@analog.com,  nuno.sa@analog.com,
	eblanc@baylibre.com, andy@kernel.org, robh@kernel.org,
	 krzk+dt@kernel.org, conor+dt@kernel.org, corbet@lwn.net,
	 marcelo.schmitt1@gmail.com,
	Trevor Gamblin <tgamblin@baylibre.com>,
	Axel Haslam	 <ahaslam@baylibre.com>
Subject: Re: [PATCH v4 6/8] iio: adc: ad4030: Add SPI offload support
Date: Fri, 10 Oct 2025 19:46:01 +0100	[thread overview]
Message-ID: <755d4fcea043d62ba6ac44c483f70c0a08b5e41e.camel@gmail.com> (raw)
In-Reply-To: <576b582e-7388-4ee4-9a4c-4f7e04fc3fda@baylibre.com>

On Fri, 2025-10-10 at 11:18 -0500, David Lechner wrote:
> On 10/10/25 6:19 AM, Nuno Sá wrote:
> > On Wed, 2025-10-08 at 10:51 -0300, Marcelo Schmitt wrote:
> > > AD4030 and similar ADCs can capture data at sample rates up to 2 mega
> > > samples per second (MSPS). Not all SPI controllers are able to achieve such
> > > high throughputs and even when the controller is fast enough to run
> > > transfers at the required speed, it may be costly to the CPU to handle
> > > transfer data at such high sample rates. Add SPI offload support for AD4030
> > > and similar ADCs to enable data capture at maximum sample rates.
> > > 
> > > Co-developed-by: Trevor Gamblin <tgamblin@baylibre.com>
> > > Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
> > > Co-developed-by: Axel Haslam <ahaslam@baylibre.com>
> > > Signed-off-by: Axel Haslam <ahaslam@baylibre.com>
> > > Signed-off-by: Marcelo Schmitt <marcelo.schmitt@analog.com>
> > > ---
> > > Change log v3 -> v4
> > > - Applied code adjustments suggested to SPI offload patch.
> > > - Only select SPI_OFFLOAD_TRIGGER_PWM if (SPI_OFFLOAD && PWM).
> > > 
> > >  drivers/iio/adc/Kconfig  |   3 +
> > >  drivers/iio/adc/ad4030.c | 504 +++++++++++++++++++++++++++++++++++----
> > >  2 files changed, 465 insertions(+), 42 deletions(-)
> > > 
> > > diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
> > > index 58a14e6833f6..1ed091b6731a 100644
> > > --- a/drivers/iio/adc/Kconfig
> > > +++ b/drivers/iio/adc/Kconfig
> > > @@ -62,7 +62,10 @@ config AD4030
> > >  	depends on GPIOLIB
> > >  	select REGMAP
> > >  	select IIO_BUFFER
> > > +	select IIO_BUFFER_DMA
> > > +	select IIO_BUFFER_DMAENGINE
> > >  	select IIO_TRIGGERED_BUFFER
> > > +	select SPI_OFFLOAD_TRIGGER_PWM if (SPI_OFFLOAD && PWM)
> > 
> > Two things as I mentioned in [1]:
> > 
> > 1) Wouldn't 'imply SPI_OFFLOAD_TRIGGER_PWM' accomplish the same?
> > 2) Don't we also need stubs for spi/offload/consumer.h?
> 
> It doesn't hurt to enable SPI offload support even if no controller
> supports it, so I would prefer that drivers that use it just select
> SPI_OFFLOAD.

It does not hurt for sure. I just don't love enabling code when the feature is
optional. For things like GPIO it not does not matter much because it's most likely
always enabled anyways.

But, fair enough! I don't feel strong about this at all and if we wanted to be picky
then we would also have to take into account that IIO_BUFFER_DMA and
IIO_BUFFER_DMAENGINE also depend on SPI_OFFLOAD being present and we just select
those.

- Nuno Sá

> 
> > 
> > [1]:
> > https://lore.kernel.org/linux-pwm/2e82eaf275b5c8df768c8b842167c3562991e50c.camel@gmail.com/T/#t
> > - Nuno Sá
> >  

  reply	other threads:[~2025-10-10 19:45 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-08 13:49 [PATCH v4 0/8] Add SPI offload support to AD4030 Marcelo Schmitt
2025-10-08 13:49 ` [PATCH v4 1/8] pwm: Declare waveform stubs for when PWM is not reachable Marcelo Schmitt
2025-10-09 16:58   ` Uwe Kleine-König
2025-10-10 16:34     ` David Lechner
2025-10-13  8:58       ` Uwe Kleine-König
2025-10-08 13:50 ` [PATCH v4 2/8] dt-bindings: iio: adc: adi,ad4030: Reference spi-peripheral-props Marcelo Schmitt
2025-10-08 13:50 ` [PATCH v4 3/8] Docs: iio: ad4030: Add double PWM SPI offload doc Marcelo Schmitt
2025-10-08 13:50 ` [PATCH v4 4/8] dt-bindings: iio: adc: adi,ad4030: Add PWM Marcelo Schmitt
2025-10-08 13:50 ` [PATCH v4 5/8] iio: adc: ad4030: Use BIT macro to improve code readability Marcelo Schmitt
2025-10-08 13:51 ` [PATCH v4 6/8] iio: adc: ad4030: Add SPI offload support Marcelo Schmitt
2025-10-10 11:19   ` Nuno Sá
2025-10-10 16:18     ` David Lechner
2025-10-10 18:46       ` Nuno Sá [this message]
2025-10-10 17:39   ` David Lechner
2025-10-08 13:51 ` [PATCH v4 7/8] dt-bindings: iio: adc: adi,ad4030: Add ADAQ4216 and ADAQ4224 Marcelo Schmitt
2025-10-08 21:04   ` Conor Dooley
2025-10-09 16:24     ` Marcelo Schmitt
2025-10-08 21:07   ` Conor Dooley
2025-10-09 22:02     ` Marcelo Schmitt
2025-10-10 14:39       ` Conor Dooley
2025-10-12 17:40   ` Jonathan Cameron
2025-10-08 13:51 ` [PATCH v4 8/8] iio: adc: ad4030: Add support for " Marcelo Schmitt
2025-10-10 18:12   ` David Lechner

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=755d4fcea043d62ba6ac44c483f70c0a08b5e41e.camel@gmail.com \
    --to=noname.nuno@gmail.com \
    --cc=ahaslam@baylibre.com \
    --cc=andy@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=corbet@lwn.net \
    --cc=devicetree@vger.kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=eblanc@baylibre.com \
    --cc=jic23@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pwm@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=marcelo.schmitt1@gmail.com \
    --cc=marcelo.schmitt@analog.com \
    --cc=michael.hennerich@analog.com \
    --cc=nuno.sa@analog.com \
    --cc=robh@kernel.org \
    --cc=tgamblin@baylibre.com \
    --cc=ukleinek@kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).