blob: dd78abe0ec8df68b16bf73c2750eb175470fe997 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/light/upisemi,us5182.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: UPISEMI us5182d I2C ALS and Proximity sensor
8
9maintainers:
10 - Jonathan Cameron <jic23@kernel.org>
11
12properties:
13 compatible:
14 const: upisemi,usd5182
15
16 reg:
17 maxItems: 1
18
19 upisemi,glass-coef:
20 $ref: /schemas/types.yaml#/definitions/uint32
21 description: |
22 glass attenuation factor - compensation factor of resolution 1000
23 for material transmittance.
24 default: 1000
25
26 upisemi,dark-ths:
27 $ref: /schemas/types.yaml#/definitions/uint16-array
28 minItems: 8
29 maxItems: 8
30 description:
31 16-bit thresholds (adc counts) corresponding to every scale.
32
33 upisemi,upper-dark-gain:
34 $ref: /schemas/types.yaml#/definitions/uint8
35 description: |
36 8-bit dark gain compensation factor(4 int and 4 fractional bits - Q4.4)
37 applied when light > threshold.
38 default: 0
39
40 upisemi,lower-dark-gain:
41 $ref: /schemas/types.yaml#/definitions/uint8
42 description: |
43 8-bit dark gain compensation factor(4 int and 4 fractional bits - Q4.4)
44 applied when light < threshold.
45 default: 0x16
46
47 upisemi,continuous:
48 $ref: /schemas/types.yaml#/definitions/flag
49 description: |
50 This chip has two power modes: one-shot (chip takes one measurement and
51 then shuts itself down) and continuous (chip takes continuous
52 measurements). The one-shot mode is more power-friendly but the
53 continuous mode may be more reliable. If this property is specified
54 the continuous mode will be used instead of the default one-shot one for
55 raw reads.
56
57additionalProperties: false
58
59required:
60 - compatible
61 - reg
62
63examples:
64 - |
65 i2c {
66 #address-cells = <1>;
67 #size-cells = <0>;
68
69 light-sensor@39 {
70 compatible = "upisemi,usd5182";
71 reg = <0x39>;
72 upisemi,glass-coef = < 1000 >;
73 upisemi,dark-ths = /bits/ 16 <170 200 512 512 800 2000 4000 8000>;
74 upisemi,upper-dark-gain = /bits/ 8 <0x00>;
75 upisemi,lower-dark-gain = /bits/ 8 <0x16>;
76 };
77 };
78...