154 lines · plain
1Kernel driver occ-hwmon2=======================3 4Supported chips:5 6 * POWER87 * POWER98 9Author: Eddie James <eajames@linux.ibm.com>10 11Description12-----------13 14This driver supports hardware monitoring for the On-Chip Controller (OCC)15embedded on POWER processors. The OCC is a device that collects and aggregates16sensor data from the processor and the system. The OCC can provide the raw17sensor data as well as perform thermal and power management on the system.18 19The P8 version of this driver is a client driver of I2C. It may be probed20manually if an "ibm,p8-occ-hwmon" compatible device is found under the21appropriate I2C bus node in the device-tree.22 23The P9 version of this driver is a client driver of the FSI-based OCC driver.24It will be probed automatically by the FSI-based OCC driver.25 26Sysfs entries27-------------28 29The following attributes are supported. All attributes are read-only unless30specified.31 32The OCC sensor ID is an integer that represents the unique identifier of the33sensor with respect to the OCC. For example, a temperature sensor for the third34DIMM slot in the system may have a sensor ID of 7. This mapping is unavailable35to the device driver, which must therefore export the sensor ID as-is.36 37Some entries are only present with certain OCC sensor versions or only on38certain OCCs in the system. The version number is not exported to the user39but can be inferred.40 41temp[1-n]_label42 OCC sensor ID.43 44[with temperature sensor version 1]45 46 temp[1-n]_input47 Measured temperature of the component in millidegrees48 Celsius.49 50[with temperature sensor version >= 2]51 52 temp[1-n]_type53 The FRU (Field Replaceable Unit) type54 (represented by an integer) for the component55 that this sensor measures.56 temp[1-n]_fault57 Temperature sensor fault boolean; 1 to indicate58 that a fault is present or 0 to indicate that59 no fault is present.60 61 [with type == 3 (FRU type is VRM)]62 63 temp[1-n]_alarm64 VRM temperature alarm boolean; 1 to indicate65 alarm, 0 to indicate no alarm66 67 [else]68 69 temp[1-n]_input70 Measured temperature of the component in71 millidegrees Celsius.72 73freq[1-n]_label74 OCC sensor ID.75freq[1-n]_input76 Measured frequency of the component in MHz.77power[1-n]_input78 Latest measured power reading of the component in79 microwatts.80power[1-n]_average81 Average power of the component in microwatts.82power[1-n]_average_interval83 The amount of time over which the power average84 was taken in microseconds.85 86[with power sensor version < 2]87 88 power[1-n]_label89 OCC sensor ID.90 91[with power sensor version >= 2]92 93 power[1-n]_label94 OCC sensor ID + function ID + channel in the form95 of a string, delimited by underscores, i.e. "0_15_1".96 Both the function ID and channel are integers that97 further identify the power sensor.98 99[with power sensor version 0xa0]100 101 power[1-n]_label102 OCC sensor ID + sensor type in the form of a string,103 delimited by an underscore, i.e. "0_system". Sensor104 type will be one of "system", "proc", "vdd" or "vdn".105 For this sensor version, OCC sensor ID will be the same106 for all power sensors.107 108[present only on "master" OCC; represents the whole system power; only one of109this type of power sensor will be present]110 111 power[1-n]_label112 "system"113 power[1-n]_input114 Latest system output power in microwatts.115 power[1-n]_cap116 Current system power cap in microwatts.117 power[1-n]_cap_not_redundant118 System power cap in microwatts when119 there is not redundant power.120 power[1-n]_cap_max121 Maximum power cap that the OCC can enforce in122 microwatts.123 power[1-n]_cap_min Minimum power cap that the OCC can enforce in124 microwatts.125 power[1-n]_cap_user The power cap set by the user, in microwatts.126 This attribute will return 0 if no user power127 cap has been set. This attribute is read-write,128 but writing any precision below watts will be129 ignored, i.e. requesting a power cap of130 500900000 microwatts will result in a power cap131 request of 500 watts.132 133 [with caps sensor version > 1]134 135 power[1-n]_cap_user_source136 Indicates how the user power cap was137 set. This is an integer that maps to138 system or firmware components that can139 set the user power cap.140 141The following "extn" sensors are exported as a way for the OCC to provide data142that doesn't fit anywhere else. The meaning of these sensors is entirely143dependent on their data, and cannot be statically defined.144 145extn[1-n]_label146 ASCII ID or OCC sensor ID.147extn[1-n]_flags148 This is one byte hexadecimal value. Bit 7 indicates the149 type of the label attribute; 1 for sensor ID, 0 for150 ASCII ID. Other bits are reserved.151extn[1-n]_input152 6 bytes of hexadecimal data, with a meaning defined by153 the sensor ID.154