On Wed, 4 Dec 2019 12:13:03 +0100 Couret Charles-Antoine <charles-antoine.couret@xxxxxxxxxxxxx> wrote: > Le 04/12/2019 à 12:06, Jonathan Cameron a écrit : > > On Mon, 2 Dec 2019 16:36:19 +0100 > > Couret Charles-Antoine <charles-antoine.couret@xxxxxxxxxxxxx> wrote: > > > >> Le 02/12/2019 à 15:13, Andrea Merello a écrit : > >>> drivers/iio/adc/ad7949.c | 22 +++++++++++++++++----- > >>> 1 file changed, 17 insertions(+), 5 deletions(-) > >>> > >>> diff --git a/drivers/iio/adc/ad7949.c b/drivers/iio/adc/ad7949.c > >>> index 5c2b3446fa4a..2c6f60edb7ce 100644 > >>> --- a/drivers/iio/adc/ad7949.c > >>> +++ b/drivers/iio/adc/ad7949.c > >>> @@ -89,6 +89,7 @@ static int ad7949_spi_read_channel(struct ad7949_adc_chip *ad7949_adc, int *val, > >>> unsigned int channel) > >>> { > >>> int ret; > >>> + int i; > >>> int bits_per_word = ad7949_adc->resolution; > >>> int mask = GENMASK(ad7949_adc->resolution, 0); > >>> struct spi_message msg; > >>> @@ -100,12 +101,23 @@ static int ad7949_spi_read_channel(struct ad7949_adc_chip *ad7949_adc, int *val, > >>> }, > >>> }; > >>> > >>> - ret = ad7949_spi_write_cfg(ad7949_adc, > >>> - channel << AD7949_OFFSET_CHANNEL_SEL, > >>> - AD7949_MASK_CHANNEL_SEL); > >>> - if (ret) > >>> - return ret; > >>> + /* > >>> + * 1: write CFG for sample N and read old data (sample N-2) > >>> + * 2: if CFG was not changed since sample N-1 then we'll get good data > >>> + * at the next xfer, so we bail out now, otherwise we write something > >>> + * and we read garbage (sample N-1 configuration). > >>> + */ > >>> + for (i = 0; i < 2; i++) { > >>> + ret = ad7949_spi_write_cfg(ad7949_adc, > >>> + channel << AD7949_OFFSET_CHANNEL_SEL, > >>> + AD7949_MASK_CHANNEL_SEL); > >>> + if (ret) > >>> + return ret; > >>> + if (channel == ad7949_adc->current_channel) > >>> + break; > >>> + } > >>> > >>> + /* 3: write something and read actual data */ > >>> ad7949_adc->buffer = 0; > >>> spi_message_init_with_transfers(&msg, tx, 1); > >>> ret = spi_sync(ad7949_adc->spi, &msg); > >> Signed-off-by: Charles-Antoine Couret <charles-antoine.couret@xxxxxxxxxxxxx> > > Hi Charles-Antoine, > > > > Why a signed-off-by as opposed to a reviewed-by or similar? > > > > signed-off-by brings some very specific legal implications around Developer > > Certificate of Origin, so is normally just the author plus people involved in > > the path to upstream (maintainers). > > Ah sorry, I made the mistake, I wanted to add: > > Reviewed-by: Charles-Antoine Couret <charles-antoine.couret@xxxxxxxxxxxxx> Great thanks. Applied to the fixes-togreg branch of iio.git. I've also marked it for stable. Thanks, Jonathan > > Regards, > > Charles-Antoine COuret >