[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <04d0345d6c6c4ac0950ab0676ffd7689@SFHDAG2NODE1.st.com>
Date: Mon, 19 Nov 2018 19:04:59 +0000
From: Denis CIOCCA <denis.ciocca@...com>
To: Jian-Hong Pan <jian-hong@...lessm.com>,
Jonathan Cameron <jic23@...nel.org>,
Hartmut Knaack <knaack.h@....de>,
Lars-Peter Clausen <lars@...afoo.de>,
Peter Meerwald-Stadler <pmeerw@...erw.net>,
"Dominique Martinet" <asmadeus@...ewreck.org>
CC: "linux-iio@...r.kernel.org" <linux-iio@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux@...lessm.com" <linux@...lessm.com>
Subject: RE: [PATCH] iio: st_sensors: Fix the sleep time for sampling
Hi Jian,
Not clear to me why should be + instead of *.
ODR is expressed in Hz, so (1/Hz) = period in seconds (1 sample sampling time) [s]
1000 * (1/Hz) = period in milliseconds (1 sample sampling time) [ms]
n * 1000 * (1/Hz) = n times period in milliseconds (n times sample sampling time) [ms]
In your case you assume bootime is in milliseconds. Maybe we can change the comment and use 'number of samples ...'.
Br,
Denis
-----Original Message-----
From: linux-iio-owner@...r.kernel.org <linux-iio-owner@...r.kernel.org> On Behalf Of Jian-Hong Pan
Sent: Sunday, November 18, 2018 10:12 PM
To: Jonathan Cameron <jic23@...nel.org>; Hartmut Knaack <knaack.h@....de>; Lars-Peter Clausen <lars@...afoo.de>; Peter Meerwald-Stadler <pmeerw@...erw.net>; Dominique Martinet <asmadeus@...ewreck.org>
Cc: linux-iio@...r.kernel.org; linux-kernel@...r.kernel.org; linux@...lessm.com; Jian-Hong Pan <jian-hong@...lessm.com>
Subject: [PATCH] iio: st_sensors: Fix the sleep time for sampling
According to the description of st_sensor_settings and st_sensor_data structures' comments:
- bootime: samples to discard when sensor passing from power-down to power-up.
- odr: Output data rate of the sensor [Hz].
The sleep time should be
sdata->sensor_settings->bootime + 1000 / sdata->odr ms.
Signed-off-by: Jian-Hong Pan <jian-hong@...lessm.com>
---
drivers/iio/common/st_sensors/st_sensors_core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/iio/common/st_sensors/st_sensors_core.c b/drivers/iio/common/st_sensors/st_sensors_core.c
index 26fbd1bd9413..6b87ea657a92 100644
--- a/drivers/iio/common/st_sensors/st_sensors_core.c
+++ b/drivers/iio/common/st_sensors/st_sensors_core.c
@@ -594,7 +594,7 @@ int st_sensors_read_info_raw(struct iio_dev *indio_dev,
if (err < 0)
goto out;
- msleep((sdata->sensor_settings->bootime * 1000) / sdata->odr);
+ msleep(sdata->sensor_settings->bootime + 1000 / sdata->odr);
err = st_sensors_read_axis_data(indio_dev, ch, val);
if (err < 0)
goto out;
--
2.11.0
Powered by blists - more mailing lists