]> git.hungrycats.org Git - linux/commitdiff
iio: pressure: bmp280: Fix waiting time for BMP3xx configuration
authorVasileios Amoiridis <vassilisamir@gmail.com>
Thu, 11 Jul 2024 21:15:50 +0000 (23:15 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Oct 2024 10:01:12 +0000 (12:01 +0200)
[ Upstream commit 262a6634bcc4f0c1c53d13aa89882909f281a6aa ]

According to the datasheet, both pressure and temperature can go up to
oversampling x32. With this option, the maximum measurement time is not
80ms (this is for press x32 and temp x2), but it is 130ms nominal
(calculated from table 3.9.2) and since most of the maximum values
are around +15%, it is configured to 150ms.

Fixes: 8d329309184d ("iio: pressure: bmp280: Add support for BMP380 sensor family")
Signed-off-by: Vasileios Amoiridis <vassilisamir@gmail.com>
Link: https://patch.msgid.link/20240711211558.106327-3-vassilisamir@gmail.com
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/iio/pressure/bmp280-core.c

index 55ea708489b6658e2092d4bca3e2be15f52f31fa..1549f361a473fe205c3a2b9a0b86147c6f964873 100644 (file)
@@ -1204,10 +1204,11 @@ static int bmp380_chip_config(struct bmp280_data *data)
                }
                /*
                 * Waits for measurement before checking configuration error
-                * flag. Selected longest measure time indicated in
-                * section 3.9.1 in the datasheet.
+                * flag. Selected longest measurement time, calculated from
+                * formula in datasheet section 3.9.2 with an offset of ~+15%
+                * as it seen as well in table 3.9.1.
                 */
-               msleep(80);
+               msleep(150);
 
                /* Check config error flag */
                ret = regmap_read(data->regmap, BMP380_REG_ERROR, &tmp);