[PATCH v2 0/2] ACPI: CPPC: Add CPPC v4 support (ACPI 6.6)

Sumit Gupta
2026-04-30T14:25:10Z

Add initial kernel support for CPPC v4 (ACPI 6.6, Section 8.4.6),
which extends the _CPC package from 23 to 25 entries with two
optional fields:

- OSPM Nominal Performance (8.4.6.1.2.6): register used by OSPM
to tell the platform what it considers nominal. The platform
classifies performance above this as boost and below as
throttle for power/thermal decisions.

- Resource Priority (8.4.6.1.2.7): Package of Resource Priority
Register Descriptor sub-packages. Full parsing is not yet
implemented; such entries are marked as unsupported.

Patch 1: Add v4 _CPC parsing - validate the 25-entry layout,
handle the Resource Priority package, and mark the two new
registers optional.

Patch 2: Add acpi_cppc/ospm_nominal_perf as a read-write sysfs
attribute, and initialize it to the platform nominal value
during cppc_cpufreq policy init.

---
v1[1] -> v2:
- Patch 1: added Reviewed-by from Mario Limonciello.
- Patch 2:
- Make ospm_nominal_perf sysfs read-write; cache last write in
cpc_desc and skip redundant register writes.
- Validate input in cppc_set_ospm_nominal_perf.

Sumit Gupta (2):
ACPI: CPPC: Add support for CPPC v4
ACPI: CPPC: Add ospm_nominal_perf support

drivers/acpi/cppc_acpi.c | 93 +++++++++++++++++++++++++++++++---
drivers/cpufreq/cppc_cpufreq.c | 10 ++++
include/acpi/cppc_acpi.h | 14 ++++-
3 files changed, 109 insertions(+), 8 deletions(-)

[1] https://lore.kernel.org/lkml/20260427051823.280419-1-sumitg@nvidia.com/

--
2.34.1