| xj | b04a402 | 2021-11-25 15:01:52 +0800 | [diff] [blame] | 1 | Kernel Driver IBMPOWERNV | 
|  | 2 | ======================== | 
|  | 3 |  | 
|  | 4 | Supported systems: | 
|  | 5 | * Any recent IBM P servers based on POWERNV platform | 
|  | 6 |  | 
|  | 7 | Author: Neelesh Gupta | 
|  | 8 |  | 
|  | 9 | Description | 
|  | 10 | ----------- | 
|  | 11 |  | 
|  | 12 | This driver implements reading the platform sensors data like temperature/fan/ | 
|  | 13 | voltage/power for 'POWERNV' platform. | 
|  | 14 |  | 
|  | 15 | The driver uses the platform device infrastructure. It probes the device tree | 
|  | 16 | for sensor devices during the __init phase and registers them with the 'hwmon'. | 
|  | 17 | 'hwmon' populates the 'sysfs' tree having attribute files, each for a given | 
|  | 18 | sensor type and its attribute data. | 
|  | 19 |  | 
|  | 20 | All the nodes in the DT appear under "/ibm,opal/sensors" and each valid node in | 
|  | 21 | the DT maps to an attribute file in 'sysfs'. The node exports unique 'sensor-id' | 
|  | 22 | which the driver uses to make an OPAL call to the firmware. | 
|  | 23 |  | 
|  | 24 | Usage notes | 
|  | 25 | ----------- | 
|  | 26 | The driver is built statically with the kernel by enabling the config | 
|  | 27 | CONFIG_SENSORS_IBMPOWERNV. It can also be built as module 'ibmpowernv'. | 
|  | 28 |  | 
|  | 29 | Sysfs attributes | 
|  | 30 | ---------------- | 
|  | 31 |  | 
|  | 32 | fanX_input		Measured RPM value. | 
|  | 33 | fanX_min		Threshold RPM for alert generation. | 
|  | 34 | fanX_fault		0: No fail condition | 
|  | 35 | 1: Failing fan | 
|  | 36 |  | 
|  | 37 | tempX_input		Measured ambient temperature. | 
|  | 38 | tempX_max		Threshold ambient temperature for alert generation. | 
|  | 39 | tempX_highest		Historical maximum temperature | 
|  | 40 | tempX_lowest		Historical minimum temperature | 
|  | 41 | tempX_enable		Enable/disable all temperature sensors belonging to the | 
|  | 42 | sub-group. In POWER9, this attribute corresponds to | 
|  | 43 | each OCC. Using this attribute each OCC can be asked to | 
|  | 44 | disable/enable all of its temperature sensors. | 
|  | 45 | 1: Enable | 
|  | 46 | 0: Disable | 
|  | 47 |  | 
|  | 48 | inX_input		Measured power supply voltage (millivolt) | 
|  | 49 | inX_fault		0: No fail condition. | 
|  | 50 | 1: Failing power supply. | 
|  | 51 | inX_highest		Historical maximum voltage | 
|  | 52 | inX_lowest		Historical minimum voltage | 
|  | 53 | inX_enable		Enable/disable all voltage sensors belonging to the | 
|  | 54 | sub-group. In POWER9, this attribute corresponds to | 
|  | 55 | each OCC. Using this attribute each OCC can be asked to | 
|  | 56 | disable/enable all of its voltage sensors. | 
|  | 57 | 1: Enable | 
|  | 58 | 0: Disable | 
|  | 59 |  | 
|  | 60 | powerX_input		Power consumption (microWatt) | 
|  | 61 | powerX_input_highest	Historical maximum power | 
|  | 62 | powerX_input_lowest	Historical minimum power | 
|  | 63 | powerX_enable		Enable/disable all power sensors belonging to the | 
|  | 64 | sub-group. In POWER9, this attribute corresponds to | 
|  | 65 | each OCC. Using this attribute each OCC can be asked to | 
|  | 66 | disable/enable all of its power sensors. | 
|  | 67 | 1: Enable | 
|  | 68 | 0: Disable | 
|  | 69 |  | 
|  | 70 | currX_input		Measured current (milliampere) | 
|  | 71 | currX_highest		Historical maximum current | 
|  | 72 | currX_lowest		Historical minimum current | 
|  | 73 | currX_enable		Enable/disable all current sensors belonging to the | 
|  | 74 | sub-group. In POWER9, this attribute corresponds to | 
|  | 75 | each OCC. Using this attribute each OCC can be asked to | 
|  | 76 | disable/enable all of its current sensors. | 
|  | 77 | 1: Enable | 
|  | 78 | 0: Disable | 
|  | 79 |  | 
|  | 80 | energyX_input		Cumulative energy (microJoule) |