On Wed, Dec 15, 2021 at 10:03 PM Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote: > > This is an internal variable of the core, let's use the > iio_buffer_enabled() helper which is exported for the following purpose: > telling if the current mode is a buffered mode, which is precisely what > this driver looks for. > > Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx> > --- > drivers/iio/adc/stm32-dfsdm-adc.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/drivers/iio/adc/stm32-dfsdm-adc.c b/drivers/iio/adc/stm32-dfsdm-adc.c > index 1cfefb3b5e56..a3b8827d3bbf 100644 > --- a/drivers/iio/adc/stm32-dfsdm-adc.c > +++ b/drivers/iio/adc/stm32-dfsdm-adc.c > @@ -466,8 +466,7 @@ static int stm32_dfsdm_channels_configure(struct iio_dev *indio_dev, > * In continuous mode, use fast mode configuration, > * if it provides a better resolution. > */ > - if (adc->nconv == 1 && !trig && > - (indio_dev->currentmode & INDIO_BUFFER_SOFTWARE)) { > + if (adc->nconv == 1 && !trig && iio_buffer_enabled(indio_dev)) { This may become tricky if other modes get added later. STM does a relatively good job in updating and re-using their drivers (even if some of them do look quirky sometimes). So, the question here would be: is "iio_buffer_enabled(indio_dev)" going to be valid [in this place] once INDIO_BUFFER_TRIGGERED or INDIO_BUFFER_HARDWARE get added? I'd also ping some STM people for some feedback, acks or testing. > if (fl->flo[1].res >= fl->flo[0].res) { > fl->fast = 1; > flo = &fl->flo[1]; > @@ -562,7 +561,7 @@ static int stm32_dfsdm_filter_configure(struct iio_dev *indio_dev, > cr1 = DFSDM_CR1_RCH(chan->channel); > > /* Continuous conversions triggered by SPI clk in buffer mode */ > - if (indio_dev->currentmode & INDIO_BUFFER_SOFTWARE) > + if (iio_buffer_enabled(indio_dev)) > cr1 |= DFSDM_CR1_RCONT(1); > > cr1 |= DFSDM_CR1_RSYNC(fl->sync_mode); > -- > 2.27.0 >