zsphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget/translations/zh_CN/hwmon/occmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget/translations/zh_TW/hwmon/occmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget/translations/it_IT/hwmon/occmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget/translations/ja_JP/hwmon/occmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget/translations/ko_KR/hwmon/occmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget/translations/sp_SP/hwmon/occmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhsection)}(hhh](htitle)}(hKernel driver occ-hwmonh]hKernel driver occ-hwmon}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhh7/var/lib/git/docbuild/linux/Documentation/hwmon/occ.rsthKubh paragraph)}(hSupported chips:h]hSupported chips:}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh block_quote)}(h* POWER8 * POWER9 h]h bullet_list)}(hhh](h list_item)}(hPOWER8h]h)}(hhh]hPOWER8}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhubh)}(hPOWER9 h]h)}(hPOWER9h]hPOWER9}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhubeh}(h]h ]h"]h$]h&]bullet*uh1hhhhKhhubah}(h]h ]h"]h$]h&]uh1hhhhKhhhhubh)}(h+Author: Eddie James h](hAuthor: Eddie James <}(hjhhhNhNubh reference)}(heajames@linux.ibm.comh]heajames@linux.ibm.com}(hjhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:eajames@linux.ibm.comuh1jhjubh>}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hhhhubh)}(hhh](h)}(h Descriptionh]h Description}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj5hhhhhK ubh)}(hX.This driver supports hardware monitoring for the On-Chip Controller (OCC) embedded on POWER processors. The OCC is a device that collects and aggregates sensor data from the processor and the system. The OCC can provide the raw sensor data as well as perform thermal and power management on the system.h]hX.This driver supports hardware monitoring for the On-Chip Controller (OCC) embedded on POWER processors. The OCC is a device that collects and aggregates sensor data from the processor and the system. The OCC can provide the raw sensor data as well as perform thermal and power management on the system.}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj5hhubh)}(hThe P8 version of this driver is a client driver of I2C. It may be probed manually if an "ibm,p8-occ-hwmon" compatible device is found under the appropriate I2C bus node in the device-tree.h]hThe P8 version of this driver is a client driver of I2C. It may be probed manually if an “ibm,p8-occ-hwmon” compatible device is found under the appropriate I2C bus node in the device-tree.}(hjThhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj5hhubh)}(hThe P9 version of this driver is a client driver of the FSI-based OCC driver. It will be probed automatically by the FSI-based OCC driver.h]hThe P9 version of this driver is a client driver of the FSI-based OCC driver. It will be probed automatically by the FSI-based OCC driver.}(hjbhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj5hhubeh}(h] descriptionah ]h"] descriptionah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(h Sysfs entriesh]h Sysfs entries}(hj{hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjxhhhhhKubh)}(hVThe following attributes are supported. All attributes are read-only unless specified.h]hVThe following attributes are supported. All attributes are read-only unless specified.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjxhhubh)}(hX2The OCC sensor ID is an integer that represents the unique identifier of the sensor with respect to the OCC. For example, a temperature sensor for the third DIMM slot in the system may have a sensor ID of 7. This mapping is unavailable to the device driver, which must therefore export the sensor ID as-is.h]hX2The OCC sensor ID is an integer that represents the unique identifier of the sensor with respect to the OCC. For example, a temperature sensor for the third DIMM slot in the system may have a sensor ID of 7. This mapping is unavailable to the device driver, which must therefore export the sensor ID as-is.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hjxhhubh)}(hSome entries are only present with certain OCC sensor versions or only on certain OCCs in the system. The version number is not exported to the user but can be inferred.h]hSome entries are only present with certain OCC sensor versions or only on certain OCCs in the system. The version number is not exported to the user but can be inferred.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK%hjxhhubhdefinition_list)}(hhh]hdefinition_list_item)}(htemp[1-n]_label OCC sensor ID. h](hterm)}(htemp[1-n]_labelh]htemp[1-n]_label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK*hjubh definition)}(hhh]h)}(hOCC sensor ID.h]hOCC sensor ID.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK*hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK*hjubah}(h]h ]h"]h$]h&]uh1jhjxhhhhhNubh)}(h#[with temperature sensor version 1]h]h#[with temperature sensor version 1]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK,hjxhhubh)}(hwtemp[1-n]_input Measured temperature of the component in millidegrees Celsius. h]j)}(hhh]j)}(hOtemp[1-n]_input Measured temperature of the component in millidegrees Celsius. h](j)}(htemp[1-n]_inputh]htemp[1-n]_input}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK0hjubj)}(hhh]h)}(h>Measured temperature of the component in millidegrees Celsius.h]h>Measured temperature of the component in millidegrees Celsius.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK/hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK0hjubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK.hjxhhubh)}(h&[with temperature sensor version >= 2]h]h&[with temperature sensor version >= 2]}(hjChhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK2hjxhhubh)}(hXtemp[1-n]_type The FRU (Field Replaceable Unit) type (represented by an integer) for the component that this sensor measures. temp[1-n]_fault Temperature sensor fault boolean; 1 to indicate that a fault is present or 0 to indicate that no fault is present. [with type == 3 (FRU type is VRM)] temp[1-n]_alarm VRM temperature alarm boolean; 1 to indicate alarm, 0 to indicate no alarm [else] temp[1-n]_input Measured temperature of the component in millidegrees Celsius. h](j)}(hhh](j)}(h}temp[1-n]_type The FRU (Field Replaceable Unit) type (represented by an integer) for the component that this sensor measures.h](j)}(htemp[1-n]_typeh]htemp[1-n]_type}(hj\hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK6hjXubj)}(hhh]h)}(hnThe FRU (Field Replaceable Unit) type (represented by an integer) for the component that this sensor measures.h]hnThe FRU (Field Replaceable Unit) type (represented by an integer) for the component that this sensor measures.}(hjmhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK5hjjubah}(h]h ]h"]h$]h&]uh1jhjXubeh}(h]h ]h"]h$]h&]uh1jhhhK6hjUubj)}(htemp[1-n]_fault Temperature sensor fault boolean; 1 to indicate that a fault is present or 0 to indicate that no fault is present. h](j)}(htemp[1-n]_faulth]htemp[1-n]_fault}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK;hjubj)}(hhh]h)}(hrTemperature sensor fault boolean; 1 to indicate that a fault is present or 0 to indicate that no fault is present.h]hrTemperature sensor fault boolean; 1 to indicate that a fault is present or 0 to indicate that no fault is present.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK9hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhK;hjUubeh}(h]h ]h"]h$]h&]uh1jhjQubh)}(h"[with type == 3 (FRU type is VRM)]h]h"[with type == 3 (FRU type is VRM)]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK=hjQubh)}(htemp[1-n]_alarm VRM temperature alarm boolean; 1 to indicate alarm, 0 to indicate no alarm h]j)}(hhh]j)}(h[temp[1-n]_alarm VRM temperature alarm boolean; 1 to indicate alarm, 0 to indicate no alarm h](j)}(htemp[1-n]_alarmh]htemp[1-n]_alarm}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKAhjubj)}(hhh]h)}(hJVRM temperature alarm boolean; 1 to indicate alarm, 0 to indicate no alarmh]hJVRM temperature alarm boolean; 1 to indicate alarm, 0 to indicate no alarm}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK@hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKAhjubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK?hjQubh)}(h[else]h]h[else]}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKChjQubh)}(htemp[1-n]_input Measured temperature of the component in millidegrees Celsius. h]j)}(hhh]j)}(hOtemp[1-n]_input Measured temperature of the component in millidegrees Celsius. h](j)}(htemp[1-n]_inputh]htemp[1-n]_input}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKGhj!ubj)}(hhh]h)}(h>Measured temperature of the component in millidegrees Celsius.h]h>Measured temperature of the component in millidegrees Celsius.}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKFhj3ubah}(h]h ]h"]h$]h&]uh1jhj!ubeh}(h]h ]h"]h$]h&]uh1jhhhKGhjubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKEhjQubeh}(h]h ]h"]h$]h&]uh1hhhhK4hjxhhubj)}(hhh](j)}(hfreq[1-n]_label OCC sensor ID.h](j)}(hfreq[1-n]_labelh]hfreq[1-n]_label}(hjihhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKIhjeubj)}(hhh]h)}(hOCC sensor ID.h]hOCC sensor ID.}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKJhjwubah}(h]h ]h"]h$]h&]uh1jhjeubeh}(h]h ]h"]h$]h&]uh1jhhhKIhjbubj)}(h;freq[1-n]_input Measured frequency of the component in MHz.h](j)}(hfreq[1-n]_inputh]hfreq[1-n]_input}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKKhjubj)}(hhh]h)}(h+Measured frequency of the component in MHz.h]h+Measured frequency of the component in MHz.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKLhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKKhjbhhubj)}(hNpower[1-n]_input Latest measured power reading of the component in microwatts.h](j)}(hpower[1-n]_inputh]hpower[1-n]_input}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKNhjubj)}(hhh]h)}(h=Latest measured power reading of the component in microwatts.h]h=Latest measured power reading of the component in microwatts.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKNhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKNhjbhhubj)}(h@power[1-n]_average Average power of the component in microwatts.h](j)}(hpower[1-n]_averageh]hpower[1-n]_average}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKPhjubj)}(hhh]h)}(h-Average power of the component in microwatts.h]h-Average power of the component in microwatts.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKQhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKPhjbhhubj)}(hgpower[1-n]_average_interval The amount of time over which the power average was taken in microseconds. h](j)}(hpower[1-n]_average_intervalh]hpower[1-n]_average_interval}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKThj!ubj)}(hhh]h)}(hJThe amount of time over which the power average was taken in microseconds.h]hJThe amount of time over which the power average was taken in microseconds.}(hj6hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKShj3ubah}(h]h ]h"]h$]h&]uh1jhj!ubeh}(h]h ]h"]h$]h&]uh1jhhhKThjbhhubeh}(h]h ]h"]h$]h&]uh1jhjxhhhhhNubh)}(h[with power sensor version < 2]h]h[with power sensor version < 2]}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKVhjxhhubh)}(h4power[1-n]_label OCC sensor ID. h]j)}(hhh]j)}(h power[1-n]_label OCC sensor ID. h](j)}(hpower[1-n]_labelh]hpower[1-n]_label}(hjohhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKYhjkubj)}(hhh]h)}(hOCC sensor ID.h]hOCC sensor ID.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKYhj}ubah}(h]h ]h"]h$]h&]uh1jhjkubeh}(h]h ]h"]h$]h&]uh1jhhhKYhjhubah}(h]h ]h"]h$]h&]uh1jhjdubah}(h]h ]h"]h$]h&]uh1hhhhKXhjxhhubh)}(h [with power sensor version >= 2]h]h [with power sensor version >= 2]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK[hjxhhubh)}(hXpower[1-n]_label OCC sensor ID + function ID + channel in the form of a string, delimited by underscores, i.e. "0_15_1". Both the function ID and channel are integers that further identify the power sensor. h]j)}(hhh]j)}(hpower[1-n]_label OCC sensor ID + function ID + channel in the form of a string, delimited by underscores, i.e. "0_15_1". Both the function ID and channel are integers that further identify the power sensor. h](j)}(hpower[1-n]_labelh]hpower[1-n]_label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKahjubj)}(hhh]h)}(hOCC sensor ID + function ID + channel in the form of a string, delimited by underscores, i.e. "0_15_1". Both the function ID and channel are integers that further identify the power sensor.h]hOCC sensor ID + function ID + channel in the form of a string, delimited by underscores, i.e. “0_15_1”. Both the function ID and channel are integers that further identify the power sensor.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK^hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKahjubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK]hjxhhubh)}(h [with power sensor version 0xa0]h]h [with power sensor version 0xa0]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKchjxhhubh)}(hXcpower[1-n]_label OCC sensor ID + sensor type in the form of a string, delimited by an underscore, i.e. "0_system". Sensor type will be one of "system", "proc", "vdd" or "vdn". For this sensor version, OCC sensor ID will be the same for all power sensors. h]j)}(hhh]j)}(hpower[1-n]_label OCC sensor ID + sensor type in the form of a string, delimited by an underscore, i.e. "0_system". Sensor type will be one of "system", "proc", "vdd" or "vdn". For this sensor version, OCC sensor ID will be the same for all power sensors. h](j)}(hpower[1-n]_labelh]hpower[1-n]_label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKjhj ubj)}(hhh]h)}(hOCC sensor ID + sensor type in the form of a string, delimited by an underscore, i.e. "0_system". Sensor type will be one of "system", "proc", "vdd" or "vdn". For this sensor version, OCC sensor ID will be the same for all power sensors.h]hXOCC sensor ID + sensor type in the form of a string, delimited by an underscore, i.e. “0_system”. Sensor type will be one of “system”, “proc”, “vdd” or “vdn”. For this sensor version, OCC sensor ID will be the same for all power sensors.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKfhjubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhhhKjhjubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKehjxhhubh)}(hx[present only on "master" OCC; represents the whole system power; only one of this type of power sensor will be present]h]h|[present only on “master” OCC; represents the whole system power; only one of this type of power sensor will be present]}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKlhjxhhubh)}(hXpower[1-n]_label "system" power[1-n]_input Latest system output power in microwatts. power[1-n]_cap Current system power cap in microwatts. power[1-n]_cap_not_redundant System power cap in microwatts when there is not redundant power. power[1-n]_cap_max Maximum power cap that the OCC can enforce in microwatts. power[1-n]_cap_min Minimum power cap that the OCC can enforce in microwatts. power[1-n]_cap_user The power cap set by the user, in microwatts. This attribute will return 0 if no user power cap has been set. This attribute is read-write, but writing any precision below watts will be ignored, i.e. requesting a power cap of 500900000 microwatts will result in a power cap request of 500 watts. [with caps sensor version > 1] power[1-n]_cap_user_source Indicates how the user power cap was set. This is an integer that maps to system or firmware components that can set the user power cap. h](j)}(hhh](j)}(hpower[1-n]_label "system"h](j)}(hpower[1-n]_labelh]hpower[1-n]_label}(hj_hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKohj[ubj)}(hhh]h)}(h"system"h]h “system”}(hjphhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKphjmubah}(h]h ]h"]h$]h&]uh1jhj[ubeh}(h]h ]h"]h$]h&]uh1jhhhKohjXubj)}(h:power[1-n]_input Latest system output power in microwatts.h](j)}(hpower[1-n]_inputh]hpower[1-n]_input}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKqhjubj)}(hhh]h)}(h)Latest system output power in microwatts.h]h)Latest system output power in microwatts.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKrhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKqhjXubj)}(h6power[1-n]_cap Current system power cap in microwatts.h](j)}(hpower[1-n]_caph]hpower[1-n]_cap}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKshjubj)}(hhh]h)}(h'Current system power cap in microwatts.h]h'Current system power cap in microwatts.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKthjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKshjXubj)}(h^power[1-n]_cap_not_redundant System power cap in microwatts when there is not redundant power.h](j)}(hpower[1-n]_cap_not_redundanth]hpower[1-n]_cap_not_redundant}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKvhjubj)}(hhh]h)}(hASystem power cap in microwatts when there is not redundant power.h]hASystem power cap in microwatts when there is not redundant power.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKvhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKvhjXubj)}(hLpower[1-n]_cap_max Maximum power cap that the OCC can enforce in microwatts.h](j)}(hpower[1-n]_cap_maxh]hpower[1-n]_cap_max}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKyhjubj)}(hhh]h)}(h9Maximum power cap that the OCC can enforce in microwatts.h]h9Maximum power cap that the OCC can enforce in microwatts.}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKyhj)ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKyhjXubj)}(hUpower[1-n]_cap_min Minimum power cap that the OCC can enforce in microwatts.h](j)}(hIpower[1-n]_cap_min Minimum power cap that the OCC can enforce inh]hIpower[1-n]_cap_min Minimum power cap that the OCC can enforce in}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK{hjFubj)}(hhh]h)}(h microwatts.h]h microwatts.}(hj[hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK|hjXubah}(h]h ]h"]h$]h&]uh1jhjFubeh}(h]h ]h"]h$]h&]uh1jhhhK{hjXubj)}(hXDpower[1-n]_cap_user The power cap set by the user, in microwatts. This attribute will return 0 if no user power cap has been set. This attribute is read-write, but writing any precision below watts will be ignored, i.e. requesting a power cap of 500900000 microwatts will result in a power cap request of 500 watts. h](j)}(hIpower[1-n]_cap_user The power cap set by the user, in microwatts.h]hIpower[1-n]_cap_user The power cap set by the user, in microwatts.}(hjyhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjuubj)}(hhh]h)}(hThis attribute will return 0 if no user power cap has been set. This attribute is read-write, but writing any precision below watts will be ignored, i.e. requesting a power cap of 500900000 microwatts will result in a power cap request of 500 watts.h]hThis attribute will return 0 if no user power cap has been set. This attribute is read-write, but writing any precision below watts will be ignored, i.e. requesting a power cap of 500900000 microwatts will result in a power cap request of 500 watts.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK~hjubah}(h]h ]h"]h$]h&]uh1jhjuubeh}(h]h ]h"]h$]h&]uh1jhhhKhjXubeh}(h]h ]h"]h$]h&]uh1jhjTubh)}(h[with caps sensor version > 1]h]h[with caps sensor version > 1]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjTubh)}(hX$power[1-n]_cap_user_source Indicates how the user power cap was set. This is an integer that maps to system or firmware components that can set the user power cap. h]j)}(hhh]j)}(hpower[1-n]_cap_user_source Indicates how the user power cap was set. This is an integer that maps to system or firmware components that can set the user power cap. h](j)}(hpower[1-n]_cap_user_sourceh]hpower[1-n]_cap_user_source}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(hhh]h)}(hIndicates how the user power cap was set. This is an integer that maps to system or firmware components that can set the user power cap.h]hIndicates how the user power cap was set. This is an integer that maps to system or firmware components that can set the user power cap.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjTubeh}(h]h ]h"]h$]h&]uh1hhhhKohjxhhubh)}(hThe following "extn" sensors are exported as a way for the OCC to provide data that doesn't fit anywhere else. The meaning of these sensors is entirely dependent on their data, and cannot be statically defined.h]hThe following “extn” sensors are exported as a way for the OCC to provide data that doesn’t fit anywhere else. The meaning of these sensors is entirely dependent on their data, and cannot be statically defined.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjxhhubj)}(hhh](j)}(h*extn[1-n]_label ASCII ID or OCC sensor ID.h](j)}(hextn[1-n]_labelh]hextn[1-n]_label}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(hhh]h)}(hASCII ID or OCC sensor ID.h]hASCII ID or OCC sensor ID.}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj#ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(hextn[1-n]_flags This is one byte hexadecimal value. Bit 7 indicates the type of the label attribute; 1 for sensor ID, 0 for ASCII ID. Other bits are reserved.h](j)}(hextn[1-n]_flagsh]hextn[1-n]_flags}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj@ubj)}(hhh]h)}(hThis is one byte hexadecimal value. Bit 7 indicates the type of the label attribute; 1 for sensor ID, 0 for ASCII ID. Other bits are reserved.h]hThis is one byte hexadecimal value. Bit 7 indicates the type of the label attribute; 1 for sensor ID, 0 for ASCII ID. Other bits are reserved.}(hjUhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjRubah}(h]h ]h"]h$]h&]uh1jhj@ubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubj)}(hUextn[1-n]_input 6 bytes of hexadecimal data, with a meaning defined by the sensor ID.h](j)}(hextn[1-n]_inputh]hextn[1-n]_input}(hjshhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjoubj)}(hhh]h)}(hE6 bytes of hexadecimal data, with a meaning defined by the sensor ID.h]hE6 bytes of hexadecimal data, with a meaning defined by the sensor ID.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjoubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubeh}(h]h ]h"]h$]h&]uh1jhjxhhhhhNubeh}(h] sysfs-entriesah ]h"] sysfs entriesah$]h&]uh1hhhhhhhhKubeh}(h]kernel-driver-occ-hwmonah ]h"]kernel driver occ-hwmonah$]h&]uh1hhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids}(jjjujrjju nametypes}(jjujuh}(jhjrj5jjxu footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log] decorationNhhub.