Message ID | 20240913-add_opt3002-v2-1-69e04f840360@axis.com (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | iio: light: opt3001: add support for TI's opt3002 light sensor | expand |
On Fri, 13 Sep 2024 11:57:02 +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> Applied to the fixes-togreg branch of iio.git and marked for stable. I'll probably send a pull request with this in shortly after rc1. 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, >
On Sat, 2024-09-14 at 17:06 +0100, Jonathan Cameron wrote: > On Fri, 13 Sep 2024 11:57:02 +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> > Applied to the fixes-togreg branch of iio.git and marked for stable. > I'll probably send a pull request with this in shortly after rc1. > > Jonathan > > Great, thank you. Best Regards, Emil
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,
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(+)