Re: [PATCH 1/3] ACPI: PCC: Add PCC shared memory region command and status bitfields

From: lihuisong (C)
Date: Wed Sep 27 2023 - 00:14:25 EST


Hi Sudeep,

在 2023/9/26 20:28, Sudeep Holla 写道:
Define the common macros to use when referring to various bitfields in
the PCC generic communications channel command and status fields.
Can you define the bit0 macros in the "flags" for Extended PCC Subspace Shared Memory Region?

Currently different drivers that need to use these bitfields have defined
these locally. This common macro is intended to consolidate and replace
those.

Cc: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx>
---
include/acpi/pcc.h | 11 +++++++++++
1 file changed, 11 insertions(+)

diff --git a/include/acpi/pcc.h b/include/acpi/pcc.h
index 73e806fe7ce7..66d9934c2ee4 100644
--- a/include/acpi/pcc.h
+++ b/include/acpi/pcc.h
@@ -18,7 +18,18 @@ struct pcc_mbox_chan {
u16 min_turnaround_time;
};
+/* Generic Communications Channel Shared Memory Region */
+#define PCC_SIGNATURE 0x50424300
Why is this signature 0x50424300?
In ACPI spec, this signature is all 0x50434303.
+/* Generic Communications Channel Command Field */
+#define PCC_CMD_GENERATE_DB_INTR BIT(15)
+/* Generic Communications Channel Status Field */
+#define PCC_STATUS_CMD_COMPLETE BIT(0)
+#define PCC_STATUS_SCI_DOORBELL BIT(1)
+#define PCC_STATUS_ERROR BIT(2)
+#define PCC_STATUS_PLATFORM_NOTIFY BIT(3)
+
#define MAX_PCC_SUBSPACES 256
+
#ifdef CONFIG_PCC
extern struct pcc_mbox_chan *
pcc_mbox_request_channel(struct mbox_client *cl, int subspace_id);