xref: /linux/Documentation/devicetree/bindings/hwmon/adi,adm1275.yaml (revision 621cde16e49b3ecf7d59a8106a20aaebfb4a59a9)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4
5$id: http://devicetree.org/schemas/hwmon/adi,adm1275.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Analog Devices ADM1075/ADM127x/ADM1281/ADM129x digital power monitors
9
10maintainers:
11  - Krzysztof Kozlowski <krzk@kernel.org>
12
13description: |
14  The ADM1293 and ADM1294 are high accuracy integrated digital power monitors
15  that offer digital current, voltage, and power monitoring using an on-chip,
16  12-bit analog-to-digital converter (ADC), communicated through a PMBus
17  compliant I2C interface.
18
19  Datasheets:
20    https://www.analog.com/en/products/adm1294.html
21
22properties:
23  compatible:
24    enum:
25      - adi,adm1075
26      - adi,adm1272
27      - adi,adm1275
28      - adi,adm1276
29      - adi,adm1278
30      - adi,adm1281
31      - adi,adm1293
32      - adi,adm1294
33
34  reg:
35    maxItems: 1
36
37  adi,volt-curr-sample-average:
38    description: |
39      Number of samples to be used to report voltage and current values.
40    $ref: /schemas/types.yaml#/definitions/uint32
41    enum: [1, 2, 4, 8, 16, 32, 64, 128]
42
43  adi,power-sample-average:
44    description: |
45      Number of samples to be used to report power values.
46    $ref: /schemas/types.yaml#/definitions/uint32
47    enum: [1, 2, 4, 8, 16, 32, 64, 128]
48
49allOf:
50  - $ref: hwmon-common.yaml#
51  - if:
52      properties:
53        compatible:
54          contains:
55            enum:
56              - adi,adm1075
57              - adi,adm1276
58    then:
59      properties:
60        adi,volt-curr-sample-average:
61          default: 128
62        adi,power-sample-average: false
63
64  - if:
65      properties:
66        compatible:
67          contains:
68            enum:
69              - adi,adm1275
70    then:
71      properties:
72        adi,volt-curr-sample-average:
73          default: 16
74        adi,power-sample-average: false
75
76  - if:
77      properties:
78        compatible:
79          contains:
80            enum:
81              - adi,adm1272
82    then:
83      properties:
84        adi,volt-curr-sample-average:
85          default: 128
86        adi,power-sample-average:
87          default: 128
88
89  - if:
90      properties:
91        compatible:
92          contains:
93            enum:
94              - adi,adm1278
95              - adi,adm1281
96              - adi,adm1293
97              - adi,adm1294
98    then:
99      properties:
100        adi,volt-curr-sample-average:
101          default: 128
102        adi,power-sample-average:
103          default: 1
104
105required:
106  - compatible
107  - reg
108
109unevaluatedProperties: false
110
111examples:
112  - |
113    i2c {
114        #address-cells = <1>;
115        #size-cells = <0>;
116
117        power-sensor@10 {
118            compatible = "adi,adm1272";
119            reg = <0x10>;
120            shunt-resistor-micro-ohms = <500>;
121            adi,volt-curr-sample-average = <128>;
122            adi,power-sample-average = <128>;
123        };
124    };
125