[PATCH 4.14 082/217] iio: pressure: bmp280: fix relative humidity unit

Greg Kroah-Hartman
2018-08-23T08:22:30Z

From: Tomasz Duszynski <tduszyns@gmail.com>

[ Upstream commit 13399ff25f179811ce9c1df1523eb39f9e4a4772 ]

According to IIO ABI relative humidity reading should be
returned in milli percent.

This patch addresses that by applying proper scaling and
returning integer instead of fractional format type specifier.

Note that the fixes tag is before the driver was heavily refactored
to introduce spi support, so the patch won't apply that far back.

Signed-off-by: Tomasz Duszynski <tduszyns@gmail.com>
Fixes: 14beaa8f5ab1 ("iio: pressure: bmp280: add humidity support")
Acked-by: Matt Ranostay <matt.ranostay@konsulko.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/iio/pressure/bmp280-core.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

--- a/drivers/iio/pressure/bmp280-core.c
+++ b/drivers/iio/pressure/bmp280-core.c
@@ -362,10 +362,9 @@ static int bmp280_read_humid(struct bmp2
}
comp_humidity = bmp280_compensate_humidity(data, adc_humidity);

- *val = comp_humidity;
- *val2 = 1024;
+ *val = comp_humidity * 1000 / 1024;

- return IIO_VAL_FRACTIONAL;
+ return IIO_VAL_INT;
}

static int bmp280_read_raw(struct iio_dev *indio_dev,