lkml.org 
[lkml]   [2020]   [Apr]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] iio: bmp280: fix compensation of humidity
Output of humidity compensation is limited to the range between 0 and 100
percent. Add this to the compensation formula as described in the datasheet
chapter 4.2.3.

Signed-off-by: Andreas Klinger <ak@it-klinger.de>
---
drivers/iio/pressure/bmp280-core.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/iio/pressure/bmp280-core.c b/drivers/iio/pressure/bmp280-core.c
index 29c209cc1108..ac9ef1b63b07 100644
--- a/drivers/iio/pressure/bmp280-core.c
+++ b/drivers/iio/pressure/bmp280-core.c
@@ -271,6 +271,9 @@ static u32 bmp280_compensate_humidity(struct bmp280_data *data,
+ (s32)2097152) * calib->H2 + 8192) >> 14);
var -= ((((var >> 15) * (var >> 15)) >> 7) * (s32)calib->H1) >> 4;

+ var = var < 0 ? 0 : var;
+ var = var > 419430400 ? 419430400 : var;
+
return var >> 12;
};

--
2.20.1
\
 
 \ /
  Last update: 2020-04-27 16:01    [W:0.049 / U:0.252 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site