Kernel Driver IBMPOWERNV

Supported systems:

  • Any recent IBM P servers based on POWERNV platform

Author: Neelesh Gupta

Description

This driver implements reading the platform sensors data like temperature/fan/ voltage/power for ‘POWERNV’ platform.

The driver uses the platform device infrastructure. It probes the device tree for sensor devices during the __init phase and registers them with the ‘hwmon’. ‘hwmon’ populates the ‘sysfs’ tree having attribute files, each for a given sensor type and its attribute data.

All the nodes in the DT appear under “/ibm,opal/sensors” and each valid node in the DT maps to an attribute file in ‘sysfs’. The node exports unique ‘sensor-id’ which the driver uses to make an OPAL call to the firmware.

Usage notes

The driver is built statically with the kernel by enabling the config CONFIG_SENSORS_IBMPOWERNV. It can also be built as module ‘ibmpowernv’.

Sysfs attributes

fanX_input

Measured RPM value.

fanX_min

Threshold RPM for alert generation.

fanX_fault

  • 0: No fail condition

  • 1: Failing fan

tempX_input

Measured ambient temperature.

tempX_max

Threshold ambient temperature for alert generation.

tempX_highest

Historical maximum temperature

tempX_lowest

Historical minimum temperature

tempX_enable

Enable/disable all temperature sensors belonging to the sub-group. In POWER9, this attribute corresponds to each OCC. Using this attribute each OCC can be asked to disable/enable all of its temperature sensors.

  • 1: Enable

  • 0: Disable

inX_input

Measured power supply voltage (millivolt)

inX_fault

  • 0: No fail condition.

  • 1: Failing power supply.

inX_highest

Historical maximum voltage

inX_lowest

Historical minimum voltage

inX_enable

Enable/disable all voltage sensors belonging to the sub-group. In POWER9, this attribute corresponds to each OCC. Using this attribute each OCC can be asked to disable/enable all of its voltage sensors.

  • 1: Enable

  • 0: Disable

powerX_input

Power consumption (microWatt)

powerX_input_highest

Historical maximum power

powerX_input_lowest

Historical minimum power

powerX_enable

Enable/disable all power sensors belonging to the sub-group. In POWER9, this attribute corresponds to each OCC. Using this attribute each OCC can be asked to disable/enable all of its power sensors.

  • 1: Enable

  • 0: Disable

currX_input

Measured current (milliampere)

currX_highest

Historical maximum current

currX_lowest

Historical minimum current

currX_enable

Enable/disable all current sensors belonging to the sub-group. In POWER9, this attribute corresponds to each OCC. Using this attribute each OCC can be asked to disable/enable all of its current sensors.

  • 1: Enable

  • 0: Disable

energyX_input

Cumulative energy (microJoule)