On Sun, Dec 15, 2019 at 7:53 AM Jonathan Cameron <jic23@xxxxxxxxxxxxxxxxxxxxx> wrote: > > On Tue, 10 Dec 2019 16:03:30 -0500 > Sasha Levin <sashal@xxxxxxxxxx> wrote: > > > From: Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx> > > > > [ Upstream commit 0c8a6e72f3c04bfe92a64e5e0791bfe006aabe08 ] > > > > The iio_triggered_buffer_{predisable,postenable} functions attach/detach > > the poll functions. > > > > The iio_triggered_buffer_predisable() should be called last, to detach the > > poll func after the devices has been suspended. > > > > The position of iio_triggered_buffer_postenable() is correct. > > > > Note this is not stable material. It's a fix in the logical > > model rather fixing an actual bug. These are being tidied up > > throughout the subsystem to allow more substantial rework that > > was blocked by variations in how things were done. > > See comment. This is not what I would consider stable material. > Outside of the comment, which really isn't probably enough to avoid the autoselection script from detecting it (could be "stable" in the message alone selects it :) ), is there any way to signal that a patch is "NOT for stable trees"? Probably don't want to clutter up the commit messages of course. - Matt > > > > Signed-off-by: Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx> > > Acked-by: Matt Ranostay <matt.ranostay@xxxxxxxxxxxx> > > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> > > --- > > drivers/iio/chemical/atlas-ph-sensor.c | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/iio/chemical/atlas-ph-sensor.c b/drivers/iio/chemical/atlas-ph-sensor.c > > index 3a20cb5d9bffc..6c175eb1c7a7f 100644 > > --- a/drivers/iio/chemical/atlas-ph-sensor.c > > +++ b/drivers/iio/chemical/atlas-ph-sensor.c > > @@ -323,16 +323,16 @@ static int atlas_buffer_predisable(struct iio_dev *indio_dev) > > struct atlas_data *data = iio_priv(indio_dev); > > int ret; > > > > - ret = iio_triggered_buffer_predisable(indio_dev); > > + ret = atlas_set_interrupt(data, false); > > if (ret) > > return ret; > > > > - ret = atlas_set_interrupt(data, false); > > + pm_runtime_mark_last_busy(&data->client->dev); > > + ret = pm_runtime_put_autosuspend(&data->client->dev); > > if (ret) > > return ret; > > > > - pm_runtime_mark_last_busy(&data->client->dev); > > - return pm_runtime_put_autosuspend(&data->client->dev); > > + return iio_triggered_buffer_predisable(indio_dev); > > } > > > > static const struct iio_trigger_ops atlas_interrupt_trigger_ops = { >