public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Nuno Sa via B4 Relay <devnull+nuno.sa.analog.com@kernel.org>
Cc: <nuno.sa@analog.com>,
	linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
	Lars-Peter Clausen <lars@metafoo.de>,
	Michael Hennerich <Michael.Hennerich@analog.com>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Olivier Moysan <olivier.moysan@foss.st.com>
Subject: Re: [PATCH v6 7/8] iio: adc: ad9467: convert to backend framework
Date: Sun, 21 Jan 2024 17:52:06 +0000	[thread overview]
Message-ID: <20240121175206.598bd93a@jic23-huawei> (raw)
In-Reply-To: <20240119-iio-backend-v6-7-189536c35a05@analog.com>

On Fri, 19 Jan 2024 17:00:53 +0100
Nuno Sa via B4 Relay <devnull+nuno.sa.analog.com@kernel.org> wrote:

> From: Nuno Sa <nuno.sa@analog.com>
> 
> Convert the driver to use the new IIO backend framework. The device
> functionality is expected to be the same (meaning no added or removed
> features).
> 
> Also note this patch effectively breaks ABI and that's needed so we can
> properly support this device and add needed features making use of the
> new IIO framework.

A statement here on why we think no one will notice or that, if anyone does,
they can be helped around the incompatibility by Analog tech support etc
would be good to have here.

I'm happy to accept that is this the case but such a statement in this patch
description would be good to avoid scaring people too much with the ABI breakage.

One trivial comment inline.

Jonathan


> 
> Signed-off-by: Nuno Sa <nuno.sa@analog.com>
> ---
>  drivers/iio/adc/Kconfig  |   2 +-
>  drivers/iio/adc/ad9467.c | 272 +++++++++++++++++++++++++++++++----------------
>  2 files changed, 181 insertions(+), 93 deletions(-)
> 
> diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig
> index 10316e15c954..ff88e5b29f33 100644
> --- a/drivers/iio/adc/Kconfig
> +++ b/drivers/iio/adc/Kconfig
> @@ -324,7 +324,7 @@ config AD799X
>  config AD9467
>  	tristate "Analog Devices AD9467 High Speed ADC driver"
>  	depends on SPI
> -	depends on ADI_AXI_ADC
> +	select IIO_BACKEND
>  	help
>  	  Say yes here to build support for Analog Devices:
>  	  * AD9467 16-Bit, 200 MSPS/250 MSPS Analog-to-Digital Converter
> diff --git a/drivers/iio/adc/ad9467.c b/drivers/iio/adc/ad9467.c
> index 6581fce4ba95..9e448c4c6b92 100644
> --- a/drivers/iio/adc/ad9467.c
> +++ b/drivers/iio/adc/ad9467.c
> @@ -17,13 +17,12 @@
>  #include <linux/of.h>
>  
>
> -static int ad9467_get_scale(struct adi_axi_adc_conv *conv, int *val, int *val2)
> +static int ad9467_get_scale(struct ad9467_state *st, int *val, int *val2)
>  {
> -	const struct adi_axi_adc_chip_info *info = conv->chip_info;
> -	const struct ad9467_chip_info *info1 = to_ad9467_chip_info(info);
> -	struct ad9467_state *st = adi_axi_adc_conv_priv(conv);
> +	const struct ad9467_chip_info *info = st->info;
>  	unsigned int i, vref_val;
>  	int ret;
>  
> @@ -282,25 +278,24 @@ static int ad9467_get_scale(struct adi_axi_adc_conv *conv, int *val, int *val2)
>  	if (ret < 0)
>  		return ret;
>  
> -	vref_val = ret & info1->vref_mask;
> +	vref_val = ret & info->vref_mask;
>  
> -	for (i = 0; i < info->num_scales; i++) {
> +	for (i = 0; i < st->info->num_scales; i++) {

Use local variable info for this as well, and the other one below.

>  		if (vref_val == info->scale_table[i][1])
>  			break;
>  	}
>  
> -	if (i == info->num_scales)
> +	if (i == st->info->num_scales)
>  		return -ERANGE;
>  
> -	__ad9467_get_scale(conv, i, val, val2);
> +	__ad9467_get_scale(st, i, val, val2);
>  
>  	return IIO_VAL_INT_PLUS_MICRO;
>  }



  reply	other threads:[~2024-01-21 17:52 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-19 16:00 [PATCH v6 0/8] iio: add new backend framework Nuno Sa via B4 Relay
2024-01-19 16:00 ` [PATCH v6 1/8] dt-bindings: adc: ad9467: add new io-backend property Nuno Sa via B4 Relay
2024-01-19 17:15   ` Rob Herring
2024-01-22 15:37     ` Rob Herring
2024-01-22 16:01       ` Nuno Sá
2024-01-22 19:16         ` Jonathan Cameron
2024-01-19 16:00 ` [PATCH v6 2/8] dt-bindings: adc: axi-adc: update bindings for backend framework Nuno Sa via B4 Relay
2024-01-19 17:15   ` Rob Herring
2024-01-21 17:17     ` Jonathan Cameron
2024-01-22 15:34       ` Rob Herring
2024-01-22 19:18         ` Jonathan Cameron
2024-01-19 16:00 ` [PATCH v6 3/8] driver: core: allow modifying device_links flags Nuno Sa via B4 Relay
2024-01-21 17:20   ` Jonathan Cameron
2024-01-19 16:00 ` [PATCH v6 4/8] of: property: add device link support for io-backends Nuno Sa via B4 Relay
2024-01-19 16:00 ` [PATCH v6 5/8] iio: buffer-dmaengine: export buffer alloc and free functions Nuno Sa via B4 Relay
2024-01-19 16:00 ` [PATCH v6 6/8] iio: add the IIO backend framework Nuno Sa via B4 Relay
2024-01-19 16:00 ` [PATCH v6 7/8] iio: adc: ad9467: convert to " Nuno Sa via B4 Relay
2024-01-21 17:52   ` Jonathan Cameron [this message]
2024-01-22  8:33     ` Nuno Sá
2024-01-19 16:00 ` [PATCH v6 8/8] iio: adc: adi-axi-adc: move " Nuno Sa via B4 Relay
2024-01-21 17:57 ` [PATCH v6 0/8] iio: add new " Jonathan Cameron
2024-01-22  8:36   ` Nuno Sá

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=20240121175206.598bd93a@jic23-huawei \
    --to=jic23@kernel.org \
    --cc=Michael.Hennerich@analog.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=devnull+nuno.sa.analog.com@kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=nuno.sa@analog.com \
    --cc=olivier.moysan@foss.st.com \
    --cc=rafael@kernel.org \
    --cc=robh+dt@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