Re: [PATCH v8 0/3] ACPI / cpufreq: CPPC: Add ospm_nominal_perf support

From: Rafael J. Wysocki (Intel)

Date: Fri Nov 06 2026 - 12:06:17 EST


On Fri, Nov 6, 2026 at 5:59 PM Christian Loehle
<christian.loehle@xxxxxxx> wrote:
>
> On 11/6/26 16:08, Rafael J. Wysocki (Intel) wrote:
> > Hi Sumit,
> >
> > On Fri, Oct 30, 2026 at 6:28 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.
> >>
> >> - Patch 1: adds ACPI helpers to write the register and to check that
> >> the platform supports it.
> >>
> >> - Patch 2: adds the per-policy ospm_nominal_freq attribute in kHz. The
> >> value is kept across CPU hotplug and suspend/resume. The register
> >> cannot be read back, so a read returns the last value written.
> >>
> >> - Patch 3: uses the OSPM nominal as the maximum frequency while boost
> >> is off. Lowering the nominal creates a boost range on a platform
> >> that has none, and boost can then be enabled.
> >>
> >> This series applies on top of v7 of:
> >> cpufreq: CPPC: Preserve OSPM-set registers across hotplug and unload
> >> https://lore.kernel.org/lkml/20261030092416.1993889-1-sumitg@xxxxxxxxxx/
> >>
> >> v7 -> v8:
> >> - Rebase on Christian's CPPC fixes series.
> >> - Patch 1:
> >> - use cpc_is_writable() from that series and drop cpc_reg_writable().
> >> - add the register to the list of controls the driver writes.
> >> - take cpc_desc_lock in cppc_ospm_nominal_perf_supported(), so the
> >> descriptor cannot be removed during the check.
> >> - Patch 2:
> >> - make ospm_nominal_freq read-write. A read returns the last value
> >> written, or "<unset>" before the first write. (Christian, Mario)
> >> - keep saving the values in the store handler, not at init(), so
> >> the driver writes the register only after the OS sets it. (Pierre)
> >> - Patch 3:
> >> - document in the ABI file how the OSPM nominal sets cpuinfo_max_freq
> >> and caps scaling_max_freq.
> >>
> >> Sumit Gupta (3):
> >> ACPI: CPPC: Add ospm_nominal_perf support
> >> cpufreq: CPPC: Add ospm_nominal_freq attribute
> >> cpufreq: CPPC: Reflect the OSPM nominal in boost and limits
> >>
> >> .../ABI/testing/sysfs-devices-system-cpu | 31 ++++
> >> drivers/acpi/cppc_acpi.c | 44 +++++
> >> drivers/cpufreq/cppc_cpufreq.c | 173 +++++++++++++++++-
> >> include/acpi/cppc_acpi.h | 10 +
> >> 4 files changed, 248 insertions(+), 10 deletions(-)
> >>
> >> v7: https://lore.kernel.org/lkml/20260807214837.863209-1-sumitg@xxxxxxxxxx/
> >> v6: https://lore.kernel.org/lkml/20260717215330.2215058-1-sumitg@xxxxxxxxxx/
> >> 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/
> >>
> >> --
> >
> > This would be good to go except that it doesn't apply for me on top of 7.4-rc1.
> >
> > Can you please rebase it and resend, with Christian's tags included?
> >
> > Thanks!
>
> It's based on the hotplug/resume series, I guess Sumit could post them as a combined patchset

That would help.