TI's opt3002 light-to-digital sensor provides the functionality
of an optical power meter within a single device. It shares a lot of
similarities with their opt3001 model but has a wide spectral bandwidth,
ranging from 300 nm to 1000 nm.
This patch set adds support for the TI opt3002 by extending the opt3001
driver. In addition, a missing full-scale range value for the opt3001 is
added, resulting in higher precision when setting event trigger values.
Datasheet: http://www.ti.com/product/OPT3002
Signed-off-by: Emil Gedenryd <emil.gedenryd@axis.com>
---
Changes in v2:
- Move dt-binding patch to before implementation.
- Fix dt-binding compatible definition.
- Clarify bug description for missing full-scale range value.
- Remove model enum from chip info and all in-function switch-case
statements.
- Move model-specific channels and mathematic constants to chip info.
- Add valid match data to opt3001_id array
- Skip call to function opt3001_read_id() if model doesn't have a device
id register.
- Link to v1: https://lore.kernel.org/r/20240905-add_opt3002-v1-0-a5ae21b924fb@axis.com
---
Emil Gedenryd (3):
iio: light: opt3001: add missing full-scale range value
dt-bindings: iio: light: opt3001: add compatible for opt3002
iio: light: opt3001: add support for TI's opt3002 light sensor
.../devicetree/bindings/iio/light/ti,opt3001.yaml | 4 +-
drivers/iio/light/Kconfig | 2 +-
drivers/iio/light/opt3001.c | 173 +++++++++++++++++----
3 files changed, 145 insertions(+), 34 deletions(-)
---
base-commit: 5be63fc19fcaa4c236b307420483578a56986a37
change-id: 20240828-add_opt3002-40552c1a2f77
Best regards,
--
Emil Gedenryd <emil.gedenryd@axis.com>