1f126890aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2f126890aSEmmanuel Vadot%YAML 1.2
3f126890aSEmmanuel Vadot---
4f126890aSEmmanuel Vadot$id: http://devicetree.org/schemas/hwmon/adi,max31827.yaml#
5f126890aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6f126890aSEmmanuel Vadot
7f126890aSEmmanuel Vadottitle: Analog Devices MAX31827, MAX31828, MAX31829 Low-Power Temperature Switch
8f126890aSEmmanuel Vadot
9f126890aSEmmanuel Vadotmaintainers:
10f126890aSEmmanuel Vadot  - Daniel Matyas <daniel.matyas@analog.com>
11f126890aSEmmanuel Vadot
12f126890aSEmmanuel Vadotdescription: |
13f126890aSEmmanuel Vadot  Analog Devices MAX31827, MAX31828, MAX31829 Low-Power Temperature Switch with
14f126890aSEmmanuel Vadot  I2C Interface
15f126890aSEmmanuel Vadot  https://www.analog.com/media/en/technical-documentation/data-sheets/MAX31827-MAX31829.pdf
16f126890aSEmmanuel Vadot
17f126890aSEmmanuel Vadotproperties:
18f126890aSEmmanuel Vadot  compatible:
19f126890aSEmmanuel Vadot    oneOf:
20f126890aSEmmanuel Vadot      - const: adi,max31827
21f126890aSEmmanuel Vadot      - items:
22f126890aSEmmanuel Vadot          - enum:
23f126890aSEmmanuel Vadot              - adi,max31828
24f126890aSEmmanuel Vadot              - adi,max31829
25f126890aSEmmanuel Vadot          - const: adi,max31827
26f126890aSEmmanuel Vadot
27f126890aSEmmanuel Vadot  reg:
28f126890aSEmmanuel Vadot    maxItems: 1
29f126890aSEmmanuel Vadot
30f126890aSEmmanuel Vadot  vref-supply:
31f126890aSEmmanuel Vadot    description:
32f126890aSEmmanuel Vadot      Must have values in the interval (1.6V; 3.6V) in order for the device to
33f126890aSEmmanuel Vadot      function correctly.
34f126890aSEmmanuel Vadot
35*84943d6fSEmmanuel Vadot  adi,comp-int:
36*84943d6fSEmmanuel Vadot    description:
37*84943d6fSEmmanuel Vadot      If present interrupt mode is used. If not present comparator mode is used
38*84943d6fSEmmanuel Vadot      (default).
39*84943d6fSEmmanuel Vadot    type: boolean
40*84943d6fSEmmanuel Vadot
41*84943d6fSEmmanuel Vadot  adi,alarm-pol:
42*84943d6fSEmmanuel Vadot    description:
43*84943d6fSEmmanuel Vadot      Sets the alarms active state.
44*84943d6fSEmmanuel Vadot            - 0 = active low
45*84943d6fSEmmanuel Vadot            - 1 = active high
46*84943d6fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
47*84943d6fSEmmanuel Vadot    enum: [0, 1]
48*84943d6fSEmmanuel Vadot
49*84943d6fSEmmanuel Vadot  adi,fault-q:
50*84943d6fSEmmanuel Vadot    description:
51*84943d6fSEmmanuel Vadot      Select how many consecutive temperature faults must occur before
52*84943d6fSEmmanuel Vadot      overtemperature or undertemperature faults are indicated in the
53*84943d6fSEmmanuel Vadot      corresponding status bits.
54*84943d6fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
55*84943d6fSEmmanuel Vadot    enum: [1, 2, 4, 8]
56*84943d6fSEmmanuel Vadot
57*84943d6fSEmmanuel Vadot  adi,timeout-enable:
58*84943d6fSEmmanuel Vadot    description:
59*84943d6fSEmmanuel Vadot      Enables timeout. Bus timeout resets the I2C-compatible interface when SCL
60*84943d6fSEmmanuel Vadot      is low for more than 30ms (nominal).
61*84943d6fSEmmanuel Vadot    type: boolean
62*84943d6fSEmmanuel Vadot
63*84943d6fSEmmanuel VadotallOf:
64*84943d6fSEmmanuel Vadot  - if:
65*84943d6fSEmmanuel Vadot      properties:
66*84943d6fSEmmanuel Vadot        compatible:
67*84943d6fSEmmanuel Vadot          contains:
68*84943d6fSEmmanuel Vadot            const: adi,max31829
69*84943d6fSEmmanuel Vadot
70*84943d6fSEmmanuel Vadot    then:
71*84943d6fSEmmanuel Vadot      properties:
72*84943d6fSEmmanuel Vadot        adi,alarm-pol:
73*84943d6fSEmmanuel Vadot          default: 1
74*84943d6fSEmmanuel Vadot
75*84943d6fSEmmanuel Vadot    else:
76*84943d6fSEmmanuel Vadot      properties:
77*84943d6fSEmmanuel Vadot        adi,alarm-pol:
78*84943d6fSEmmanuel Vadot          default: 0
79*84943d6fSEmmanuel Vadot
80*84943d6fSEmmanuel Vadot  - if:
81*84943d6fSEmmanuel Vadot      properties:
82*84943d6fSEmmanuel Vadot        compatible:
83*84943d6fSEmmanuel Vadot          contains:
84*84943d6fSEmmanuel Vadot            const: adi,max31827
85*84943d6fSEmmanuel Vadot
86*84943d6fSEmmanuel Vadot    then:
87*84943d6fSEmmanuel Vadot      properties:
88*84943d6fSEmmanuel Vadot        adi,fault-q:
89*84943d6fSEmmanuel Vadot          default: 1
90*84943d6fSEmmanuel Vadot
91*84943d6fSEmmanuel Vadot    else:
92*84943d6fSEmmanuel Vadot      properties:
93*84943d6fSEmmanuel Vadot        adi,fault-q:
94*84943d6fSEmmanuel Vadot          default: 4
95*84943d6fSEmmanuel Vadot
96*84943d6fSEmmanuel Vadot
97f126890aSEmmanuel Vadotrequired:
98f126890aSEmmanuel Vadot  - compatible
99f126890aSEmmanuel Vadot  - reg
100f126890aSEmmanuel Vadot  - vref-supply
101f126890aSEmmanuel Vadot
102f126890aSEmmanuel VadotadditionalProperties: false
103f126890aSEmmanuel Vadot
104f126890aSEmmanuel Vadotexamples:
105f126890aSEmmanuel Vadot  - |
106f126890aSEmmanuel Vadot    i2c {
107f126890aSEmmanuel Vadot        #address-cells = <1>;
108f126890aSEmmanuel Vadot        #size-cells = <0>;
109f126890aSEmmanuel Vadot
110f126890aSEmmanuel Vadot        temperature-sensor@42 {
111f126890aSEmmanuel Vadot            compatible = "adi,max31827";
112f126890aSEmmanuel Vadot            reg = <0x42>;
113f126890aSEmmanuel Vadot            vref-supply = <&reg_vdd>;
114*84943d6fSEmmanuel Vadot            adi,comp-int;
115*84943d6fSEmmanuel Vadot            adi,alarm-pol = <0>;
116*84943d6fSEmmanuel Vadot            adi,fault-q = <1>;
117*84943d6fSEmmanuel Vadot            adi,timeout-enable;
118f126890aSEmmanuel Vadot        };
119f126890aSEmmanuel Vadot    };
120f126890aSEmmanuel Vadot...
121