MdePkg: Add 'Type 5' PCC structure

Bugzilla: 3516 (https://bugzilla.tianocore.org/show_bug.cgi?id=3516)

Make changes to ACPI 6.4 header according to the latest specification:
- ACPI 6.4 January 2021, Section 14.1.7, Section 14.4
- Mantis ID 2010 (https://mantis.uefi.org/mantis/view.php?id=2010)

Signed-off-by: Chris Jones <christopher.jones@arm.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
This commit is contained in:
Chris Jones 2021-07-21 11:14:50 +01:00 committed by mergify[bot]
parent 357383bc4f
commit 7b17bcd9a0
1 changed files with 29 additions and 0 deletions

View File

@ -2329,6 +2329,7 @@ typedef struct {
#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_2_HW_REDUCED_COMMUNICATIONS 0x02 #define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_2_HW_REDUCED_COMMUNICATIONS 0x02
#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_3_EXTENDED_PCC 0x03 #define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_3_EXTENDED_PCC 0x03
#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_4_EXTENDED_PCC 0x04 #define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_4_EXTENDED_PCC 0x04
#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_5_HW_REGISTERS_COMMUNICATIONS 0x05
/// ///
/// PCC Subspace Structure Header /// PCC Subspace Structure Header
@ -2468,6 +2469,34 @@ typedef struct {
UINT32 Command; UINT32 Command;
} EFI_ACPI_6_4_PCCT_EXTENDED_PCC_SHARED_MEMORY_REGION_HEADER; } EFI_ACPI_6_4_PCCT_EXTENDED_PCC_SHARED_MEMORY_REGION_HEADER;
///
/// Type 5 HW Registers based Communications Subspace Structure
///
typedef struct {
UINT8 Type;
UINT8 Length;
UINT16 Version;
UINT64 BaseAddress;
UINT64 SharedMemoryRangeLength;
EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE DoorbellRegister;
UINT64 DoorbellPreserve;
UINT64 DoorbellWrite;
EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE CommandCompleteCheckRegister;
UINT64 CommandCompleteCheckMask;
EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE ErrorStatusRegister;
UINT64 ErrorStatusMask;
UINT32 NominalLatency;
UINT32 MinimumRequestTurnaroundTime;
} EFI_ACPI_6_4_PCCT_SUBSPACE_5_HW_REGISTERS_COMMUNICATIONS;
///
/// Reduced PCC Subspace Shared Memory Region
///
typedef struct {
UINT32 Signature;
//UINT8 CommunicationSubspace[];
} EFI_6_4_PCCT_REDUCED_PCC_SUBSPACE_SHARED_MEMORY_REGION;
/// ///
/// Platform Debug Trigger Table (PDTT) /// Platform Debug Trigger Table (PDTT)
/// ///