[PATCH v6 0/2] ACPI / cpufreq: CPPC: Add ospm_nominal_perf support
From: Sumit Gupta
Date: Fri Jul 17 2026 - 17:54:47 EST
This series adds support for the OSPM Nominal Performance register
(ACPI 6.6, Section 8.4.6.1.2.6) to the CPPC ACPI and cpufreq drivers.
Unlike the read-only Nominal Performance register, OSPM Nominal
Performance is writable and lets OSPM request a nominal level below
the platform-reported nominal. The platform treats performance above
this level as boost and below as throttle for its power and thermal
decisions.
Patch 1: adds the cppc_{get,set}_ospm_nominal_perf() helpers, a
per-policy cpufreq sysfs attribute (ospm_nominal_freq, in kHz), and
hooks the register into the OSPM-set save/restore table.
Patch 2: reflects the OSPM nominal in the cpufreq policy so that boost
and the frequency limits stay consistent with the register.
This series applies on top of the series
"cpufreq: CPPC: Preserve OSPM-set registers across hotplug and unload",
which provides the save/restore table that patch 1 hooks into:
https://lore.kernel.org/lkml/20260716153820.2007095-1-sumitg@xxxxxxxxxx/
v5[5] -> v6:
- New patch 2: reflect the OSPM nominal in the policy's boost state
and frequency limits.
- Patch 1:
- write only policy->cpu instead of looping over policy->cpus with
rollback. the register is treated as shared across a policy's CPUs.
- add the register to the OSPM-set save/restore table.
Sumit Gupta (2):
ACPI: CPPC: Add ospm_nominal_perf support
cpufreq: CPPC: Reflect ospm_nominal_perf in boost and limits
.../ABI/testing/sysfs-devices-system-cpu | 26 +++
drivers/acpi/cppc_acpi.c | 32 ++++
drivers/cpufreq/cppc_cpufreq.c | 166 +++++++++++++++++-
include/acpi/cppc_acpi.h | 10 ++
4 files changed, 226 insertions(+), 8 deletions(-)
v5: https://lore.kernel.org/lkml/20260615185934.2383514-1-sumitg@xxxxxxxxxx/
v4: https://lore.kernel.org/lkml/20260527194626.185286-1-sumitg@xxxxxxxxxx/
v3: https://lore.kernel.org/lkml/20260514194822.1841748-1-sumitg@xxxxxxxxxx/
v2: https://lore.kernel.org/lkml/20260430142430.755437-1-sumitg@xxxxxxxxxx/
v1: https://lore.kernel.org/lkml/20260427051823.280419-1-sumitg@xxxxxxxxxx/
--
2.34.1