lkml.org 
[lkml]   [2017]   [Sep]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 4/4] iio: light: vl6180: Correct ALS scale for non-default gain/integration time
On Sun, 24 Sep 2017 23:59:20 +0200
Stefan Brüns <stefan.bruens@rwth-aachen.de> wrote:

> The reported scale was only correct for the default settings of 100 ms
> integration time and gain 1.
>
> This aligns the reported scale with the behaviour of any other IIO driver
> and the documented ABI, but may require userspace changes if someone uses
> non-default settings.
>
> Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>

Applied to the togreg branch of iio.git and pushed out as testing for
the autobuilders to play with it.

Whilst this is clearly a fix, it isn't a regression. As such the extent
of the changes mean I've queued this up for the next merge window rather
than going in quicker as a fix.

Thanks,

Jonathan

>
> ---
>
> Changes in v3: None
> Changes in v2: None
>
> drivers/iio/light/vl6180.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/iio/light/vl6180.c b/drivers/iio/light/vl6180.c
> index 49e9f92cd116..67f8beb84fc3 100644
> --- a/drivers/iio/light/vl6180.c
> +++ b/drivers/iio/light/vl6180.c
> @@ -315,9 +315,12 @@ static int vl6180_read_raw(struct iio_dev *indio_dev,
> case IIO_CHAN_INFO_SCALE:
> switch (chan->type) {
> case IIO_LIGHT:
> - *val = 0; /* one ALS count is 0.32 Lux */
> - *val2 = 320000;
> - break;
> + /* one ALS count is 0.32 Lux @ gain 1, IT 100 ms */
> + *val = 32000; /* 0.32 * 1000 * 100 */
> + *val2 = data->als_gain_milli * data->als_it_ms;
> +
> + return IIO_VAL_FRACTIONAL;
> +
> case IIO_DISTANCE:
> *val = 0; /* sensor reports mm, scale to meter */
> *val2 = 1000;

\
 
 \ /
  Last update: 2017-09-30 22:32    [W:0.030 / U:0.284 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site