Re: [PATCH] iio: adc: ad4170-4: Correctly update filter_fs after filter type change
From: Marcelo Schmitt
Date: Sun Jul 20 2025 - 09:31:00 EST
On 07/20, Markus Elfring wrote:
> …
> > +++ b/drivers/iio/adc/ad4170-4.c
> > @@ -880,10 +880,12 @@ static int ad4170_set_filter_type(struct iio_dev *indio_dev,
> > return -EBUSY;
> >
> > if (val == AD4170_SINC5_AVG || val == AD4170_SINC3)
> > - setup->filter_fs = clamp(val, AD4170_SINC3_MIN_FS,
> > + setup->filter_fs = clamp(setup->filter_fs,
> > + AD4170_SINC3_MIN_FS,
> > AD4170_SINC3_MAX_FS);
> > else
> > - setup->filter_fs = clamp(val, AD4170_SINC5_MIN_FS,
> > + setup->filter_fs = clamp(setup->filter_fs,
> > + AD4170_SINC5_MIN_FS,
> > AD4170_SINC5_MAX_FS);
> >
> > setup->filter &= ~AD4170_FILTER_FILTER_TYPE_MSK;
>
> How do you think about to use the following code variant?
>
> setup->filter_fs = (val == AD4170_SINC5_AVG || val == AD4170_SINC3)
> ? clamp(setup->filter_fs,
> AD4170_SINC3_MIN_FS, AD4170_SINC3_MAX_FS)
> : clamp(setup->filter_fs,
> AD4170_SINC5_MIN_FS, AD4170_SINC5_MAX_FS);
>
Looks good to me.
I'll send v2 with that.
Thanks,
Marcelo