Re: [PATCH 1/2] ACPI: CPPC: Add support for CPPC v4

From: Sumit Gupta

Date: Tue Apr 28 2026 - 10:36:31 EST



On 27/04/26 21:03, Mario Limonciello wrote:
External email: Use caution opening links or attachments


On 4/27/26 03:04, Sumit Gupta wrote:

On 27/04/26 12:36, zhenglifeng (A) wrote:
External email: Use caution opening links or attachments


It seems that mario has sent a similar patch:

https://lore.kernel.org/all/20260427035520.1427080-3-superm1@xxxxxxxxxx/


Thank you for sharing.
Yes, both look similar with below two change.
1. REG_OPTIONAL needs the 0x1FC7D0 -> 0x7FC7D0 update to mark
    the two new registers optional. This is present in my [PATCH 1/2].
2. For Resource Priority, pkg_data added to cpc_entry.
     This is present in Mario's [PATCH 2/6].


Hi Mario,
How would you like to proceed? A few options:
   (a) Let both CPPCv4 patches from this series go separately.
   (b) Fold the REG_OPTIONAL update from my patch 1/2 into your
       patch, and pull my patch 2/2 into your series.
   (c) Anything else you'd prefer.
Either way works for me.

Thank you,
Sumit Gupta



Reviewing yours points out that I totally missed updating REG_OPTIONAL
with the two new ACPI 6.7 fields being optional too.

In my series I only add in CPPv4 so I can build on top of the changes
for CPPCv5.

So - I would say we should let your patches merge for v4 and I'll drop
the relevant ones from my series and rebase mine on top of your work.


Thanks Mario.
I will proceed with this series and add your Reviewed-by to this patch in v2.

Thank you,
Sumit Gupta





On 4/27/2026 1:18 PM, Sumit Gupta wrote:
CPPC v4 (ACPI 6.6, Section 8.4.6) adds two optional entries to the
_CPC package:

1. OSPM Nominal Performance (8.4.6.1.2.6): A write-only register that
    lets OSPM inform the platform what it considers nominal performance.
    The platform classifies performance above this level as boost and
    below as throttle for its power/thermal decisions.

2. Resource Priority (8.4.6.1.2.7): A Package of Resource Priority
    Register Descriptor sub-packages that allow OSPM to set relative
    priority among processors for shared resources (boost, throttle,
    L2/L3 cache, memory bandwidth). Parsing the full structure is not
    yet supported; such entries are marked as unsupported.

Add v4 _CPC table parsing (25 entries) and update REG_OPTIONAL to
mark the two new registers as optional.

Signed-off-by: Sumit Gupta <sumitg@xxxxxxxxxx>
---


....