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