xref: /linux/Documentation/hwmon/max34440.rst (revision 26b8eb8a98c18b2ee4ea76d99fa2b2a5ccbc1b6c)
1Kernel driver max34440
2======================
3
4Supported chips:
5
6  * ADI ADPM12160
7
8    Prefixes: 'adpm12160'
9
10    Addresses scanned: -
11
12    Datasheet: -
13
14  * ADI ADPM12200
15
16    Prefixes: 'adpm12200'
17
18    Addresses scanned: -
19
20    Datasheet: -
21
22  * ADI ADPM12250
23
24    Prefixes: 'adpm12250'
25
26    Addresses scanned: -
27
28    Datasheet: -
29
30  * Maxim MAX34440
31
32    Prefixes: 'max34440'
33
34    Addresses scanned: -
35
36    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/max34440.pdf
37
38  * Maxim MAX34441
39
40    PMBus 5-Channel Power-Supply Manager and Intelligent Fan Controller
41
42    Prefixes: 'max34441'
43
44    Addresses scanned: -
45
46    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/max34441.pdf
47
48  * Maxim MAX34446
49
50    PMBus Power-Supply Data Logger
51
52    Prefixes: 'max34446'
53
54    Addresses scanned: -
55
56    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/max34446.pdf
57
58  * Maxim MAX34451
59
60    PMBus 16-Channel V/I Monitor and 12-Channel Sequencer/Marginer
61
62    Prefixes: 'max34451'
63
64    Addresses scanned: -
65
66    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/max34451.pdf
67
68  * Maxim MAX34460
69
70    PMBus 12-Channel Voltage Monitor & Sequencer
71
72    Prefix: 'max34460'
73
74    Addresses scanned: -
75
76    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/max34460.pdf
77
78  * Maxim MAX34461
79
80    PMBus 16-Channel Voltage Monitor & Sequencer
81
82    Prefix: 'max34461'
83
84    Addresses scanned: -
85
86    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/max34461.pdf
87
88Author: Guenter Roeck <linux@roeck-us.net>
89
90
91Description
92-----------
93
94This driver supports multiple devices: hardware monitoring for Maxim MAX34440
95PMBus 6-Channel Power-Supply Manager, MAX34441 PMBus 5-Channel Power-Supply
96Manager and Intelligent Fan Controller, and MAX34446 PMBus Power-Supply Data
97Logger; PMBus Voltage Monitor and Sequencers for MAX34451, MAX34460, and
98MAX34461; PMBus DC/DC Power Module ADPM12160, ADPM12200, and ADPM12250. The
99MAX34451 supports monitoring voltage or current of 12 channels based on GIN
100pins. The MAX34460 supports 12 voltage channels, and the MAX34461 supports 16
101voltage channels. The ADPM12160, ADPM12200, and ADPM12250 also monitors both
102input and output of voltage and current.
103
104The driver is a client driver to the core PMBus driver. Please see
105Documentation/hwmon/pmbus.rst for details on PMBus client drivers.
106
107
108Usage Notes
109-----------
110
111This driver does not auto-detect devices. You will have to instantiate the
112devices explicitly. Please see Documentation/i2c/instantiating-devices.rst for
113details.
114
115For MAX34446, the value of the currX_crit attribute determines if current or
116voltage measurement is enabled for a given channel. Voltage measurement is
117enabled if currX_crit is set to 0; current measurement is enabled if the
118attribute is set to a positive value. Power measurement is only enabled if
119channel 1 (3) is configured for voltage measurement, and channel 2 (4) is
120configured for current measurement.
121
122
123Platform data support
124---------------------
125
126The driver supports standard PMBus driver platform data.
127
128
129Sysfs entries
130-------------
131
132The following attributes are supported. Limits are read-write; all other
133attributes are read-only.
134
135In
136~~
137
138======================= =======================================================
139in[1-6]_label		"vout[1-6]".
140in[1-6]_input		Measured voltage. From READ_VOUT register.
141in[1-6]_min		Minimum Voltage. From VOUT_UV_WARN_LIMIT register.
142in[1-6]_max		Maximum voltage. From VOUT_OV_WARN_LIMIT register.
143in[1-6]_lcrit		Critical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
144in[1-6]_crit		Critical maximum voltage. From VOUT_OV_FAULT_LIMIT
145			register.
146in[1-6]_min_alarm	Voltage low alarm. From VOLTAGE_UV_WARNING status.
147in[1-6]_max_alarm	Voltage high alarm. From VOLTAGE_OV_WARNING status.
148in[1-6]_lcrit_alarm	Voltage critical low alarm. From VOLTAGE_UV_FAULT
149			status.
150in[1-6]_crit_alarm	Voltage critical high alarm. From VOLTAGE_OV_FAULT
151			status.
152in[1-6]_lowest		Historical minimum voltage.
153in[1-6]_highest		Historical maximum voltage.
154in[1-6]_reset_history	Write any value to reset history.
155======================= =======================================================
156
157.. note::
158
159    - MAX34446 only supports in[1-4].
160    - ADPM12160, ADPM12200, and ADPM12250 only supports in[1-2]. Label is "vin1"
161      and "vout1" respectively.
162
163Curr
164~~~~
165
166======================= ========================================================
167curr[1-6]_label		"iout[1-6]".
168curr[1-6]_input		Measured current. From READ_IOUT register.
169curr[1-6]_max		Maximum current. From IOUT_OC_WARN_LIMIT register.
170curr[1-6]_crit		Critical maximum current. From IOUT_OC_FAULT_LIMIT
171			register.
172curr[1-6]_max_alarm	Current high alarm. From IOUT_OC_WARNING status.
173curr[1-6]_crit_alarm	Current critical high alarm. From IOUT_OC_FAULT status.
174curr[1-4]_average	Historical average current (MAX34446/34451 only).
175curr[1-6]_highest	Historical maximum current.
176curr[1-6]_reset_history	Write any value to reset history.
177======================= ========================================================
178
179.. note::
180
181    - in6 and curr6 attributes only exist for MAX34440.
182    - MAX34446 only supports curr[1-4].
183    - For ADPM12160, ADPM12200, and ADPM12250, curr[1] is "iin1"
184    - For ADPM12160, and ADPM12200 curr[2-6] are "iout[1-5]".
185    - For ADPM12250, curr[2-4] are "iout[1-3]".
186
187Power
188~~~~~
189
190======================= ========================================================
191power[1,3]_label	"pout[1,3]"
192power[1,3]_input	Measured power.
193power[1,3]_average	Historical average power.
194power[1,3]_highest	Historical maximum power.
195======================= ========================================================
196
197.. note:: Power attributes only exist for MAX34446.
198
199Temp
200~~~~
201
202======================= ========================================================
203temp[1-8]_input		Measured temperatures. From READ_TEMPERATURE_1 register.
204			temp1 is the chip's internal temperature. temp2..temp5
205			are remote I2C temperature sensors. For MAX34441, temp6
206			is a remote thermal-diode sensor. For MAX34440, temp6..8
207			are remote I2C temperature sensors.
208temp[1-8]_max		Maximum temperature. From OT_WARN_LIMIT register.
209temp[1-8]_crit		Critical high temperature. From OT_FAULT_LIMIT register.
210temp[1-8]_max_alarm	Temperature high alarm.
211temp[1-8]_crit_alarm	Temperature critical high alarm.
212temp[1-8]_average	Historical average temperature (MAX34446 only).
213temp[1-8]_highest	Historical maximum temperature.
214temp[1-8]_reset_history	Write any value to reset history.
215======================= ========================================================
216
217
218.. note::
219   - temp7 and temp8 attributes only exist for MAX34440.
220   - MAX34446 only supports temp[1-3].
221   - ADPM12160, ADPM12200, and ADPM12250 only supports temp[1].
222
223
224.. note::
225
226   - MAX34451 supports attribute groups in[1-16] (or curr[1-16] based on
227     input pins) and temp[1-5].
228   - MAX34460 supports attribute groups in[1-12] and temp[1-5].
229   - MAX34461 supports attribute groups in[1-16] and temp[1-5].
230