[PATCH] iio: adc: max11410: fix incomplete vref buffer mask

Ibrahim Tilki posted 1 patch 3 years, 4 months ago
drivers/iio/adc/max11410.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] iio: adc: max11410: fix incomplete vref buffer mask
Posted by Ibrahim Tilki 3 years, 4 months ago
VREFP bit was missing from channel configuration mask and VREFN bit was
included twice instead which fails to enable positive reference buffer when
requested by a channel. Channels that don't enable vrefp buffer were not
affected.

Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Ibrahim Tilki <Ibrahim.Tilki@analog.com>
---
 drivers/iio/adc/max11410.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/adc/max11410.c b/drivers/iio/adc/max11410.c
index 8cd5663671..fdc9f03135 100644
--- a/drivers/iio/adc/max11410.c
+++ b/drivers/iio/adc/max11410.c
@@ -370,7 +370,7 @@ static int max11410_configure_channel(struct max11410_state *st,
 		 FIELD_PREP(MAX11410_CTRL_UNIPOLAR_BIT, cfg.bipolar ? 0 : 1);
 	ret = regmap_update_bits(st->regmap, MAX11410_REG_CTRL,
 				 MAX11410_CTRL_REFSEL_MASK |
-				 MAX11410_CTRL_VREFN_BUF_BIT |
+				 MAX11410_CTRL_VREFP_BUF_BIT |
 				 MAX11410_CTRL_VREFN_BUF_BIT |
 				 MAX11410_CTRL_UNIPOLAR_BIT, regval);
 	if (ret)
-- 
2.25.1
Re: [PATCH] iio: adc: max11410: fix incomplete vref buffer mask
Posted by Jonathan Cameron 3 years, 4 months ago
On Tue, 22 Nov 2022 14:47:18 +0300
Ibrahim Tilki <Ibrahim.Tilki@analog.com> wrote:

> VREFP bit was missing from channel configuration mask and VREFN bit was
> included twice instead which fails to enable positive reference buffer when
> requested by a channel. Channels that don't enable vrefp buffer were not
> affected.
> 
> Reported-by: kernel test robot <lkp@intel.com>
> Reported-by: Julia Lawall <julia.lawall@lip6.fr>
> Signed-off-by: Ibrahim Tilki <Ibrahim.Tilki@analog.com>
Applied and I added a fixes tag (given I've just rebased for a broken fixes tag
I'm glad you didn't as it would have been wrong anyway!)

Thanks,

Jonathan

> ---
>  drivers/iio/adc/max11410.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/adc/max11410.c b/drivers/iio/adc/max11410.c
> index 8cd5663671..fdc9f03135 100644
> --- a/drivers/iio/adc/max11410.c
> +++ b/drivers/iio/adc/max11410.c
> @@ -370,7 +370,7 @@ static int max11410_configure_channel(struct max11410_state *st,
>  		 FIELD_PREP(MAX11410_CTRL_UNIPOLAR_BIT, cfg.bipolar ? 0 : 1);
>  	ret = regmap_update_bits(st->regmap, MAX11410_REG_CTRL,
>  				 MAX11410_CTRL_REFSEL_MASK |
> -				 MAX11410_CTRL_VREFN_BUF_BIT |
> +				 MAX11410_CTRL_VREFP_BUF_BIT |
>  				 MAX11410_CTRL_VREFN_BUF_BIT |
>  				 MAX11410_CTRL_UNIPOLAR_BIT, regval);
>  	if (ret)