Kernel driver max34440

Supported chips:

Author: Guenter Roeck <linux@roeck-us.net>

Description

This driver supports hardware monitoring for Maxim MAX34440 PMBus 6-ChannelPower-Supply Manager, MAX34441 PMBus 5-Channel Power-Supply Managerand Intelligent Fan Controller, and MAX34446 PMBus Power-Supply Data Logger.It also supports the MAX34451, MAX34460, and MAX34461 PMBus Voltage Monitor &Sequencers. The MAX34451 supports monitoring voltage or current of 12 channelsbased on GIN pins. The MAX34460 supports 12 voltage channels, and the MAX34461supports 16 voltage channels.

The driver is a client driver to the core PMBus driver. Please seeDocumentation/hwmon/pmbus.rst for details on PMBus client drivers.

Usage Notes

This driver does not auto-detect devices. You will have to instantiate thedevices explicitly. Please see Documentation/i2c/instantiating-devices.rst fordetails.

For MAX34446, the value of the currX_crit attribute determines if current orvoltage measurement is enabled for a given channel. Voltage measurement isenabled if currX_crit is set to 0; current measurement is enabled if theattribute is set to a positive value. Power measurement is only enabled ifchannel 1 (3) is configured for voltage measurement, and channel 2 (4) isconfigured for current measurement.

Platform data support

The driver supports standard PMBus driver platform data.

Sysfs entries

The following attributes are supported. Limits are read-write; all otherattributes are read-only.

In

in[1-6]_label“vout[1-6]”.
in[1-6]_inputMeasured voltage. From READ_VOUT register.
in[1-6]_minMinimum Voltage. From VOUT_UV_WARN_LIMIT register.
in[1-6]_maxMaximum voltage. From VOUT_OV_WARN_LIMIT register.
in[1-6]_lcritCritical minimum Voltage. VOUT_UV_FAULT_LIMIT register.
in[1-6]_critCritical maximum voltage. From VOUT_OV_FAULT_LIMITregister.
in[1-6]_min_alarmVoltage low alarm. From VOLTAGE_UV_WARNING status.
in[1-6]_max_alarmVoltage high alarm. From VOLTAGE_OV_WARNING status.
in[1-6]_lcrit_alarmVoltage critical low alarm. From VOLTAGE_UV_FAULTstatus.
in[1-6]_crit_alarmVoltage critical high alarm. From VOLTAGE_OV_FAULTstatus.
in[1-6]_lowestHistorical minimum voltage.
in[1-6]_highestHistorical maximum voltage.
in[1-6]_reset_historyWrite any value to reset history.

Note

MAX34446 only supports in[1-4].

Curr

curr[1-6]_label“iout[1-6]”.
curr[1-6]_inputMeasured current. From READ_IOUT register.
curr[1-6]_maxMaximum current. From IOUT_OC_WARN_LIMIT register.
curr[1-6]_critCritical maximum current. From IOUT_OC_FAULT_LIMITregister.
curr[1-6]_max_alarmCurrent high alarm. From IOUT_OC_WARNING status.
curr[1-6]_crit_alarmCurrent critical high alarm. From IOUT_OC_FAULT status.
curr[1-4]_averageHistorical average current (MAX34446/34451 only).
curr[1-6]_highestHistorical maximum current.
curr[1-6]_reset_historyWrite any value to reset history.

Note

  • in6 and curr6 attributes only exist for MAX34440.
  • MAX34446 only supports curr[1-4].

Power

power[1,3]_label“pout[1,3]”
power[1,3]_inputMeasured power.
power[1,3]_averageHistorical average power.
power[1,3]_highestHistorical maximum power.

Note

Power attributes only exist for MAX34446.

Temp

temp[1-8]_inputMeasured temperatures. From READ_TEMPERATURE_1 register.temp1 is the chip’s internal temperature. temp2..temp5are remote I2C temperature sensors. For MAX34441, temp6is a remote thermal-diode sensor. For MAX34440, temp6..8are remote I2C temperature sensors.
temp[1-8]_maxMaximum temperature. From OT_WARN_LIMIT register.
temp[1-8]_critCritical high temperature. From OT_FAULT_LIMIT register.
temp[1-8]_max_alarmTemperature high alarm.
temp[1-8]_crit_alarmTemperature critical high alarm.
temp[1-8]_averageHistorical average temperature (MAX34446 only).
temp[1-8]_highestHistorical maximum temperature.
temp[1-8]_reset_historyWrite any value to reset history.

Note

  • temp7 and temp8 attributes only exist for MAX34440.
  • MAX34446 only supports temp[1-3].

Note

  • MAX34451 supports attribute groups in[1-16] (or curr[1-16] based oninput pins) and temp[1-5].
  • MAX34460 supports attribute groups in[1-12] and temp[1-5].
  • MAX34461 supports attribute groups in[1-16] and temp[1-5].