Kernel driver adm1275

Supported chips:

  • Analog Devices ADM1075

    Prefix: ‘adm1075’

    Addresses scanned: -

    Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1075.pdf

  • Analog Devices ADM1272

    Prefix: ‘adm1272’

    Addresses scanned: -

    Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1272.pdf

  • Analog Devices ADM1275

    Prefix: ‘adm1275’

    Addresses scanned: -

    Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1275.pdf

  • Analog Devices ADM1276

    Prefix: ‘adm1276’

    Addresses scanned: -

    Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1276.pdf

  • Analog Devices ADM1278

    Prefix: ‘adm1278’

    Addresses scanned: -

    Datasheet: www.analog.com/static/imported-files/data_sheets/ADM1278.pdf

  • Analog Devices ADM1293/ADM1294

    Prefix: ‘adm1293’, ‘adm1294’

    Addresses scanned: -

    Datasheet: https://www.analog.com/media/en/technical-documentation/data-sheets/ADM1293_1294.pdf

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

Description

This driver supports hardware monitoring for Analog Devices ADM1075, ADM1272, ADM1275, ADM1276, ADM1278, ADM1293, and ADM1294 Hot-Swap Controller and Digital Power Monitors.

ADM1075, ADM1272, ADM1275, ADM1276, ADM1278, ADM1293, and ADM1294 are hot-swap controllers that allow a circuit board to be removed from or inserted into a live backplane. They also feature current and voltage readback via an integrated 12 bit analog-to-digital converter (ADC), accessed using a PMBus interface.

The driver is a client driver to the core PMBus driver. Please see Kernel driver pmbus for details on PMBus client drivers.

Usage Notes

This driver does not auto-detect devices. You will have to instantiate the devices explicitly. Please see How to instantiate I2C devices for details.

The ADM1075, unlike many other PMBus devices, does not support internal voltage or current scaling. Reported voltages, currents, and power are raw measurements, and will typically have to be scaled.

The shunt value in micro-ohms can be set via device tree at compile-time. Please refer to the Documentation/devicetree/bindings/hwmon/adi,adm1275.yaml for bindings if the device tree is used.

Platform data support

The driver supports standard PMBus driver platform data. Please see Kernel driver pmbus for details.

Sysfs entries

The following attributes are supported. Limits are read-write, history reset attributes are write-only, all other attributes are read-only.

inX_label

“vin1” or “vout1” depending on chip variant and configuration. On ADM1075, ADM1293, and ADM1294, vout1 reports the voltage on the VAUX pin.

inX_input

Measured voltage.

inX_min

Minimum Voltage.

inX_max

Maximum voltage.

inX_min_alarm

Voltage low alarm.

inX_max_alarm

Voltage high alarm.

inX_highest

Historical maximum voltage.

inX_reset_history

Write any value to reset history.

curr1_label

“iout1”

curr1_input

Measured current.

curr1_max

Maximum current.

curr1_max_alarm

Current high alarm.

curr1_lcrit

Critical minimum current. Depending on the chip configuration, either curr1_lcrit or curr1_crit is supported, but not both.

curr1_lcrit_alarm

Critical current low alarm.

curr1_crit

Critical maximum current. Depending on the chip configuration, either curr1_lcrit or curr1_crit is supported, but not both.

curr1_crit_alarm

Critical current high alarm.

curr1_highest

Historical maximum current.

curr1_reset_history

Write any value to reset history.

power1_label

“pin1”

power1_input

Input power.

power1_input_lowest

Lowest observed input power. ADM1293 and ADM1294 only.

power1_input_highest

Highest observed input power.

power1_reset_history

Write any value to reset history.

Power attributes are supported on ADM1075, ADM1272, ADM1276, ADM1293, and ADM1294.

temp1_input

Chip temperature.

temp1_max

Maximum chip temperature.

temp1_max_alarm

Temperature alarm.

temp1_crit

Critical chip temperature.

temp1_crit_alarm

Critical temperature high alarm.

temp1_highest

Highest observed temperature.

temp1_reset_history

Write any value to reset history.

Temperature attributes are supported on ADM1272 and ADM1278.