mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00

Add a new sysfs ABI documentation file describing the layout and content of the features-<PCI BDF>/ directory used by Intel PMT (Platform Monitoring Technology). This directory exposes telemetry and control feature details for a given PMT PCI device. Signed-off-by: David E. Box <david.e.box@linux.intel.com> Link: https://lore.kernel.org/r/20250703022832.1302928-10-david.e.box@linux.intel.com Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
134 lines
5 KiB
Text
134 lines
5 KiB
Text
What: /sys/class/intel_pmt/features-<PCI BDF>/
|
|
Date: 2025-04-24
|
|
KernelVersion: 6.16
|
|
Contact: david.e.box@linux.intel.com
|
|
Description:
|
|
The `features-<PCI BDF>/` directory represents the "features"
|
|
capability exposed by Intel PMT (Platform Monitoring Technology)
|
|
for the given PCI device.
|
|
|
|
Each directory corresponds to a PMT feature and contains
|
|
attributes describing the available telemetry, monitoring, or
|
|
control functionalities.
|
|
|
|
Directory Structure:
|
|
|
|
/sys/class/intel_pmt/features-<PCI BDF>/
|
|
├── accelerator_telemetry/ # Per-accelerator telemetry data
|
|
├── crash_log/ # Contains system crash telemetry logs
|
|
├── per_core_environment_telemetry/ # Environmental telemetry per core
|
|
├── per_core_performance_telemetry/ # Performance telemetry per core
|
|
├── per_rmid_energy_telemetry/ # Energy telemetry for RMIDs
|
|
├── per_rmid_perf_telemetry/ # Performance telemetry for RMIDs
|
|
├── tpmi_control/ # TPMI-related controls and telemetry
|
|
├── tracing/ # PMT tracing features
|
|
└── uncore_telemetry/ # Uncore telemetry data
|
|
|
|
Common Files (Present in all feature directories):
|
|
|
|
caps
|
|
- Read-only
|
|
- Lists available capabilities for this feature.
|
|
|
|
guids
|
|
- Read-only
|
|
- Lists GUIDs associated with this feature.
|
|
|
|
Additional Attributes (Conditional Presence):
|
|
|
|
max_command_size
|
|
- Read-only
|
|
- Present if the feature supports out-of-band MCTP access.
|
|
- Maximum supported MCTP command size for out-of-band PMT access (bytes).
|
|
|
|
max_stream_size
|
|
- Read-only
|
|
- Present if the feature supports out-of-band MCTP access.
|
|
- Maximum supported MCTP stream size (bytes).
|
|
|
|
min_watcher_period_ms
|
|
- Read-only
|
|
- Present if the feature supports the watcher API.
|
|
The watcher API provides a writable control interface that allows user
|
|
configuration of monitoring behavior, such as setting the sampling or
|
|
reporting interval.
|
|
- Minimum supported time period for the watcher interface (milliseconds).
|
|
|
|
num_rmids
|
|
- Read-only
|
|
- Present if the feature supports RMID (Resource Monitoring ID) telemetry.
|
|
RMIDs are identifiers used by hardware to track and report resource usage,
|
|
such as memory bandwidth or energy consumption, on a per-logical-entity
|
|
basis (e.g., per core, thread, or process group).
|
|
- Maximum number of RMIDs tracked simultaneously.
|
|
|
|
Example:
|
|
For a device with PCI BDF `0000:00:03.1`, the directory tree could look like:
|
|
|
|
/sys/class/intel_pmt/features-0000:00:03.1/
|
|
├── accelerator_telemetry/
|
|
│ ├── caps
|
|
│ ├── guids
|
|
│ ├── max_command_size
|
|
│ ├── max_stream_size
|
|
│ ├── min_watcher_period_ms
|
|
├── crash_log/
|
|
│ ├── caps
|
|
│ ├── guids
|
|
│ ├── max_command_size
|
|
│ ├── max_stream_size
|
|
├── per_core_environment_telemetry/
|
|
│ ├── caps
|
|
│ ├── guids
|
|
│ ├── max_command_size
|
|
│ ├── max_stream_size
|
|
│ ├── min_watcher_period_ms
|
|
├── per_rmid_energy_telemetry/
|
|
│ ├── caps
|
|
│ ├── guids
|
|
│ ├── max_command_size
|
|
│ ├── max_stream_size
|
|
│ ├── min_watcher_period_ms
|
|
│ ├── num_rmids
|
|
├── tpmi_control/
|
|
│ ├── caps
|
|
│ ├── guids
|
|
├── tracing/
|
|
│ ├── caps
|
|
│ ├── guids
|
|
├── uncore_telemetry/
|
|
│ ├── caps
|
|
│ ├── guids
|
|
│ ├── max_command_size
|
|
│ ├── max_stream_size
|
|
│ ├── min_watcher_period_ms
|
|
|
|
Notes:
|
|
- Some attributes are only present if the corresponding feature supports
|
|
the capability (e.g., `max_command_size` for MCTP-capable features).
|
|
- Features supporting RMIDs include `num_rmids`.
|
|
- Features supporting the watcher API include `min_watcher_period_ms`.
|
|
- The `caps` file provides additional information about the functionality
|
|
of the feature.
|
|
|
|
Example 'caps' content for the 'tracing' feature:
|
|
|
|
/sys/class/intel_pmt/features-0000:00:03.1/
|
|
├── tracing/
|
|
│ ├── caps
|
|
|
|
telemetry Available: No
|
|
watcher Available: Yes
|
|
crashlog Available: No
|
|
streaming Available: No
|
|
threashold Available: No
|
|
window Available: No
|
|
config Available: Yes
|
|
tracing Available: No
|
|
inband Available: Yes
|
|
oob Available: Yes
|
|
secure_chan Available: No
|
|
pmt_sp Available: Yes
|
|
pmt_sp_policy Available: Yes
|
|
mailbox Available: Yes
|
|
bios_lock Available: Yes
|