Re: [PATCH v6 0/2] ACPI / cpufreq: CPPC: Add ospm_nominal_perf support

From: Rafael J. Wysocki (Intel)

Date: Mon Jul 27 2026 - 09:30:45 EST


On Fri, Jul 17, 2026 at 11:54 PM Sumit Gupta <sumitg@xxxxxxxxxx> wrote:
>
> 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.

Christian, Pierre, any chance to have a look at this, please?

> 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/