/// FADT Version (as defined in ACPI 6.4 spec.)\r
///\r
#define EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_REVISION 0x06\r
-#define EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION 0x03\r
+#define EFI_ACPI_6_4_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION 0x04\r
\r
//\r
// Fixed ACPI Description Table Preferred Power Management Profile\r
\r
//\r
// Multiple APIC Description Table APIC structure types\r
-// All other values between 0x0D and 0x7F are reserved and\r
+// All other values between 0x10 and 0x7F are reserved and\r
// will be ignored by OSPM. 0x80 ~ 0xFF are reserved for OEM.\r
//\r
#define EFI_ACPI_6_4_PROCESSOR_LOCAL_APIC 0x00\r
#define EFI_ACPI_6_4_GIC_MSI_FRAME 0x0D\r
#define EFI_ACPI_6_4_GICR 0x0E\r
#define EFI_ACPI_6_4_GIC_ITS 0x0F\r
+#define EFI_ACPI_6_4_MULTIPROCESSOR_WAKEUP 0x10\r
\r
//\r
// APIC Structure Definitions\r
UINT32 Reserved2;\r
} EFI_ACPI_6_4_GIC_ITS_STRUCTURE;\r
\r
+///\r
+/// Multiprocessor Wakeup Structure\r
+///\r
+typedef struct {\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT16 MailBoxVersion;\r
+ UINT32 Reserved;\r
+ UINT64 MailBoxAddress;\r
+} EFI_ACPI_6_4_MULTIPROCESSOR_WAKEUP_STRUCTURE;\r
+\r
+///\r
+/// Multiprocessor Wakeup Mailbox Structure\r
+///\r
+typedef struct {\r
+ UINT16 Command;\r
+ UINT16 Reserved;\r
+ UINT32 AcpiId;\r
+ UINT64 WakeupVector;\r
+ UINT8 ReservedForOs[2032];\r
+ UINT8 ReservedForFirmware[2048];\r
+} EFI_ACPI_6_4_MULTIPROCESSOR_WAKEUP_MAILBOX_STRUCTURE;\r
+\r
+#define EFI_ACPI_6_4_MULTIPROCESSOR_WAKEUP_MAILBOX_COMMAND_NOOP 0x0000\r
+#define EFI_ACPI_6_4_MULTIPROCESSOR_WAKEUP_MAILBOX_COMMAND_WAKEUP 0x0001\r
+\r
///\r
/// Smart Battery Description Table (SBST)\r
///\r
/// Generic Initiator Affinity Structure Flags. All other bits are reserved\r
/// and must be 0.\r
///\r
-#define EFI_ACPI_6_4_GENERIC_INITIATOR_AFFINITY_STRUCTURE_ENABLED (1 << 0)\r
+#define EFI_ACPI_6_4_GENERIC_INITIATOR_AFFINITY_STRUCTURE_ENABLED BIT0\r
+#define EFI_ACPI_6_4_GENERIC_INITIATOR_AFFINITY_STRUCTURE_ARCHITECTURAL_TRANSACTIONS BIT1\r
\r
///\r
/// System Locality Distance Information Table (SLIT).\r
} EFI_ACPI_6_4_MPST_MEMORY_POWER_STATE_CHARACTERISTICS_TABLE;\r
\r
///\r
-/// Memory Topology Table definition.\r
+/// Platform Memory Topology Table definition.\r
///\r
typedef struct {\r
- EFI_ACPI_DESCRIPTION_HEADER Header;\r
- UINT32 Reserved;\r
-} EFI_ACPI_6_4_MEMORY_TOPOLOGY_TABLE;\r
+ EFI_ACPI_DESCRIPTION_HEADER Header;\r
+ UINT32 NumberOfMemoryDevices;\r
+//EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE MemoryDeviceStructure[NumberOfMemoryDevices];\r
+} EFI_ACPI_6_4_PLATFORM_MEMORY_TOPOLOGY_TABLE;\r
\r
///\r
/// PMTT Version (as defined in ACPI 6.4 spec.)\r
///\r
-#define EFI_ACPI_6_4_MEMORY_TOPOLOGY_TABLE_REVISION 0x01\r
+#define EFI_ACPI_6_4_MEMORY_TOPOLOGY_TABLE_REVISION 0x02\r
\r
///\r
-/// Common Memory Aggregator Device Structure.\r
+/// Common Memory Device.\r
///\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 Reserved;\r
- UINT16 Length;\r
- UINT16 Flags;\r
- UINT16 Reserved1;\r
-} EFI_ACPI_6_4_PMTT_COMMON_MEMORY_AGGREGATOR_DEVICE_STRUCTURE;\r
+ UINT8 Type;\r
+ UINT8 Reserved;\r
+ UINT16 Length;\r
+ UINT16 Flags;\r
+ UINT16 Reserved1;\r
+ UINT32 NumberOfMemoryDevices;\r
+//UINT8 TypeSpecificData[];\r
+//EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE MemoryDeviceStructure[NumberOfMemoryDevices];\r
+} EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE;\r
\r
///\r
-/// Memory Aggregator Device Type\r
+/// Memory Device Type.\r
///\r
-#define EFI_ACPI_6_4_PMTT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET 0x1\r
-#define EFI_ACPI_6_4_PMTT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_CONTROLLER 0x2\r
-#define EFI_ACPI_6_4_PMTT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM 0x3\r
+#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_SOCKET 0x1\r
+#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_MEMORY_CONTROLLER 0x2\r
+#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_DIMM 0x3\r
+#define EFI_ACPI_6_4_PMTT_MEMORY_DEVICE_TYPE_VENDOR_SPECIFIC_TYPE 0xFF\r
\r
///\r
-/// Socket Memory Aggregator Device Structure.\r
+/// Socket Type Data.\r
///\r
typedef struct {\r
- EFI_ACPI_6_4_PMTT_COMMON_MEMORY_AGGREGATOR_DEVICE_STRUCTURE Header;\r
- UINT16 SocketIdentifier;\r
- UINT16 Reserved;\r
-//EFI_ACPI_6_4_PMTT_MEMORY_CONTROLLER_MEMORY_AGGREGATOR_DEVICE_STRUCTURE MemoryController[];\r
-} EFI_ACPI_6_4_PMTT_SOCKET_MEMORY_AGGREGATOR_DEVICE_STRUCTURE;\r
+ EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE CommonMemoryDeviceHeader;\r
+ UINT16 SocketIdentifier;\r
+ UINT16 Reserved;\r
+//EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE MemoryDeviceStructure[];\r
+} EFI_ACPI_6_4_PMTT_SOCKET_TYPE_DATA;\r
\r
///\r
-/// MemoryController Memory Aggregator Device Structure.\r
+/// Memory Controller Type Data.\r
///\r
typedef struct {\r
- EFI_ACPI_6_4_PMTT_COMMON_MEMORY_AGGREGATOR_DEVICE_STRUCTURE Header;\r
- UINT32 ReadLatency;\r
- UINT32 WriteLatency;\r
- UINT32 ReadBandwidth;\r
- UINT32 WriteBandwidth;\r
- UINT16 OptimalAccessUnit;\r
- UINT16 OptimalAccessAlignment;\r
- UINT16 Reserved;\r
- UINT16 NumberOfProximityDomains;\r
-//UINT32 ProximityDomain[NumberOfProximityDomains];\r
-//EFI_ACPI_6_4_PMTT_DIMM_MEMORY_AGGREGATOR_DEVICE_STRUCTURE PhysicalComponent[];\r
-} EFI_ACPI_6_4_PMTT_MEMORY_CONTROLLER_MEMORY_AGGREGATOR_DEVICE_STRUCTURE;\r
+ EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE CommonMemoryDeviceHeader;\r
+ UINT16 MemoryControllerIdentifier;\r
+ UINT16 Reserved;\r
+//EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE MemoryDeviceStructure[];\r
+} EFI_ACPI_6_4_PMTT_MEMORY_CONTROLLER_TYPE_DATA;\r
\r
///\r
-/// DIMM Memory Aggregator Device Structure.\r
+/// DIMM Type Specific Data.\r
///\r
typedef struct {\r
- EFI_ACPI_6_4_PMTT_COMMON_MEMORY_AGGREGATOR_DEVICE_STRUCTURE Header;\r
- UINT16 PhysicalComponentIdentifier;\r
- UINT16 Reserved;\r
- UINT32 SizeOfDimm;\r
- UINT32 SmbiosHandle;\r
-} EFI_ACPI_6_4_PMTT_DIMM_MEMORY_AGGREGATOR_DEVICE_STRUCTURE;\r
+ EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE CommonMemoryDeviceHeader;\r
+ UINT32 SmbiosHandle;\r
+} EFI_ACPI_6_4_PMTT_DIMM_TYPE_SPECIFIC_DATA;\r
+\r
+///\r
+/// Vendor Specific Type Data.\r
+///\r
+typedef struct {\r
+ EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE CommonMemoryDeviceHeader;\r
+ UINT8 TypeUuid[16];\r
+//EFI_ACPI_6_4_PMTT_VENDOR_SPECIFIC_TYPE_DATA VendorSpecificData[];\r
+//EFI_ACPI_6_4_PMTT_COMMON_MEMORY_DEVICE MemoryDeviceStructure[];\r
+} EFI_ACPI_6_4_PMTT_VENDOR_SPECIFIC_TYPE_DATA;\r
\r
///\r
/// Boot Graphics Resource Table definition.\r
/// Platform Timer Type\r
///\r
#define EFI_ACPI_6_4_GTDT_GT_BLOCK 0\r
-#define EFI_ACPI_6_4_GTDT_SBSA_GENERIC_WATCHDOG 1\r
+#define EFI_ACPI_6_4_GTDT_ARM_GENERIC_WATCHDOG 1\r
\r
///\r
/// GT Block Structure\r
#define EFI_ACPI_6_4_GTDT_GT_BLOCK_COMMON_FLAG_ALWAYS_ON_CAPABILITY BIT1\r
\r
///\r
-/// SBSA Generic Watchdog Structure\r
+/// Arm Generic Watchdog Structure\r
///\r
typedef struct {\r
UINT8 Type;\r
UINT64 WatchdogControlFramePhysicalAddress;\r
UINT32 WatchdogTimerGSIV;\r
UINT32 WatchdogTimerFlags;\r
-} EFI_ACPI_6_4_GTDT_SBSA_GENERIC_WATCHDOG_STRUCTURE;\r
+} EFI_ACPI_6_4_GTDT_ARM_GENERIC_WATCHDOG_STRUCTURE;\r
\r
///\r
-/// SBSA Generic Watchdog Timer Flags. All other bits are reserved and must be 0.\r
+/// Arm Generic Watchdog Timer Flags. All other bits are reserved and must be 0.\r
///\r
-#define EFI_ACPI_6_4_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_TIMER_INTERRUPT_MODE BIT0\r
-#define EFI_ACPI_6_4_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_TIMER_INTERRUPT_POLARITY BIT1\r
-#define EFI_ACPI_6_4_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_SECURE_TIMER BIT2\r
+#define EFI_ACPI_6_4_GTDT_ARM_GENERIC_WATCHDOG_FLAG_TIMER_INTERRUPT_MODE BIT0\r
+#define EFI_ACPI_6_4_GTDT_ARM_GENERIC_WATCHDOG_FLAG_TIMER_INTERRUPT_POLARITY BIT1\r
+#define EFI_ACPI_6_4_GTDT_ARM_GENERIC_WATCHDOG_FLAG_SECURE_TIMER BIT2\r
\r
//\r
// NVDIMM Firmware Interface Table definition.\r
//\r
#define EFI_ACPI_6_4_NFIT_SYSTEM_PHYSICAL_ADDRESS_RANGE_FLAGS_CONTROL_REGION_FOR_MANAGEMENT BIT0\r
#define EFI_ACPI_6_4_NFIT_SYSTEM_PHYSICAL_ADDRESS_RANGE_FLAGS_PROXIMITY_DOMAIN_VALID BIT1\r
+#define EFI_ACPI_6_4_NFIT_SYSTEM_PHYSICAL_ADDRESS_RANGE_FLAGS_SPA_LOCATION_COOKIE_VALID BIT2\r
+\r
#define EFI_ACPI_6_4_NFIT_GUID_VOLATILE_MEMORY_REGION { 0x7305944F, 0xFDDA, 0x44E3, { 0xB1, 0x6C, 0x3F, 0x22, 0xD2, 0x52, 0xE5, 0xD0 }}\r
#define EFI_ACPI_6_4_NFIT_GUID_BYTE_ADDRESSABLE_PERSISTENT_MEMORY_REGION { 0x66F0D379, 0xB4F3, 0x4074, { 0xAC, 0x43, 0x0D, 0x33, 0x18, 0xB7, 0x8C, 0xDB }}\r
#define EFI_ACPI_6_4_NFIT_GUID_NVDIMM_CONTROL_REGION { 0x92F701F6, 0x13B4, 0x405D, { 0x91, 0x0B, 0x29, 0x93, 0x67, 0xE8, 0x23, 0x4C }}\r
#define EFI_ACPI_6_4_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_CD_REGION_VOLATILE { 0x3D5ABD30, 0x4175, 0x87CE, { 0x6D, 0x64, 0xD2, 0xAD, 0xE5, 0x23, 0xC4, 0xBB }}\r
#define EFI_ACPI_6_4_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_DISK_REGION_PERSISTENT { 0x5CEA02C9, 0x4D07, 0x69D3, { 0x26, 0x9F ,0x44, 0x96, 0xFB, 0xE0, 0x96, 0xF9 }}\r
#define EFI_ACPI_6_4_NFIT_GUID_RAM_DISK_SUPPORTING_VIRTUAL_CD_REGION_PERSISTENT { 0x08018188, 0x42CD, 0xBB48, { 0x10, 0x0F, 0x53, 0x87, 0xD5, 0x3D, 0xED, 0x3D }}\r
+\r
typedef struct {\r
UINT16 Type;\r
UINT16 Length;\r
UINT64 SystemPhysicalAddressRangeBase;\r
UINT64 SystemPhysicalAddressRangeLength;\r
UINT64 AddressRangeMemoryMappingAttribute;\r
+ UINT64 SPALocationCookie;\r
} EFI_ACPI_6_4_NFIT_SYSTEM_PHYSICAL_ADDRESS_RANGE_STRUCTURE;\r
\r
//\r
#define EFI_ACPI_6_4_NFIT_MEMORY_DEVICE_STATE_FLAGS_SMART_HEALTH_EVENTS_PRIOR_OSPM_HAND_OFF BIT4\r
#define EFI_ACPI_6_4_NFIT_MEMORY_DEVICE_STATE_FLAGS_FIRMWARE_ENABLED_TO_NOTIFY_OSPM_ON_SMART_HEALTH_EVENTS BIT5\r
#define EFI_ACPI_6_4_NFIT_MEMORY_DEVICE_STATE_FLAGS_FIRMWARE_NOT_MAP_NVDIMM_TO_SPA BIT6\r
+\r
typedef struct {\r
UINT16 Type;\r
UINT16 Length;\r
#define EFI_ACPI_6_4_NFIT_NVDIMM_CONTROL_REGION_VALID_FIELDS_MANUFACTURING BIT0\r
\r
#define EFI_ACPI_6_4_NFIT_NVDIMM_CONTROL_REGION_FLAGS_BLOCK_DATA_WINDOWS_BUFFERED BIT0\r
+\r
typedef struct {\r
UINT16 Type;\r
UINT16 Length;\r
///\r
typedef struct {\r
UINT8 MemoryHierarchy:4;\r
- UINT8 Reserved:4;\r
+ UINT8 AccessAttributes:2;\r
+ UINT8 Reserved:2;\r
} EFI_ACPI_6_4_HMAT_STRUCTURE_SYSTEM_LOCALITY_LATENCY_AND_BANDWIDTH_INFO_FLAGS;\r
\r
///\r
UINT32 Length;\r
EFI_ACPI_6_4_HMAT_STRUCTURE_SYSTEM_LOCALITY_LATENCY_AND_BANDWIDTH_INFO_FLAGS Flags;\r
UINT8 DataType;\r
- UINT8 Reserved1[2];\r
+ UINT8 MinTransferSize;\r
+ UINT8 Reserved1;\r
UINT32 NumberOfInitiatorProximityDomains;\r
UINT32 NumberOfTargetProximityDomains;\r
UINT8 Reserved2[4];\r
#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_2_HW_REDUCED_COMMUNICATIONS 0x02\r
#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_3_EXTENDED_PCC 0x03\r
#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_4_EXTENDED_PCC 0x04\r
+#define EFI_ACPI_6_4_PCCT_SUBSPACE_TYPE_5_HW_REGISTERS_COMMUNICATIONS 0x05\r
\r
///\r
/// PCC Subspace Structure Header\r
UINT32 Command;\r
} EFI_ACPI_6_4_PCCT_EXTENDED_PCC_SHARED_MEMORY_REGION_HEADER;\r
\r
+///\r
+/// Type 5 HW Registers based Communications Subspace Structure\r
+///\r
+typedef struct {\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT16 Version;\r
+ UINT64 BaseAddress;\r
+ UINT64 SharedMemoryRangeLength;\r
+ EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE DoorbellRegister;\r
+ UINT64 DoorbellPreserve;\r
+ UINT64 DoorbellWrite;\r
+ EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE CommandCompleteCheckRegister;\r
+ UINT64 CommandCompleteCheckMask;\r
+ EFI_ACPI_6_4_GENERIC_ADDRESS_STRUCTURE ErrorStatusRegister;\r
+ UINT64 ErrorStatusMask;\r
+ UINT32 NominalLatency;\r
+ UINT32 MinimumRequestTurnaroundTime;\r
+} EFI_ACPI_6_4_PCCT_SUBSPACE_5_HW_REGISTERS_COMMUNICATIONS;\r
+\r
+///\r
+/// Reduced PCC Subspace Shared Memory Region\r
+///\r
+typedef struct {\r
+ UINT32 Signature;\r
+//UINT8 CommunicationSubspace[];\r
+} EFI_6_4_PCCT_REDUCED_PCC_SUBSPACE_SHARED_MEMORY_REGION;\r
+\r
///\r
/// Platform Debug Trigger Table (PDTT)\r
///\r
UINT16 SpinRev;\r
} EFI_ACPI_6_4_PPTT_STRUCTURE_ID;\r
\r
+///\r
+/// Platform Health Assessment Table (PHAT) Format\r
+///\r
+typedef struct {\r
+ EFI_ACPI_DESCRIPTION_HEADER Header;\r
+//UINT8 PlatformTelemetryRecords[];\r
+} EFI_ACPI_6_4_PLATFORM_HEALTH_ASSESSMENT_TABLE;\r
+\r
+#define EFI_ACPI_6_4_PLATFORM_HEALTH_ASSESSMENT_TABLE_REVISION 0x01\r
+\r
+///\r
+/// PHAT Record Format\r
+///\r
+typedef struct {\r
+ UINT16 PlatformHealthAssessmentRecordType;\r
+ UINT16 RecordLength;\r
+ UINT8 Revision;\r
+//UINT8 Data[];\r
+} EFI_ACPI_6_4_PHAT_RECORD;\r
+\r
+///\r
+/// PHAT Record Type Format\r
+///\r
+#define EFI_ACPI_6_4_PHAT_RECORD_TYPE_FIRMWARE_VERSION_DATA_RECORD 0x0000\r
+#define EFI_ACPI_6_4_PHAT_RECORD_TYPE_FIRMWARE_HEALTH_DATA_RECORD 0x0001\r
+\r
+///\r
+/// PHAT Version Element\r
+///\r
+typedef struct {\r
+ GUID ComponentId;\r
+ UINT64 VersionValue;\r
+ UINT32 ProducerId;\r
+} EFI_ACPI_6_4_PHAT_VERSION_ELEMENT;\r
+\r
+///\r
+/// PHAT Firmware Version Data Record\r
+///\r
+typedef struct {\r
+ UINT16 PlatformRecordType;\r
+ UINT16 RecordLength;\r
+ UINT8 Revision;\r
+ UINT8 Reserved[3];\r
+ UINT32 RecordCount;\r
+//UINT8 PhatVersionElement[];\r
+} EFI_ACPI_6_4_PHAT_FIRMWARE_VERISON_DATA_RECORD;\r
+\r
+#define EFI_ACPI_6_4_PHAT_FIRMWARE_VERSION_DATA_RECORD_REVISION 0x01\r
+\r
+///\r
+/// Firmware Health Data Record Structure\r
+///\r
+typedef struct {\r
+ UINT16 PlatformRecordType;\r
+ UINT16 RecordLength;\r
+ UINT8 Revision;\r
+ UINT16 Reserved;\r
+ UINT8 AmHealthy;\r
+ GUID DeviceSignature;\r
+ UINT32 DeviceSpecificDataOffset;\r
+//UINT8 DevicePath[];\r
+//UINT8 DeviceSpecificData[];\r
+} EFI_ACPI_6_4_PHAT_FIRMWARE_HEALTH_DATA_RECORD_STRUCTURE;\r
+\r
+#define EFI_ACPI_6_4_PHAT_FIRMWARE_HEALTH_DATA_RECORD_REVISION 0x01\r
+\r
+///\r
+/// Firmware Health Data Record device health state\r
+///\r
+#define EFI_ACPI_6_4_PHAT_FIRMWARE_HEALTH_DATA_RECORD_ERRORS_FOUND 0x00\r
+#define EFI_ACPI_6_4_PHAT_FIRMWARE_HEALTH_DATA_RECORD_NO_ERRORS_FOUND 0x01\r
+#define EFI_ACPI_6_4_PHAT_FIRMWARE_HEALTH_DATA_RECORD_UNKNOWN 0x02\r
+#define EFI_ACPI_6_4_PHAT_FIRMWARE_HEALTH_DATA_RECORD_ADVISORY 0x03\r
+\r
//\r
// Known table signatures\r
//\r
///\r
#define EFI_ACPI_6_4_DMA_REMAPPING_TABLE_SIGNATURE SIGNATURE_32('D', 'M', 'A', 'R')\r
\r
-///\r
-/// "DPPT" DMA Protection Policy Table\r
-///\r
-#define EFI_ACPI_6_4_DMA_PROTECTION_POLICY_TABLE_SIGNATURE SIGNATURE_32('D', 'P', 'P', 'T')\r
-\r
///\r
/// "DRTM" Dynamic Root of Trust for Measurement Table\r
///\r
///\r
#define EFI_ACPI_6_4_PLATFORM_COMMUNICATIONS_CHANNEL_TABLE_SIGNATURE SIGNATURE_32('P', 'C', 'C', 'T')\r
\r
+///\r
+/// "PHAT" Platform Health Assessment Table\r
+///\r
+#define EFI_ACPI_6_4_PLATFORM_HEALTH_ASSESSMENT_TABLE_SIGNATURE SIGNATURE_32('P', 'H', 'A', 'T')\r
+\r
///\r
/// "SDEI" Software Delegated Exceptions Interface Table\r
///\r