[PATCH v3 1/3] iio: light: opt3001: add missing full-scale range value

Emil Gedenryd posted 3 patches 2 months, 2 weeks ago
There is a newer version of this series
[PATCH v3 1/3] iio: light: opt3001: add missing full-scale range value
Posted by Emil Gedenryd 2 months, 2 weeks ago
The opt3001 driver uses predetermined full-scale range values to
determine what exponent to use for event trigger threshold values.
The problem is that one of the values specified in the datasheet is
missing from the implementation. This causes larger values to be
scaled down to an incorrect exponent, effectively reducing the
maximum settable threshold value by a factor of 2.

Add missing full-scale range array value.

Fixes: 94a9b7b1809f ("iio: light: add support for TI's opt3001 light sensor")
Signed-off-by: Emil Gedenryd <emil.gedenryd@axis.com>
---
 drivers/iio/light/opt3001.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/iio/light/opt3001.c b/drivers/iio/light/opt3001.c
index 887c4b776a86..176e54bb48c3 100644
--- a/drivers/iio/light/opt3001.c
+++ b/drivers/iio/light/opt3001.c
@@ -138,6 +138,10 @@ static const struct opt3001_scale opt3001_scales[] = {
 		.val = 20966,
 		.val2 = 400000,
 	},
+	{
+		.val = 41932,
+		.val2 = 800000,
+	},
 	{
 		.val = 83865,
 		.val2 = 600000,

-- 
2.39.2
Re: [PATCH v3 1/3] iio: light: opt3001: add missing full-scale range value
Posted by Jonathan Cameron 2 months ago
On Mon, 16 Sep 2024 16:56:37 +0200
Emil Gedenryd <emil.gedenryd@axis.com> wrote:

> The opt3001 driver uses predetermined full-scale range values to
> determine what exponent to use for event trigger threshold values.
> The problem is that one of the values specified in the datasheet is
> missing from the implementation. This causes larger values to be
> scaled down to an incorrect exponent, effectively reducing the
> maximum settable threshold value by a factor of 2.
> 
> Add missing full-scale range array value.
> 
> Fixes: 94a9b7b1809f ("iio: light: add support for TI's opt3001 light sensor")
> Signed-off-by: Emil Gedenryd <emil.gedenryd@axis.com>
This one is already queued up, so you can drop it from future
versions of this series posted for review.

Thanks,

Jonathan

> ---
>  drivers/iio/light/opt3001.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/iio/light/opt3001.c b/drivers/iio/light/opt3001.c
> index 887c4b776a86..176e54bb48c3 100644
> --- a/drivers/iio/light/opt3001.c
> +++ b/drivers/iio/light/opt3001.c
> @@ -138,6 +138,10 @@ static const struct opt3001_scale opt3001_scales[] = {
>  		.val = 20966,
>  		.val2 = 400000,
>  	},
> +	{
> +		.val = 41932,
> +		.val2 = 800000,
> +	},
>  	{
>  		.val = 83865,
>  		.val2 = 600000,
>
Re: [PATCH v3 1/3] iio: light: opt3001: add missing full-scale range value
Posted by Emil Gedenryd 2 months ago
On Sat, 2024-09-28 at 16:57 +0100, Jonathan Cameron wrote:
> On Mon, 16 Sep 2024 16:56:37 +0200
> Emil Gedenryd <emil.gedenryd@axis.com> wrote:
> 
> > The opt3001 driver uses predetermined full-scale range values to
> > determine what exponent to use for event trigger threshold values.
> > The problem is that one of the values specified in the datasheet is
> > missing from the implementation. This causes larger values to be
> > scaled down to an incorrect exponent, effectively reducing the
> > maximum settable threshold value by a factor of 2.
> > 
> > Add missing full-scale range array value.
> > 
> > Fixes: 94a9b7b1809f ("iio: light: add support for TI's opt3001 light sensor")
> > Signed-off-by: Emil Gedenryd <emil.gedenryd@axis.com>
> This one is already queued up, so you can drop it from future
> versions of this series posted for review.
> 
> Thanks,
> 
> Jonathan

Okay, I'll leave it out in the future.

Thanks,
Emil