xref: /freebsd/sys/contrib/device-tree/Bindings/hwmon/adi,ltc2991.yaml (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1*84943d6fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*84943d6fSEmmanuel Vadot%YAML 1.2
3*84943d6fSEmmanuel Vadot---
4*84943d6fSEmmanuel Vadot
5*84943d6fSEmmanuel Vadot$id: http://devicetree.org/schemas/hwmon/adi,ltc2991.yaml#
6*84943d6fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
7*84943d6fSEmmanuel Vadot
8*84943d6fSEmmanuel Vadottitle: Analog Devices LTC2991 Octal I2C Voltage, Current and Temperature Monitor
9*84943d6fSEmmanuel Vadot
10*84943d6fSEmmanuel Vadotmaintainers:
11*84943d6fSEmmanuel Vadot  - Antoniu Miclaus <antoniu.miclaus@analog.com>
12*84943d6fSEmmanuel Vadot
13*84943d6fSEmmanuel Vadotdescription: |
14*84943d6fSEmmanuel Vadot  The LTC2991 is used to monitor system temperatures, voltages and currents.
15*84943d6fSEmmanuel Vadot  Through the I2C serial interface, the eight monitors can individually measure
16*84943d6fSEmmanuel Vadot  supply voltages and can be paired for differential measurements of current
17*84943d6fSEmmanuel Vadot  sense resistors or temperature sensing transistors.
18*84943d6fSEmmanuel Vadot
19*84943d6fSEmmanuel Vadot  Datasheet:
20*84943d6fSEmmanuel Vadot    https://www.analog.com/en/products/ltc2991.html
21*84943d6fSEmmanuel Vadot
22*84943d6fSEmmanuel Vadotproperties:
23*84943d6fSEmmanuel Vadot  compatible:
24*84943d6fSEmmanuel Vadot    const: adi,ltc2991
25*84943d6fSEmmanuel Vadot
26*84943d6fSEmmanuel Vadot  reg:
27*84943d6fSEmmanuel Vadot    maxItems: 1
28*84943d6fSEmmanuel Vadot
29*84943d6fSEmmanuel Vadot  '#address-cells':
30*84943d6fSEmmanuel Vadot    const: 1
31*84943d6fSEmmanuel Vadot
32*84943d6fSEmmanuel Vadot  '#size-cells':
33*84943d6fSEmmanuel Vadot    const: 0
34*84943d6fSEmmanuel Vadot
35*84943d6fSEmmanuel Vadot  vcc-supply: true
36*84943d6fSEmmanuel Vadot
37*84943d6fSEmmanuel VadotpatternProperties:
38*84943d6fSEmmanuel Vadot  "^channel@[0-3]$":
39*84943d6fSEmmanuel Vadot    type: object
40*84943d6fSEmmanuel Vadot    description:
41*84943d6fSEmmanuel Vadot      Represents the differential/temperature channels.
42*84943d6fSEmmanuel Vadot
43*84943d6fSEmmanuel Vadot    properties:
44*84943d6fSEmmanuel Vadot      reg:
45*84943d6fSEmmanuel Vadot        description:
46*84943d6fSEmmanuel Vadot          The channel number. LTC2991 can monitor 4 currents/temperatures.
47*84943d6fSEmmanuel Vadot        items:
48*84943d6fSEmmanuel Vadot          minimum: 0
49*84943d6fSEmmanuel Vadot          maximum: 3
50*84943d6fSEmmanuel Vadot
51*84943d6fSEmmanuel Vadot      shunt-resistor-micro-ohms:
52*84943d6fSEmmanuel Vadot        description:
53*84943d6fSEmmanuel Vadot          The value of curent sense resistor in micro ohms. Pin configuration is
54*84943d6fSEmmanuel Vadot          set for differential input pair.
55*84943d6fSEmmanuel Vadot
56*84943d6fSEmmanuel Vadot      adi,temperature-enable:
57*84943d6fSEmmanuel Vadot        description:
58*84943d6fSEmmanuel Vadot          Enables temperature readings. Pin configuration is set for remote
59*84943d6fSEmmanuel Vadot          diode temperature measurement.
60*84943d6fSEmmanuel Vadot        type: boolean
61*84943d6fSEmmanuel Vadot
62*84943d6fSEmmanuel Vadot    required:
63*84943d6fSEmmanuel Vadot      - reg
64*84943d6fSEmmanuel Vadot
65*84943d6fSEmmanuel Vadot    allOf:
66*84943d6fSEmmanuel Vadot      - if:
67*84943d6fSEmmanuel Vadot          required:
68*84943d6fSEmmanuel Vadot            - shunt-resistor-micro-ohms
69*84943d6fSEmmanuel Vadot        then:
70*84943d6fSEmmanuel Vadot          properties:
71*84943d6fSEmmanuel Vadot            adi,temperature-enable: false
72*84943d6fSEmmanuel Vadot
73*84943d6fSEmmanuel Vadot    additionalProperties: false
74*84943d6fSEmmanuel Vadot
75*84943d6fSEmmanuel Vadotrequired:
76*84943d6fSEmmanuel Vadot  - compatible
77*84943d6fSEmmanuel Vadot  - reg
78*84943d6fSEmmanuel Vadot  - vcc-supply
79*84943d6fSEmmanuel Vadot
80*84943d6fSEmmanuel VadotadditionalProperties: false
81*84943d6fSEmmanuel Vadot
82*84943d6fSEmmanuel Vadotexamples:
83*84943d6fSEmmanuel Vadot  - |
84*84943d6fSEmmanuel Vadot    i2c {
85*84943d6fSEmmanuel Vadot        #address-cells = <1>;
86*84943d6fSEmmanuel Vadot        #size-cells = <0>;
87*84943d6fSEmmanuel Vadot
88*84943d6fSEmmanuel Vadot        hwmon@48 {
89*84943d6fSEmmanuel Vadot            compatible = "adi,ltc2991";
90*84943d6fSEmmanuel Vadot            reg = <0x48>;
91*84943d6fSEmmanuel Vadot            vcc-supply = <&vcc>;
92*84943d6fSEmmanuel Vadot        };
93*84943d6fSEmmanuel Vadot    };
94*84943d6fSEmmanuel Vadot  - |
95*84943d6fSEmmanuel Vadot    i2c {
96*84943d6fSEmmanuel Vadot        #address-cells = <1>;
97*84943d6fSEmmanuel Vadot        #size-cells = <0>;
98*84943d6fSEmmanuel Vadot
99*84943d6fSEmmanuel Vadot        hwmon@48 {
100*84943d6fSEmmanuel Vadot            #address-cells = <1>;
101*84943d6fSEmmanuel Vadot            #size-cells = <0>;
102*84943d6fSEmmanuel Vadot
103*84943d6fSEmmanuel Vadot            compatible = "adi,ltc2991";
104*84943d6fSEmmanuel Vadot            reg = <0x48>;
105*84943d6fSEmmanuel Vadot            vcc-supply = <&vcc>;
106*84943d6fSEmmanuel Vadot
107*84943d6fSEmmanuel Vadot            channel@0 {
108*84943d6fSEmmanuel Vadot                    reg = <0x0>;
109*84943d6fSEmmanuel Vadot                    shunt-resistor-micro-ohms = <100000>;
110*84943d6fSEmmanuel Vadot            };
111*84943d6fSEmmanuel Vadot
112*84943d6fSEmmanuel Vadot            channel@1 {
113*84943d6fSEmmanuel Vadot                    reg = <0x1>;
114*84943d6fSEmmanuel Vadot                    shunt-resistor-micro-ohms = <100000>;
115*84943d6fSEmmanuel Vadot            };
116*84943d6fSEmmanuel Vadot
117*84943d6fSEmmanuel Vadot            channel@2 {
118*84943d6fSEmmanuel Vadot                    reg = <0x2>;
119*84943d6fSEmmanuel Vadot                    adi,temperature-enable;
120*84943d6fSEmmanuel Vadot            };
121*84943d6fSEmmanuel Vadot
122*84943d6fSEmmanuel Vadot            channel@3 {
123*84943d6fSEmmanuel Vadot                    reg = <0x3>;
124*84943d6fSEmmanuel Vadot                    adi,temperature-enable;
125*84943d6fSEmmanuel Vadot            };
126*84943d6fSEmmanuel Vadot        };
127*84943d6fSEmmanuel Vadot    };
128*84943d6fSEmmanuel Vadot...
129