On Fri, 17 Nov 2023 13:15:52 +0530 Anshul Dalal <anshulusr@xxxxxxxxx> wrote: > Add binding for Lite-On LTR390 which is an Ambient/UV light sensor that > communicates over i2c with an address of 0x53. > > Datasheet: > https://optoelectronics.liteon.com/upload/download/DS86-2015-0004/LTR-390UV_Final_%20DS_V1%201.pdf > > Signed-off-by: Anshul Dalal <anshulusr@xxxxxxxxx> > --- > > Changes for v2: > - Added missing properties in the example > --- > .../bindings/iio/light/liteon,ltr390.yaml | 56 +++++++++++++++++++ > 1 file changed, 56 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/light/liteon,ltr390.yaml > > diff --git a/Documentation/devicetree/bindings/iio/light/liteon,ltr390.yaml b/Documentation/devicetree/bindings/iio/light/liteon,ltr390.yaml > new file mode 100644 > index 000000000000..5d98ef2af74d > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/light/liteon,ltr390.yaml > @@ -0,0 +1,56 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/light/liteon,ltr390.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Lite-On LTR390 ALS and UV Sensor > + > +description: | > + The Lite-On LTR390 is an ALS (Ambient Light Sensor) and a UV sensor in a > + single package with i2c address of 0x53. > + > + Datasheet: > + https://optoelectronics.liteon.com/upload/download/DS86-2015-0004/LTR-390UV_Final_%20DS_V1%201.pdf > + > +maintainers: > + - Anshul Dalal <anshulusr@xxxxxxxxx> > + > +properties: > + compatible: > + enum: > + - liteon,ltr390 > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + description: | > + Level interrupt pin with open drain output. > + The sensor pulls this pin low when the measured reading is greater than > + some configured threshold. > + > + vdd-supply: true > + > +required: > + - compatible > + - reg Same comment on vdd-supply here as in the other drivers. Not vital, but contention has become to add any supplies to required that have to be turned on, whether or not the kernel cares about them. Note I'd prefer drivers to use the trivial devm_regulator_get_enable() call anyway to turn them on at probe and off at remove. That's simple enough to do without needing testing with real controllable regulators. > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/irq.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + light-sensor@53 { > + compatible = "liteon,ltr390"; > + reg = <0x53>; > + interrupts = <18 IRQ_TYPE_EDGE_FALLING>; > + vdd-supply = <&vdd_regulator>; > + }; > + };