xref: /linux/Documentation/devicetree/bindings/iio/light/vishay,veml6030.yaml (revision 7f71507851fc7764b36a3221839607d3a45c2025)
1# SPDX-License-Identifier: GPL-2.0+
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/light/vishay,veml6030.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: VEML3235, VEML6030, VEML6035 and VEML7700 Ambient Light Sensors (ALS)
8
9maintainers:
10  - Rishi Gupta <gupt21@gmail.com>
11
12description: |
13  Bindings for the ambient light sensors veml6030 and veml6035 from
14  Vishay Semiconductors over an i2c interface.
15
16  Irrespective of whether interrupt is used or not, application
17  can get the ALS and White channel reading from IIO raw interface.
18
19  If the interrupts are used, application will receive an IIO event
20  whenever configured threshold is crossed.
21
22  Specifications about the sensors can be found at:
23    https://www.vishay.com/docs/80131/veml3235.pdf
24    https://www.vishay.com/docs/84366/veml6030.pdf
25    https://www.vishay.com/docs/84889/veml6035.pdf
26    https://www.vishay.com/docs/84286/veml7700.pdf
27
28properties:
29  compatible:
30    enum:
31      - vishay,veml3235
32      - vishay,veml6030
33      - vishay,veml6035
34      - vishay,veml7700
35
36  reg:
37    maxItems: 1
38
39  interrupts:
40    description:
41      interrupt mapping for IRQ. Configure with IRQ_TYPE_LEVEL_LOW.
42      Refer to interrupt-controller/interrupts.txt for generic
43      interrupt client node bindings.
44    maxItems: 1
45
46  vdd-supply: true
47
48required:
49  - compatible
50  - reg
51  - vdd-supply
52
53allOf:
54  - if:
55      properties:
56        compatible:
57          enum:
58            - vishay,veml6030
59    then:
60      properties:
61        reg:
62          enum:
63            - 0x10  # ADDR pin pulled down
64            - 0x48  # ADDR pin pulled up
65
66  - if:
67      properties:
68        compatible:
69          enum:
70            - vishay,veml6035
71    then:
72      properties:
73        reg:
74          enum:
75            - 0x29
76
77  - if:
78      properties:
79        compatible:
80          enum:
81            - vishay,veml3235
82            - vishay,veml7700
83    then:
84      properties:
85        reg:
86          enum:
87            - 0x10
88        interrupts: false
89
90additionalProperties: false
91
92examples:
93  - |
94    #include <dt-bindings/interrupt-controller/irq.h>
95
96    i2c {
97        #address-cells = <1>;
98        #size-cells = <0>;
99
100        light-sensor@10 {
101                compatible = "vishay,veml6030";
102                reg = <0x10>;
103                interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
104                vdd-supply = <&vdd>;
105        };
106    };
107...
108