Documentation/hwmon/smpro-hwmon.rst

Source file repositories/reference/linux-study-clean/Documentation/hwmon/smpro-hwmon.rst

File Facts

System
Linux kernel
Corpus path
Documentation/hwmon/smpro-hwmon.rst
Extension
.rst
Size
4096 bytes
Lines
103
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

.. SPDX-License-Identifier: GPL-2.0-only

Kernel driver Ampere(R)'s Altra(R) SMpro hwmon
==============================================

Supported chips:

  * Ampere(R) Altra(R)

    Prefix: ``smpro``

    Reference: `Altra SoC BMC Interface Specification`

Author: Thu Nguyen <thu@os.amperecomputing.com>

Description
-----------
The smpro-hwmon driver supports hardware monitoring for Ampere(R) Altra(R)
SoCs based on the SMpro co-processor (SMpro).  The following sensor metrics
are supported by the driver:

  * temperature
  * voltage
  * current
  * power

The interface provides the registers to query the various sensors and
their values which are then exported to userspace by this driver.

Usage Notes
-----------

The driver creates at least two sysfs files for each sensor.

* ``<sensor_type><idx>_label`` reports the sensor label.
* ``<sensor_type><idx>_input`` returns the sensor value.

The sysfs files are allocated in the SMpro rootfs folder, with one root
directory for each instance.

When the SoC is turned off, the driver will fail to read registers and
return ``-ENXIO``.

Sysfs entries
-------------

The following sysfs files are supported:

* Ampere(R) Altra(R):

  ============    =============  ======  ===============================================
  Name            Unit           Perm    Description
  ============    =============  ======  ===============================================
  temp1_input     millicelsius   RO      SoC temperature
  temp2_input     millicelsius   RO      Max temperature reported among SoC VRDs
  temp2_crit      millicelsius   RO      SoC VRD HOT Threshold temperature
  temp3_input     millicelsius   RO      Max temperature reported among DIMM VRDs
  temp4_input     millicelsius   RO      Max temperature reported among Core VRDs
  temp5_input     millicelsius   RO      Temperature of DIMM0 on CH0
  temp5_crit      millicelsius   RO      MEM HOT Threshold for all DIMMs
  temp6_input     millicelsius   RO      Temperature of DIMM0 on CH1
  temp6_crit      millicelsius   RO      MEM HOT Threshold for all DIMMs
  temp7_input     millicelsius   RO      Temperature of DIMM0 on CH2
  temp7_crit      millicelsius   RO      MEM HOT Threshold for all DIMMs
  temp8_input     millicelsius   RO      Temperature of DIMM0 on CH3
  temp8_crit      millicelsius   RO      MEM HOT Threshold for all DIMMs
  temp9_input     millicelsius   RO      Temperature of DIMM0 on CH4
  temp9_crit      millicelsius   RO      MEM HOT Threshold for all DIMMs
  temp10_input    millicelsius   RO      Temperature of DIMM0 on CH5
  temp10_crit     millicelsius   RO      MEM HOT Threshold for all DIMMs

Annotation

Implementation Notes