On Sat, 11 Aug 2018 15:56:36 +0530 Himanshu Jha <himanshujha199640@xxxxxxxxx> wrote: > val2 is responsible for the floating part of the number to be > written to the device. We don't need the floating part > while writing the oversampling ratio for BME680 since the > available oversampling ratios are pure natural numbers. > > So, add a sanity check to make sure val2 is 0. > > Signed-off-by: Himanshu Jha <himanshujha199640@xxxxxxxxx> As discussed in David's patch series v3, I think this is still relevant but now needs an update to cover the new code. Thanks, Jonathan > --- > drivers/iio/chemical/bme680_core.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/iio/chemical/bme680_core.c b/drivers/iio/chemical/bme680_core.c > index 7d9bb62baa3f..9d5a05e054d1 100644 > --- a/drivers/iio/chemical/bme680_core.c > +++ b/drivers/iio/chemical/bme680_core.c > @@ -852,6 +852,9 @@ static int bme680_write_raw(struct iio_dev *indio_dev, > { > struct bme680_data *data = iio_priv(indio_dev); > > + if (val2 != 0) > + return -EINVAL; > + > switch (mask) { > case IIO_CHAN_INFO_OVERSAMPLING_RATIO: > switch (chan->type) {