Re: [PATCH] iio: frequency: admv1013: fix wrong channel field used in admv1013_read_raw()

Jonathan Cameron <[email protected]>
Newsgroups org.kernel.vger.linux-iio,org.kernel.vger.linux-kernel
Message-ID <20260823020419.32c7731d@jic23-huawei>
On Wed, 19 Aug 2026 18:51:19 +0100
Salah Triki <[email protected]> wrote:

> admv1013_read_raw() switches on chan->channel instead of
> chan->channel2 when handling IIO_CHAN_INFO_CALIBBIAS. The channel
> field only ever holds 0 or 1 (see ADMV1013_CHAN_CALIB()), while the
> IIO_MOD_I / IIO_MOD_Q modifiers are stored in channel2. As a result,
> the switch always falls through to the default case and calibbias
> reads always fail with -EINVAL, even though the corresponding
> admv1013_write_raw() path correctly uses channel2 and works as
> expected.
> 
> Fix the read path to switch on chan->channel2, matching the write
> path and the actual channel_spec definition.
> 
> Fixes: da35a7b526d9 ("iio: frequency: admv1013: add support for ADMV1013")
> Signed-off-by: Salah Triki <[email protected]>
This one is 'obviously correct' enough that I'll not wait long to apply it

Applied to the fixes-togreg branch of iio.git

Thanks

Jonathan

> ---
>  drivers/iio/frequency/admv1013.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/frequency/admv1013.c b/drivers/iio/frequency/admv1013.c
> index b823adfb0f70..bb06a94ccc50 100644
> --- a/drivers/iio/frequency/admv1013.c
> +++ b/drivers/iio/frequency/admv1013.c
> @@ -195,7 +195,7 @@ static int admv1013_read_raw(struct iio_dev *indio_dev,
>  
>  	switch (info) {
>  	case IIO_CHAN_INFO_CALIBBIAS:
> -		switch (chan->channel) {
> +		switch (chan->channel2) {
>  		case IIO_MOD_I:
>  			addr = ADMV1013_REG_OFFSET_ADJUST_I;
>  			break;
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.