Documentation/driver-api/thermal/intel_dptf.rst

Source file repositories/reference/linux-study-clean/Documentation/driver-api/thermal/intel_dptf.rst

File Facts

System
Linux kernel
Corpus path
Documentation/driver-api/thermal/intel_dptf.rst
Extension
.rst
Size
15040 bytes
Lines
438
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

===============================================================
Intel(R) Dynamic Platform and Thermal Framework Sysfs Interface
===============================================================

:Copyright: © 2022 Intel Corporation

:Author: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>

Introduction
------------

Intel(R) Dynamic Platform and Thermal Framework (DPTF) is a platform
level hardware/software solution for power and thermal management.

As a container for multiple power/thermal technologies, DPTF provides
a coordinated approach for different policies to effect the hardware
state of a system.

Since it is a platform level framework, this has several components.
Some parts of the technology is implemented in the firmware and uses
ACPI and PCI devices to expose various features for monitoring and
control. Linux has a set of kernel drivers exposing hardware interface
to user space. This allows user space thermal solutions like
"Linux Thermal Daemon" to read platform specific thermal and power
tables to deliver adequate performance while keeping the system under
thermal limits.

DPTF ACPI Drivers interface
----------------------------

:file:`/sys/bus/platform/devices/<N>/uuids`, where <N>
=INT3400|INTC1040|INTC1041|INTC10A0

``available_uuids`` (RO)
	A set of UUIDs strings presenting available policies
	which should be notified to the firmware when the
	user space can support those policies.

	UUID strings:

	"42A441D6-AE6A-462b-A84B-4A8CE79027D3" : Passive 1

	"3A95C389-E4B8-4629-A526-C52C88626BAE" : Active

	"97C68AE7-15FA-499c-B8C9-5DA81D606E0A" : Critical

	"63BE270F-1C11-48FD-A6F7-3AF253FF3E2D" : Adaptive performance

	"5349962F-71E6-431D-9AE8-0A635B710AEE" : Emergency call

	"9E04115A-AE87-4D1C-9500-0F3E340BFE75" : Passive 2

	"F5A35014-C209-46A4-993A-EB56DE7530A1" : Power Boss

	"6ED722A7-9240-48A5-B479-31EEF723D7CF" : Virtual Sensor

	"16CAF1B7-DD38-40ED-B1C1-1B8A1913D531" : Cooling mode

	"BE84BABF-C4D4-403D-B495-3128FD44dAC1" : HDC

``current_uuid`` (RW)
	User space can write strings from available UUIDs, one at a
	time.

:file:`/sys/bus/platform/devices/<N>/`, where <N>
=INT3400|INTC1040|INTC1041|INTC10A0

``imok`` (WO)

Annotation

Implementation Notes