The veml6035 is a similar ambient light sensor to the veml6030, and
from the bindings point of view, it shares the same properties. Its
only difference in that respect is a different I2C address.
Estend the existing bindings to support the veml6035 ALS.
Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com>
---
.../bindings/iio/light/vishay,veml6030.yaml | 40 +++++++++++++++++-----
1 file changed, 31 insertions(+), 9 deletions(-)
diff --git a/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml b/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml
index 7f4995557570..f88e043d7ede 100644
--- a/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml
+++ b/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml
@@ -4,14 +4,14 @@
$id: http://devicetree.org/schemas/iio/light/vishay,veml6030.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
-title: VEML6030 Ambient Light Sensor (ALS)
+title: VEML6030 and VEML6035 Ambient Light Sensors (ALS)
maintainers:
- Rishi Gupta <gupt21@gmail.com>
description: |
- Bindings for the ambient light sensor veml6030 from Vishay
- Semiconductors over an i2c interface.
+ Bindings for the ambient light sensors veml6030 and veml6035 from
+ Vishay Semiconductors over an i2c interface.
Irrespective of whether interrupt is used or not, application
can get the ALS and White channel reading from IIO raw interface.
@@ -19,20 +19,18 @@ description: |
If the interrupts are used, application will receive an IIO event
whenever configured threshold is crossed.
- Specifications about the sensor can be found at:
+ Specifications about the sensors can be found at:
https://www.vishay.com/docs/84366/veml6030.pdf
+ https://www.vishay.com/docs/84889/veml6035.pdf
properties:
compatible:
enum:
- vishay,veml6030
+ - vishay,veml6035
reg:
- description:
- I2C address of the device.
- enum:
- - 0x10 # ADDR pin pulled down
- - 0x48 # ADDR pin pulled up
+ maxItems: 1
interrupts:
description:
@@ -45,6 +43,30 @@ required:
- compatible
- reg
+allOf:
+ - if:
+ properties:
+ compatible:
+ enum:
+ - vishay,veml6030
+ then:
+ properties:
+ reg:
+ enum:
+ - 0x10 # ADDR pin pulled down
+ - 0x48 # ADDR pin pulled up
+
+ - if:
+ properties:
+ compatible:
+ enum:
+ - vishay,veml6035
+ then:
+ properties:
+ reg:
+ enum:
+ - 0x29
+
additionalProperties: false
examples:
--
2.43.0
On Fri, Sep 13, 2024 at 03:18:57PM +0200, Javier Carrasco wrote: > The veml6035 is a similar ambient light sensor to the veml6030, and > from the bindings point of view, it shares the same properties. Its > only difference in that respect is a different I2C address. > > Estend the existing bindings to support the veml6035 ALS. > > Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com> > --- > .../bindings/iio/light/vishay,veml6030.yaml | 40 +++++++++++++++++----- > 1 file changed, 31 insertions(+), 9 deletions(-) > > diff --git a/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml b/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml > index 7f4995557570..f88e043d7ede 100644 > --- a/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml > +++ b/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml > @@ -4,14 +4,14 @@ > $id: http://devicetree.org/schemas/iio/light/vishay,veml6030.yaml# > $schema: http://devicetree.org/meta-schemas/core.yaml# > > -title: VEML6030 Ambient Light Sensor (ALS) > +title: VEML6030 and VEML6035 Ambient Light Sensors (ALS) > > maintainers: > - Rishi Gupta <gupt21@gmail.com> > > description: | > - Bindings for the ambient light sensor veml6030 from Vishay > - Semiconductors over an i2c interface. > + Bindings for the ambient light sensors veml6030 and veml6035 from > + Vishay Semiconductors over an i2c interface. > > Irrespective of whether interrupt is used or not, application > can get the ALS and White channel reading from IIO raw interface. > @@ -19,20 +19,18 @@ description: | > If the interrupts are used, application will receive an IIO event > whenever configured threshold is crossed. > > - Specifications about the sensor can be found at: > + Specifications about the sensors can be found at: > https://www.vishay.com/docs/84366/veml6030.pdf > + https://www.vishay.com/docs/84889/veml6035.pdf > > properties: > compatible: > enum: > - vishay,veml6030 > + - vishay,veml6035 > > reg: > - description: > - I2C address of the device. > - enum: > - - 0x10 # ADDR pin pulled down > - - 0x48 # ADDR pin pulled up > + maxItems: 1 > > interrupts: > description: > @@ -45,6 +43,30 @@ required: > - compatible > - reg > > +allOf: > + - if: > + properties: > + compatible: > + enum: > + - vishay,veml6030 > + then: > + properties: > + reg: > + enum: > + - 0x10 # ADDR pin pulled down > + - 0x48 # ADDR pin pulled up Ordinarily, I'd say that enforcing the reg properties isn't really needed, but I think in this case the extra detail in the comments makes it worth retaining. Acked-by: Conor Dooley <conor.dooley@microchip.com> > + > + - if: > + properties: > + compatible: > + enum: > + - vishay,veml6035 > + then: > + properties: > + reg: > + enum: > + - 0x29 > + > additionalProperties: false > > examples: > > -- > 2.43.0 >
© 2016 - 2024 Red Hat, Inc.