From: "Nuno Sá" <noname.nuno@gmail.com>
To: Jonathan Cameron <jic23@kernel.org>, linux-iio@vger.kernel.org
Cc: "David Lechner" <dlechner@baylibre.com>,
"Olivier Moysan" <olivier.moysan@foss.st.com>,
"Mike Looijmans" <mike.looijmans@topic.nl>,
"Phil Reid" <preid@electromag.com.au>,
"Marek Vasut" <marek.vasut+renesas@gmail.com>,
"Miquel Raynal" <miquel.raynal@bootlin.com>,
"Claudiu Beznea" <claudiu.beznea@tuxon.dev>,
"Uwe Kleine-König" <u.kleine-koenig@baylibre.com>,
"Alisa-Dariana Roman" <alisa.roman@analog.com>,
"Marek Vasut" <marex@denx.de>, "Frank Li" <Frank.Li@nxp.com>,
"Jonathan Cameron" <Jonathan.Cameron@huawei.com>
Subject: Re: [PATCH 29/29] iio: adc: Switch to sparse friendly iio_device_claim/release_direct()
Date: Wed, 19 Feb 2025 11:07:32 +0000 [thread overview]
Message-ID: <df8ee3042ac351954ace12afbed8e63f1953fabc.camel@gmail.com> (raw)
In-Reply-To: <20250217141630.897334-30-jic23@kernel.org>
On Mon, 2025-02-17 at 14:16 +0000, Jonathan Cameron wrote:
> From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
>
> Single patch for all the relatively simple cases.
>
> These new functions allow sparse to find failures to release
> direct mode reducing chances of bugs over the claim_direct_mode()
> functions that are deprecated.
>
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> Cc: Olivier Moysan <olivier.moysan@foss.st.com>
> Cc: Mike Looijmans <mike.looijmans@topic.nl>
> Cc: Phil Reid <preid@electromag.com.au>
> ---
Reviewed-by: Nuno Sá <nuno.sa@analog.com>
> drivers/iio/adc/ad7173.c | 9 +++---
> drivers/iio/adc/ad7266.c | 7 ++---
> drivers/iio/adc/ad7298.c | 7 ++---
> drivers/iio/adc/ad7380.c | 56 ++++++++++++++-------------------
> drivers/iio/adc/ad7476.c | 7 ++---
> drivers/iio/adc/ad7887.c | 7 ++---
> drivers/iio/adc/ad7923.c | 7 ++---
> drivers/iio/adc/ad7944.c | 7 ++---
> drivers/iio/adc/dln2-adc.c | 7 ++---
> drivers/iio/adc/stm32-adc.c | 7 ++---
> drivers/iio/adc/ti-adc084s021.c | 9 +++---
> drivers/iio/adc/ti-adc108s102.c | 7 ++---
> drivers/iio/adc/ti-ads1298.c | 7 ++---
> drivers/iio/adc/ti-ads131e08.c | 14 ++++-----
> drivers/iio/adc/ti-tlc4541.c | 7 ++---
> 15 files changed, 71 insertions(+), 94 deletions(-)
>
> diff --git a/drivers/iio/adc/ad7173.c b/drivers/iio/adc/ad7173.c
> index 54f9cc5a89f5..ca2b41b16cc9 100644
> --- a/drivers/iio/adc/ad7173.c
> +++ b/drivers/iio/adc/ad7173.c
> @@ -1157,11 +1157,10 @@ static int ad7173_write_raw(struct iio_dev *indio_dev,
> struct ad7173_state *st = iio_priv(indio_dev);
> struct ad7173_channel_config *cfg;
> unsigned int freq, i;
> - int ret;
> + int ret = 0;
>
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> switch (info) {
> /*
> @@ -1195,7 +1194,7 @@ static int ad7173_write_raw(struct iio_dev *indio_dev,
> break;
> }
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> return ret;
> }
>
> diff --git a/drivers/iio/adc/ad7266.c b/drivers/iio/adc/ad7266.c
> index 858c8be2ff1a..18559757f908 100644
> --- a/drivers/iio/adc/ad7266.c
> +++ b/drivers/iio/adc/ad7266.c
> @@ -153,11 +153,10 @@ static int ad7266_read_raw(struct iio_dev *indio_dev,
>
> switch (m) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
> ret = ad7266_read_single(st, val, chan->address);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/ad7298.c b/drivers/iio/adc/ad7298.c
> index b35bd4d9ef81..28b88092b4aa 100644
> --- a/drivers/iio/adc/ad7298.c
> +++ b/drivers/iio/adc/ad7298.c
> @@ -232,16 +232,15 @@ static int ad7298_read_raw(struct iio_dev *indio_dev,
>
> switch (m) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> if (chan->address == AD7298_CH_TEMP)
> ret = ad7298_scan_temp(st, val);
> else
> ret = ad7298_scan_direct(st, chan->address);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/ad7380.c b/drivers/iio/adc/ad7380.c
> index a18dcd664c1b..f232ad1a4963 100644
> --- a/drivers/iio/adc/ad7380.c
> +++ b/drivers/iio/adc/ad7380.c
> @@ -716,16 +716,15 @@ static int ad7380_debugfs_reg_access(struct iio_dev
> *indio_dev, u32 reg,
> struct ad7380_state *st = iio_priv(indio_dev);
> int ret;
>
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> if (readval)
> ret = regmap_read(st->regmap, reg, readval);
> else
> ret = regmap_write(st->regmap, reg, writeval);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> return ret;
> }
> @@ -1018,14 +1017,13 @@ static int ad7380_read_raw(struct iio_dev *indio_dev,
>
> switch (info) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ad7380_read_direct(st, chan->scan_index,
> scan_type, val);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> return ret;
> case IIO_CHAN_INFO_SCALE:
> @@ -1056,13 +1054,12 @@ static int ad7380_read_raw(struct iio_dev *indio_dev,
>
> return IIO_VAL_INT;
> case IIO_CHAN_INFO_OVERSAMPLING_RATIO:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ad7380_get_osr(st, val);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret)
> return ret;
> @@ -1155,13 +1152,12 @@ static int ad7380_write_raw(struct iio_dev *indio_dev,
>
> switch (mask) {
> case IIO_CHAN_INFO_OVERSAMPLING_RATIO:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ad7380_set_oversampling_ratio(st, val);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> return ret;
> default:
> @@ -1186,13 +1182,12 @@ static int ad7380_read_event_config(struct iio_dev
> *indio_dev,
> struct ad7380_state *st = iio_priv(indio_dev);
> int tmp, ret;
>
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = regmap_read(st->regmap, AD7380_REG_ADDR_CONFIG1, &tmp);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret)
> return ret;
> @@ -1209,16 +1204,15 @@ static int ad7380_write_event_config(struct iio_dev
> *indio_dev,
> struct ad7380_state *st = iio_priv(indio_dev);
> int ret;
>
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = regmap_update_bits(st->regmap,
> AD7380_REG_ADDR_CONFIG1,
> AD7380_CONFIG1_ALERTEN,
> FIELD_PREP(AD7380_CONFIG1_ALERTEN, state));
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> return ret;
> }
> @@ -1265,13 +1259,12 @@ static int ad7380_read_event_value(struct iio_dev
> *indio_dev,
>
> switch (info) {
> case IIO_EV_INFO_VALUE:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ad7380_get_alert_th(st, dir, val);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> return ret;
> default:
> return -EINVAL;
> @@ -1332,13 +1325,12 @@ static int ad7380_write_event_value(struct iio_dev
> *indio_dev,
>
> switch (info) {
> case IIO_EV_INFO_VALUE:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ad7380_set_alert_th(indio_dev, chan, dir, val);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> return ret;
> default:
> return -EINVAL;
> diff --git a/drivers/iio/adc/ad7476.c b/drivers/iio/adc/ad7476.c
> index aeb8e383fe71..37b0515cf4fc 100644
> --- a/drivers/iio/adc/ad7476.c
> +++ b/drivers/iio/adc/ad7476.c
> @@ -138,11 +138,10 @@ static int ad7476_read_raw(struct iio_dev *indio_dev,
>
> switch (m) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
> ret = ad7476_scan_direct(st);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/ad7887.c b/drivers/iio/adc/ad7887.c
> index 69add1dc4b53..87ff95643794 100644
> --- a/drivers/iio/adc/ad7887.c
> +++ b/drivers/iio/adc/ad7887.c
> @@ -152,11 +152,10 @@ static int ad7887_read_raw(struct iio_dev *indio_dev,
>
> switch (m) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
> ret = ad7887_scan_direct(st, chan->address);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/ad7923.c b/drivers/iio/adc/ad7923.c
> index acc44cb34f82..87945efb940b 100644
> --- a/drivers/iio/adc/ad7923.c
> +++ b/drivers/iio/adc/ad7923.c
> @@ -260,11 +260,10 @@ static int ad7923_read_raw(struct iio_dev *indio_dev,
>
> switch (m) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
> ret = ad7923_scan_direct(st, chan->address);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/ad7944.c b/drivers/iio/adc/ad7944.c
> index 9a7825ea5087..2f949fe55873 100644
> --- a/drivers/iio/adc/ad7944.c
> +++ b/drivers/iio/adc/ad7944.c
> @@ -407,12 +407,11 @@ static int ad7944_read_raw(struct iio_dev *indio_dev,
>
> switch (info) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ad7944_single_conversion(adc, chan, val);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> return ret;
>
> case IIO_CHAN_INFO_SCALE:
> diff --git a/drivers/iio/adc/dln2-adc.c b/drivers/iio/adc/dln2-adc.c
> index 221a5fdc1eaa..b9029fa13b32 100644
> --- a/drivers/iio/adc/dln2-adc.c
> +++ b/drivers/iio/adc/dln2-adc.c
> @@ -314,15 +314,14 @@ static int dln2_adc_read_raw(struct iio_dev *indio_dev,
>
> switch (mask) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret < 0)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;;
>
> mutex_lock(&dln2->mutex);
> ret = dln2_adc_read(dln2, chan->channel);
> mutex_unlock(&dln2->mutex);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/stm32-adc.c b/drivers/iio/adc/stm32-adc.c
> index 9d3b23efcc06..5dbf5f136768 100644
> --- a/drivers/iio/adc/stm32-adc.c
> +++ b/drivers/iio/adc/stm32-adc.c
> @@ -1471,9 +1471,8 @@ static int stm32_adc_read_raw(struct iio_dev *indio_dev,
> switch (mask) {
> case IIO_CHAN_INFO_RAW:
> case IIO_CHAN_INFO_PROCESSED:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
> if (chan->type == IIO_VOLTAGE)
> ret = stm32_adc_single_conv(indio_dev, chan, val);
> else
> @@ -1482,7 +1481,7 @@ static int stm32_adc_read_raw(struct iio_dev *indio_dev,
> if (mask == IIO_CHAN_INFO_PROCESSED)
> *val = STM32_ADC_VREFINT_VOLTAGE * adc-
> >vrefint.vrefint_cal / *val;
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> return ret;
>
> case IIO_CHAN_INFO_SCALE:
> diff --git a/drivers/iio/adc/ti-adc084s021.c b/drivers/iio/adc/ti-adc084s021.c
> index da16876c32ae..9c845ee01697 100644
> --- a/drivers/iio/adc/ti-adc084s021.c
> +++ b/drivers/iio/adc/ti-adc084s021.c
> @@ -96,19 +96,18 @@ static int adc084s021_read_raw(struct iio_dev *indio_dev,
>
> switch (mask) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret < 0)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = regulator_enable(adc->reg);
> if (ret) {
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> return ret;
> }
>
> adc->tx_buf[0] = channel->channel << 3;
> ret = adc084s021_adc_conversion(adc, &be_val);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> regulator_disable(adc->reg);
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/ti-adc108s102.c b/drivers/iio/adc/ti-adc108s102.c
> index 9758ac801310..7d615e2bbf39 100644
> --- a/drivers/iio/adc/ti-adc108s102.c
> +++ b/drivers/iio/adc/ti-adc108s102.c
> @@ -181,13 +181,12 @@ static int adc108s102_read_raw(struct iio_dev
> *indio_dev,
>
> switch (m) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = adc108s102_scan_direct(st, chan->address);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret < 0)
> return ret;
> diff --git a/drivers/iio/adc/ti-ads1298.c b/drivers/iio/adc/ti-ads1298.c
> index 03f762415fa5..ae30b47e4514 100644
> --- a/drivers/iio/adc/ti-ads1298.c
> +++ b/drivers/iio/adc/ti-ads1298.c
> @@ -319,13 +319,12 @@ static int ads1298_read_raw(struct iio_dev *indio_dev,
>
> switch (mask) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ads1298_read_one(priv, chan->scan_index);
>
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
>
> if (ret)
> return ret;
> diff --git a/drivers/iio/adc/ti-ads131e08.c b/drivers/iio/adc/ti-ads131e08.c
> index 91a79ebc4bde..c6096b64664e 100644
> --- a/drivers/iio/adc/ti-ads131e08.c
> +++ b/drivers/iio/adc/ti-ads131e08.c
> @@ -505,12 +505,11 @@ static int ads131e08_read_raw(struct iio_dev *indio_dev,
>
> switch (mask) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ads131e08_read_direct(indio_dev, channel, value);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> if (ret)
> return ret;
>
> @@ -551,12 +550,11 @@ static int ads131e08_write_raw(struct iio_dev
> *indio_dev,
>
> switch (mask) {
> case IIO_CHAN_INFO_SAMP_FREQ:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
>
> ret = ads131e08_set_data_rate(st, value);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> return ret;
>
> default:
> diff --git a/drivers/iio/adc/ti-tlc4541.c b/drivers/iio/adc/ti-tlc4541.c
> index 08de997584fd..5a138be983ed 100644
> --- a/drivers/iio/adc/ti-tlc4541.c
> +++ b/drivers/iio/adc/ti-tlc4541.c
> @@ -131,11 +131,10 @@ static int tlc4541_read_raw(struct iio_dev *indio_dev,
>
> switch (m) {
> case IIO_CHAN_INFO_RAW:
> - ret = iio_device_claim_direct_mode(indio_dev);
> - if (ret)
> - return ret;
> + if (!iio_device_claim_direct(indio_dev))
> + return -EBUSY;
> ret = spi_sync(st->spi, &st->scan_single_msg);
> - iio_device_release_direct_mode(indio_dev);
> + iio_device_release_direct(indio_dev);
> if (ret < 0)
> return ret;
> *val = be16_to_cpu(st->rx_buf[0]);
next prev parent reply other threads:[~2025-02-19 11:07 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-17 14:16 [PATCH 00/29] IIO: ADCs: Sparse friendly claim of direct mode Jonathan Cameron
2025-02-17 14:16 ` [PATCH 01/29] iio: adc: vf610: Move claim of direct mode to caller of vf610_read_sample and use guard(mutex) Jonathan Cameron
2025-02-17 14:16 ` [PATCH 02/29] iio: adc: vf610: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-17 14:16 ` [PATCH 03/29] iio: adc: ti-ads1100: Use guard(mutex) to allow direct returns Jonathan Cameron
2025-02-17 14:16 ` [PATCH 04/29] iio: adc: ti-ads1100: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-17 14:16 ` [PATCH 05/29] iio: adc: ti-ads1015: Use guard(mutex) and factor out code for INFO_RAW Jonathan Cameron
2025-02-17 14:16 ` [PATCH 06/29] iio: adc: ti-ads1015: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-17 14:16 ` [PATCH 07/29] iio: adc: stm32-dfsdm: Factor out core of reading INFO_RAW Jonathan Cameron
2025-02-18 15:32 ` Olivier MOYSAN
2025-02-17 14:16 ` [PATCH 08/29] iio: adc: stm32-dfsdm: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-18 15:34 ` Olivier MOYSAN
2025-02-17 14:16 ` [PATCH 09/29] iio: adc: ad4030: " Jonathan Cameron
2025-02-19 10:54 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 10/29] iio: adc: ad7192: Factor out core of ad7192_write_raw() to simplify error handling Jonathan Cameron
2025-02-19 10:54 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 11/29] iio: adc: ad7192: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-19 10:55 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 12/29] iio: adc: ad7768-1: Move setting of val a bit later to avoid unnecessary return value check Jonathan Cameron
2025-02-19 10:56 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 13/29] iio: adc: ad7768-1: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-19 10:56 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 14/29] iio: adc: ad7606: " Jonathan Cameron
2025-02-19 10:57 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 15/29] iio: adc: ad7791: Factor out core of ad7791_write_raw() to simplify error handling Jonathan Cameron
2025-02-19 10:59 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 16/29] iio: adc: ad7791: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-19 11:00 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 17/29] iio: adc: ad7793: Factor out core of ad7793_write_raw() to simplify error handling Jonathan Cameron
2025-02-19 11:00 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 18/29] iio: adc: ad7793: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-19 11:01 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 19/29] iio: adc: ad799x: " Jonathan Cameron
2025-02-19 11:02 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 20/29] iio: adc: ad_sigma_delta: " Jonathan Cameron
2025-02-19 11:03 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 21/29] iio: adc: at91-sama5d2: Move claim of direct mode up a level and use guard() Jonathan Cameron
2025-02-19 12:45 ` Claudiu Beznea
2025-02-17 14:16 ` [PATCH 22/29] iio: adc: at91-sama5d2: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-19 12:46 ` Claudiu Beznea
2025-02-17 14:16 ` [PATCH 23/29] iio: adc: max1027: Move claim of direct mode up one level and use guard() Jonathan Cameron
2025-02-17 15:38 ` Miquel Raynal
2025-02-22 13:04 ` Jonathan Cameron
2025-02-17 14:16 ` [PATCH 24/29] iio: adc: max1027: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-17 15:40 ` Miquel Raynal
2025-02-22 13:06 ` Jonathan Cameron
2025-02-17 14:16 ` [PATCH 25/29] iio: adc: max11410: Factor out writing of sampling frequency to simplify errro paths Jonathan Cameron
2025-02-19 11:03 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 26/29] iio: adc: max11410: Switch to sparse friendly iio_device_claim/release_direct() Jonathan Cameron
2025-02-19 11:04 ` Nuno Sá
2025-02-17 14:16 ` [PATCH 27/29] iio: adc: mxs-lradc: " Jonathan Cameron
2025-02-17 14:16 ` [PATCH 28/29] iio: adc: rcar: " Jonathan Cameron
2025-02-17 14:16 ` [PATCH 29/29] iio: adc: " Jonathan Cameron
2025-02-19 11:07 ` Nuno Sá [this message]
2025-02-20 12:47 ` Mike Looijmans
2025-02-22 13:09 ` [PATCH 00/29] IIO: ADCs: Sparse friendly claim of direct mode Jonathan Cameron
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=df8ee3042ac351954ace12afbed8e63f1953fabc.camel@gmail.com \
--to=noname.nuno@gmail.com \
--cc=Frank.Li@nxp.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=alisa.roman@analog.com \
--cc=claudiu.beznea@tuxon.dev \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=marek.vasut+renesas@gmail.com \
--cc=marex@denx.de \
--cc=mike.looijmans@topic.nl \
--cc=miquel.raynal@bootlin.com \
--cc=olivier.moysan@foss.st.com \
--cc=preid@electromag.com.au \
--cc=u.kleine-koenig@baylibre.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