]> git.proxmox.com Git - mirror_edk2.git/blame - DynamicTablesPkg/Library/Acpi/Arm/AcpiPcctLibArm/PcctGenerator.h
DynamicTablesPkg: Add PCCT Generator
[mirror_edk2.git] / DynamicTablesPkg / Library / Acpi / Arm / AcpiPcctLibArm / PcctGenerator.h
CommitLineData
8405b148
PG
1/** @file\r
2 PCCT Table Generator\r
3\r
4 Copyright (c) 2022, Arm Limited. All rights reserved.<BR>\r
5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
6\r
7 @par Reference(s):\r
8 - ACPI 6.4 Specification - January 2021\r
9 s14 PLATFORM COMMUNICATIONS CHANNEL (PCC)\r
10\r
11**/\r
12\r
13#ifndef PCCT_GENERATOR_H_\r
14#define PCCT_GENERATOR_H_\r
15\r
16#pragma pack(1)\r
17\r
18/** Structure used to map a Pcc Subspace to an index.\r
19*/\r
20typedef struct MappingTable {\r
21 /// Mapping table for Subspace Ids.\r
22 /// Subspace ID/Index <-> CM_ARM_PCC_SUBSPACE_TYPE[X]_INFO pointer\r
23 VOID **Table;\r
24\r
25 /// Number of entries in the Table.\r
26 UINT32 MaxIndex;\r
27} MAPPING_TABLE;\r
28\r
29/** A structure holding the Pcct generator and additional private data.\r
30*/\r
31typedef struct AcpiPcctGenerator {\r
32 /// ACPI Table generator header\r
33 ACPI_TABLE_GENERATOR Header;\r
34\r
35 // Private fields are defined from here.\r
36\r
37 /// Table to map: Subspace ID/Index <-> CM_ARM_PCC_SUBSPACE_TYPE[X]_INFO pointer\r
38 MAPPING_TABLE MappingTable;\r
39} ACPI_PCCT_GENERATOR;\r
40\r
41#pragma pack()\r
42\r
43#endif // PCCT_GENERATOR_H_\r