Re: [PATCH] iio: adc: ad_sigma_delta: change to buffer predisable

From: Jonathan Cameron
Date: Sun Jul 06 2025 - 06:34:22 EST


On Fri, 04 Jul 2025 13:43:59 +0100
Nuno Sá <noname.nuno@xxxxxxxxx> wrote:

> On Thu, 2025-07-03 at 16:07 -0500, David Lechner wrote:
> > Change the buffer disable callback from postdisable to predisable.
> > This balances the existing posteanble callback. Using postdisable
> > with posteanble can be problematic, for example, if update_scan_mode
> > fails, it would call postdisable without ever having called posteanble,
> > so the drivers using this would be in an unexpected state when
> > postdisable was called.
> >
> > Fixes: af3008485ea0 ("iio:adc: Add common code for ADI Sigma Delta devices")
> > Signed-off-by: David Lechner <dlechner@xxxxxxxxxxxx>
> > ---
>
> Reviewed-by: Nuno Sá <nuno.sa@xxxxxxxxxx>
Applied to the fixes-togreg branch of iio.git and marked for stable.


>
> >  drivers/iio/adc/ad_sigma_delta.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/iio/adc/ad_sigma_delta.c
> > b/drivers/iio/adc/ad_sigma_delta.c
> > index
> > 4c5f8d29a559fea7226b84141bcb148fb801f62c..1a2ee7c7f65afc60677af9f3138e59f6476f
> > 74c7 100644
> > --- a/drivers/iio/adc/ad_sigma_delta.c
> > +++ b/drivers/iio/adc/ad_sigma_delta.c
> > @@ -520,7 +520,7 @@ static int ad_sd_buffer_postenable(struct iio_dev
> > *indio_dev)
> >   return ret;
> >  }
> >  
> > -static int ad_sd_buffer_postdisable(struct iio_dev *indio_dev)
> > +static int ad_sd_buffer_predisable(struct iio_dev *indio_dev)
> >  {
> >   struct ad_sigma_delta *sigma_delta =
> > iio_device_get_drvdata(indio_dev);
> >  
> > @@ -644,7 +644,7 @@ static bool ad_sd_validate_scan_mask(struct iio_dev
> > *indio_dev, const unsigned l
> >  
> >  static const struct iio_buffer_setup_ops ad_sd_buffer_setup_ops = {
> >   .postenable = &ad_sd_buffer_postenable,
> > - .postdisable = &ad_sd_buffer_postdisable,
> > + .predisable = &ad_sd_buffer_predisable,
> >   .validate_scan_mask = &ad_sd_validate_scan_mask,
> >  };
> >  
> >
> > ---
> > base-commit: 6742eff60460e77158d4f1b233f17e0345c9e66a
> > change-id: 20250703-iio-adc-ad_sigma_delta-buffer-predisable-d10fc1914092
> >
> > Best regards,