[PATCH 0/6] ACPI/PCC: Preserve platform-populated PCC signatures

From: Sudeep Holla

Date: Sat Jun 27 2026 - 12:39:36 EST


ACPI PCC shared memory layouts reserve the first dword for the PCC
signature. ACPI specification defines the signature as 0x50434300 ORed
with the PCC subspace ID, and ACPI 6.6 clarify that the signature is
populated by the platform and verified by OSPM.

This series centralizes PCC shared memory signature validation in the PCC
mailbox controller and stops PCC users from rewriting the signature before
each command. Clients that previously copied complete local PCC headers
now update only the mutable command/status/flags/length/payload fields.

The final patch also fixes the PCC OperationRegion handler. ACPI defines
a PCC OperationRegion as the shared memory fields that follow the PCC
signature, with the OperationRegion length covering only those fields. The
handler is updated to copy to/from the region after the signature and to
reject regions that do not fit there.

All patches can go independently as there is no strict dependency between
them and posted together for the complete context.

Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxxxxx>
---
Sudeep Holla (6):
mailbox: pcc: Validate shared memory signature on request
hwmon: xgene: Stop writing PCC shared memory signature
i2c: xgene-slimpro: Stop writing PCC shared memory signature
devfreq: hisi_uncore: Preserve PCC shared memory signature
soc: hisilicon: kunpeng_hccs: Preserve PCC signatures
ACPI: PCC: Preserve shared memory signature in OpRegion handler

drivers/acpi/acpi_pcc.c | 20 ++++++++++++++----
drivers/devfreq/hisi_uncore_freq.c | 15 +++++++-------
drivers/hwmon/xgene-hwmon.c | 4 ----
drivers/i2c/busses/i2c-xgene-slimpro.c | 3 ---
drivers/mailbox/pcc.c | 38 +++++++++++++++++++++++++++++-----
drivers/soc/hisilicon/kunpeng_hccs.c | 24 ++++++++-------------
6 files changed, 65 insertions(+), 39 deletions(-)
---
base-commit: 5a66900afbd6b2a063eebad35294038a654de2b0
change-id: 20260627-acpi_pcc_signature-7b70b0633c8f


--
Regards,
Sudeep