2023-11-17 07:48:10

by Anshul Dalal

[permalink] [raw]
Subject: [PATCH v2 1/2] dt-bindings: iio: light: add ltr390

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 <[email protected]>
---

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 <[email protected]>
+
+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
+
+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>;
+ };
+ };
--
2.42.1


2023-11-17 11:09:33

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: iio: light: add ltr390

On 17/11/2023 08:45, Anshul Dalal 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 <[email protected]>
> ---

Reviewed-by: Krzysztof Kozlowski <[email protected]>

Best regards,
Krzysztof

2023-11-25 14:05:01

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] dt-bindings: iio: light: add ltr390

On Fri, 17 Nov 2023 13:15:52 +0530
Anshul Dalal <[email protected]> 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 <[email protected]>
> ---
>
> 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 <[email protected]>
> +
> +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>;
> + };
> + };