]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/IndustryStandard/Acpi60.h
MdePkg: TpmPtp: Add CapCRBIdleBypass definition
[mirror_edk2.git] / MdePkg / Include / IndustryStandard / Acpi60.h
index ab798e9cf4c19a5613633c2a00ab5b208ddff440..29c16f48405da9ae3af63a257076052cc22b3f11 100644 (file)
@@ -1,7 +1,7 @@
 /** @file   \r
   ACPI 6.0 definitions from the ACPI Specification Revision 6.0 Errata A January, 2016.\r
 \r
-  Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2015 - 2017, Intel Corporation. All rights reserved.<BR>\r
   (C) Copyright 2015-2016 Hewlett Packard Enterprise Development LP<BR>\r
   This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
@@ -2020,7 +2020,9 @@ typedef struct {
 //\r
 // PCCT Subspace type\r
 //\r
-#define EFI_ACPI_6_0_PCCT_SUBSPACE_TYPE_GENERIC  0x00\r
+#define EFI_ACPI_6_0_PCCT_SUBSPACE_TYPE_GENERIC                         0x00\r
+#define EFI_ACPI_6_0_PCCT_SUBSPACE_TYPE_1_HW_REDUCED_COMMUNICATIONS     0x01\r
+#define EFI_ACPI_6_0_PCCT_SUBSPACE_TYPE_2_HW_REDUCED_COMMUNICATIONS     0x02\r
 \r
 ///\r
 /// PCC Subspace Structure Header\r
@@ -2072,6 +2074,50 @@ typedef struct {
   EFI_ACPI_6_0_PCCT_GENERIC_SHARED_MEMORY_REGION_STATUS     Status;\r
 } EFI_ACPI_6_0_PCCT_GENERIC_SHARED_MEMORY_REGION_HEADER;\r
 \r
+#define EFI_ACPI_6_0_PCCT_SUBSPACE_DOORBELL_INTERRUPT_FLAGS_POLARITY    BIT0\r
+#define EFI_ACPI_6_0_PCCT_SUBSPACE_DOORBELL_INTERRUPT_FLAGS_MODE        BIT1\r
+\r
+///\r
+/// Type 1 HW-Reduced Communications Subspace Structure\r
+///\r
+typedef struct {\r
+  UINT8                                    Type;\r
+  UINT8                                    Length;\r
+  UINT32                                   DoorbellInterrupt;\r
+  UINT8                                    DoorbellInterruptFlags;\r
+  UINT8                                    Reserved;\r
+  UINT64                                   BaseAddress;\r
+  UINT64                                   AddressLength;\r
+  EFI_ACPI_6_0_GENERIC_ADDRESS_STRUCTURE   DoorbellRegister;\r
+  UINT64                                   DoorbellPreserve;\r
+  UINT64                                   DoorbellWrite;\r
+  UINT32                                   NominalLatency;\r
+  UINT32                                   MaximumPeriodicAccessRate;\r
+  UINT16                                   MinimumRequestTurnaroundTime;\r
+} EFI_ACPI_6_0_PCCT_SUBSPACE_1_HW_REDUCED_COMMUNICATIONS;\r
+\r
+///\r
+/// Type 2 HW-Reduced Communications Subspace Structure\r
+///\r
+typedef struct {\r
+  UINT8                                    Type;\r
+  UINT8                                    Length;\r
+  UINT32                                   DoorbellInterrupt;\r
+  UINT8                                    DoorbellInterruptFlags;\r
+  UINT8                                    Reserved;\r
+  UINT64                                   BaseAddress;\r
+  UINT64                                   AddressLength;\r
+  EFI_ACPI_6_0_GENERIC_ADDRESS_STRUCTURE   DoorbellRegister;\r
+  UINT64                                   DoorbellPreserve;\r
+  UINT64                                   DoorbellWrite;\r
+  UINT32                                   NominalLatency;\r
+  UINT32                                   MaximumPeriodicAccessRate;\r
+  UINT16                                   MinimumRequestTurnaroundTime;\r
+  EFI_ACPI_6_0_GENERIC_ADDRESS_STRUCTURE   DoorbellAckRegister;\r
+  UINT64                                   DoorbellAckPreserve;\r
+  UINT64                                   DoorbellAckWrite;\r
+} EFI_ACPI_6_0_PCCT_SUBSPACE_2_HW_REDUCED_COMMUNICATIONS;\r
+\r
 //\r
 // Known table signatures\r
 //\r
@@ -2252,9 +2298,9 @@ typedef struct {
 #define EFI_ACPI_6_0_ISCSI_BOOT_FIRMWARE_TABLE_SIGNATURE  SIGNATURE_32('i', 'B', 'F', 'T')\r
 \r
 ///\r
-/// "IORT" Interrupt Source Override\r
+/// "IORT" I/O Remapping Table\r
 ///\r
-#define EFI_ACPI_6_0_INTERRUPT_SOURCE_OVERRIDE_SIGNATURE  SIGNATURE_32('I', 'O', 'R', 'T')\r
+#define EFI_ACPI_6_0_IO_REMAPPING_TABLE_SIGNATURE  SIGNATURE_32('I', 'O', 'R', 'T')\r
 \r
 ///\r
 /// "IVRS" I/O Virtualization Reporting Structure\r