Re: [PATCH v4 1/9] iio: temperature: ltc2983: Fix n_wires default bypassing rotation check
From: Jonathan Cameron
Date: Wed May 27 2026 - 12:20:48 EST
On Mon, 25 May 2026 19:39:28 +0300
Liviu Stan <liviu.stan@xxxxxxxxxx> wrote:
> When adi,number-of-wires is absent, n_wires is left at 0. The binding
> documents a default of 2 wires, matching the hardware default. However
> the current-rotate validation checks n_wires == 2 || n_wires == 3, so
> with n_wires = 0 the guard is bypassed and adi,current-rotate is accepted
> for a 2-wire RTD.
>
> Initialize n_wires = 2 to match the binding default and ensure the
> rotation check fires correctly when the property is absent.
>
> Fixes: f110f3188e56 ("iio: temperature: Add support for LTC2983")
> Signed-off-by: Liviu Stan <liviu.stan@xxxxxxxxxx>
Applied and marked for stable. I vaguely wondered if the stable
marking was worthwhile given this is a driver validating dt failure
so shouldn't happen with valid dt. Ah well, it's simple and obviously
correct so I'll mark it, but will take it via the slow path so we don't
stop the rest of the series moving forwards.
Hence applied to the testing branch of iio.git.
Thanks,
Jonathan
> ---
> Changes in v4:
> - Moved to the front of the series
>
> drivers/iio/temperature/ltc2983.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iio/temperature/ltc2983.c b/drivers/iio/temperature/ltc2983.c
> index 38e6f8dfd3b8..1f835e326b93 100644
> --- a/drivers/iio/temperature/ltc2983.c
> +++ b/drivers/iio/temperature/ltc2983.c
> @@ -741,7 +741,7 @@ ltc2983_rtd_new(const struct fwnode_handle *child, struct ltc2983_data *st,
> struct ltc2983_rtd *rtd;
> int ret = 0;
> struct device *dev = &st->spi->dev;
> - u32 excitation_current = 0, n_wires = 0;
> + u32 excitation_current = 0, n_wires = 2;
>
> rtd = devm_kzalloc(dev, sizeof(*rtd), GFP_KERNEL);
> if (!rtd)