1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
|
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/hwmon/adi,adm1275.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Analog Devices ADM1075/ADM127x/ADM1281/ADM129x digital power monitors
maintainers:
- Krzysztof Kozlowski <krzk@kernel.org>
description: |
The ADM1293 and ADM1294 are high accuracy integrated digital power monitors
that offer digital current, voltage, and power monitoring using an on-chip,
12-bit analog-to-digital converter (ADC), communicated through a PMBus
compliant I2C interface.
Datasheets:
https://www.analog.com/en/products/adm1294.html
The SQ24905C is also a Hot-swap controller compatibility to the ADM1278,
the PMBUS_MFR_MODEL is MC09C
Datasheets:
https://www.silergy.com/
download/downloadFile?id=5669&type=product&ftype=note
The BD12780 and BD12780A are hot-swap controllers from ROHM. They are
functionally compatible with the ADM1278. The main difference between
the BD12780A and the BD12780 is amount of configurable I2C addresses.
Datasheets:
https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/power_switch/bd12780muv-lb-e.pdf
https://fscdn.rohm.com/en/products/databook/datasheet/ic/power/power_switch/bd12780amuv-lb-e.pdf
The BD12790 is a ROHM hot-swap controller, functionally similar to the
ADM1272.
properties:
compatible:
oneOf:
- enum:
- adi,adm1075
- adi,adm1272
- adi,adm1273
- adi,adm1275
- adi,adm1276
- adi,adm1278
- adi,adm1281
- adi,adm1293
- adi,adm1294
- rohm,bd12780
- rohm,bd12790
- silergy,mc09c
# Require BD12780 as a fall-back for BD12780A.
- items:
- const: rohm,bd12780a
- const: rohm,bd12780
reg:
maxItems: 1
adi,volt-curr-sample-average:
description: |
Number of samples to be used to report voltage and current values.
$ref: /schemas/types.yaml#/definitions/uint32
enum: [1, 2, 4, 8, 16, 32, 64, 128]
adi,power-sample-average:
description: |
Number of samples to be used to report power values.
$ref: /schemas/types.yaml#/definitions/uint32
enum: [1, 2, 4, 8, 16, 32, 64, 128]
allOf:
- $ref: hwmon-common.yaml#
- if:
properties:
compatible:
contains:
enum:
- adi,adm1075
- adi,adm1276
then:
properties:
adi,volt-curr-sample-average:
default: 128
adi,power-sample-average: false
- if:
properties:
compatible:
contains:
enum:
- adi,adm1275
then:
properties:
adi,volt-curr-sample-average:
default: 16
adi,power-sample-average: false
- if:
properties:
compatible:
contains:
enum:
- adi,adm1272
- adi,adm1273
- rohm,bd12790
then:
properties:
adi,volt-curr-sample-average:
default: 128
adi,power-sample-average:
default: 128
- if:
properties:
compatible:
contains:
enum:
- adi,adm1278
- adi,adm1281
- adi,adm1293
- adi,adm1294
- rohm,bd12780
- silergy,mc09c
then:
properties:
adi,volt-curr-sample-average:
default: 128
adi,power-sample-average:
default: 1
required:
- compatible
- reg
unevaluatedProperties: false
examples:
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
power-sensor@10 {
compatible = "adi,adm1272";
reg = <0x10>;
shunt-resistor-micro-ohms = <500>;
adi,volt-curr-sample-average = <128>;
adi,power-sample-average = <128>;
};
};
|