iPXE
Acpi51.h
Go to the documentation of this file.
1/** @file
2 ACPI 5.1 definitions from the ACPI Specification Revision 5.1 Errata B January, 2016.
3
4 Copyright (c) 2014 Hewlett-Packard Development Company, L.P.<BR>
5 Copyright (c) 2014 - 2022, Intel Corporation. All rights reserved.<BR>
6 (C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR>
7 Copyright (c) 2020, ARM Ltd. All rights reserved.<BR>
8 Copyright (C) 2024, Advanced Micro Devices, Inc. All rights reserved.
9 SPDX-License-Identifier: BSD-2-Clause-Patent
10**/
11
12#pragma once
13
14FILE_LICENCE ( BSD2_PATENT );
15FILE_SECBOOT ( PERMITTED );
16
18
19///
20/// _CSD Revision for ACPI 5.1
21///
22#define EFI_ACPI_5_1_AML_CSD_REVISION 0
23
24///
25/// _CSD NumEntries for ACPI 5.1
26///
27#define EFI_ACPI_5_1_AML_CSD_NUM_ENTRIES 6
28
29///
30/// _PSD Revision for ACPI 5.1
31///
32#define EFI_ACPI_5_1_AML_PSD_REVISION 0
33
34///
35/// _CPC Revision for ACPI 5.1
36///
37#define EFI_ACPI_5_1_AML_CPC_REVISION 2
38
39//
40// Ensure proper structure formats
41//
42#pragma pack(1)
43
44///
45/// ACPI 5.1 Generic Address Space definition
46///
54
55//
56// Generic Address Space Address IDs
57//
58#define EFI_ACPI_5_1_SYSTEM_MEMORY 0
59#define EFI_ACPI_5_1_SYSTEM_IO 1
60#define EFI_ACPI_5_1_PCI_CONFIGURATION_SPACE 2
61#define EFI_ACPI_5_1_EMBEDDED_CONTROLLER 3
62#define EFI_ACPI_5_1_SMBUS 4
63#define EFI_ACPI_5_1_PLATFORM_COMMUNICATION_CHANNEL 0x0A
64#define EFI_ACPI_5_1_FUNCTIONAL_FIXED_HARDWARE 0x7F
65
66//
67// Generic Address Space Access Sizes
68//
69#define EFI_ACPI_5_1_UNDEFINED 0
70#define EFI_ACPI_5_1_BYTE 1
71#define EFI_ACPI_5_1_WORD 2
72#define EFI_ACPI_5_1_DWORD 3
73#define EFI_ACPI_5_1_QWORD 4
74
75//
76// ACPI 5.1 table structures
77//
78
79///
80/// Root System Description Pointer Structure
81///
93
94///
95/// RSD_PTR Revision (as defined in ACPI 5.1 spec.)
96///
97#define EFI_ACPI_5_1_ROOT_SYSTEM_DESCRIPTION_POINTER_REVISION 0x02 ///< ACPISpec (Revision 5.1) says current value is 2
98
99///
100/// Common table header, this prefaces all ACPI tables, including FACS, but
101/// excluding the RSD PTR structure
102///
107
108//
109// Root System Description Table
110// No definition needed as it is a common description table header, the same with
111// EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT32 table pointers.
112//
113
114///
115/// RSDT Revision (as defined in ACPI 5.1 spec.)
116///
117#define EFI_ACPI_5_1_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01
118
119//
120// Extended System Description Table
121// No definition needed as it is a common description table header, the same with
122// EFI_ACPI_DESCRIPTION_HEADER, followed by a variable number of UINT64 table pointers.
123//
124
125///
126/// XSDT Revision (as defined in ACPI 5.1 spec.)
127///
128#define EFI_ACPI_5_1_EXTENDED_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01
129
130///
131/// Fixed ACPI Description Table Structure (FADT)
132///
133typedef struct {
190
191///
192/// FADT Version (as defined in ACPI 5.1 spec.)
193///
194#define EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_REVISION 0x05
195#define EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION 0x01
196
197//
198// Fixed ACPI Description Table Preferred Power Management Profile
199//
200#define EFI_ACPI_5_1_PM_PROFILE_UNSPECIFIED 0
201#define EFI_ACPI_5_1_PM_PROFILE_DESKTOP 1
202#define EFI_ACPI_5_1_PM_PROFILE_MOBILE 2
203#define EFI_ACPI_5_1_PM_PROFILE_WORKSTATION 3
204#define EFI_ACPI_5_1_PM_PROFILE_ENTERPRISE_SERVER 4
205#define EFI_ACPI_5_1_PM_PROFILE_SOHO_SERVER 5
206#define EFI_ACPI_5_1_PM_PROFILE_APPLIANCE_PC 6
207#define EFI_ACPI_5_1_PM_PROFILE_PERFORMANCE_SERVER 7
208#define EFI_ACPI_5_1_PM_PROFILE_TABLET 8
209
210//
211// Fixed ACPI Description Table Boot Architecture Flags
212// All other bits are reserved and must be set to 0.
213//
214#define EFI_ACPI_5_1_LEGACY_DEVICES BIT0
215#define EFI_ACPI_5_1_8042 BIT1
216#define EFI_ACPI_5_1_VGA_NOT_PRESENT BIT2
217#define EFI_ACPI_5_1_MSI_NOT_SUPPORTED BIT3
218#define EFI_ACPI_5_1_PCIE_ASPM_CONTROLS BIT4
219#define EFI_ACPI_5_1_CMOS_RTC_NOT_PRESENT BIT5
220
221//
222// Fixed ACPI Description Table Arm Boot Architecture Flags
223// All other bits are reserved and must be set to 0.
224//
225#define EFI_ACPI_5_1_ARM_PSCI_COMPLIANT BIT0
226#define EFI_ACPI_5_1_ARM_PSCI_USE_HVC BIT1
227
228//
229// Fixed ACPI Description Table Fixed Feature Flags
230// All other bits are reserved and must be set to 0.
231//
232#define EFI_ACPI_5_1_WBINVD BIT0
233#define EFI_ACPI_5_1_WBINVD_FLUSH BIT1
234#define EFI_ACPI_5_1_PROC_C1 BIT2
235#define EFI_ACPI_5_1_P_LVL2_UP BIT3
236#define EFI_ACPI_5_1_PWR_BUTTON BIT4
237#define EFI_ACPI_5_1_SLP_BUTTON BIT5
238#define EFI_ACPI_5_1_FIX_RTC BIT6
239#define EFI_ACPI_5_1_RTC_S4 BIT7
240#define EFI_ACPI_5_1_TMR_VAL_EXT BIT8
241#define EFI_ACPI_5_1_DCK_CAP BIT9
242#define EFI_ACPI_5_1_RESET_REG_SUP BIT10
243#define EFI_ACPI_5_1_SEALED_CASE BIT11
244#define EFI_ACPI_5_1_HEADLESS BIT12
245#define EFI_ACPI_5_1_CPU_SW_SLP BIT13
246#define EFI_ACPI_5_1_PCI_EXP_WAK BIT14
247#define EFI_ACPI_5_1_USE_PLATFORM_CLOCK BIT15
248#define EFI_ACPI_5_1_S4_RTC_STS_VALID BIT16
249#define EFI_ACPI_5_1_REMOTE_POWER_ON_CAPABLE BIT17
250#define EFI_ACPI_5_1_FORCE_APIC_CLUSTER_MODEL BIT18
251#define EFI_ACPI_5_1_FORCE_APIC_PHYSICAL_DESTINATION_MODE BIT19
252#define EFI_ACPI_5_1_HW_REDUCED_ACPI BIT20
253#define EFI_ACPI_5_1_LOW_POWER_S0_IDLE_CAPABLE BIT21
254
255///
256/// Firmware ACPI Control Structure
257///
271
272///
273/// FACS Version (as defined in ACPI 5.1 spec.)
274///
275#define EFI_ACPI_5_1_FIRMWARE_ACPI_CONTROL_STRUCTURE_VERSION 0x02
276
277///
278/// Firmware Control Structure Feature Flags
279/// All other bits are reserved and must be set to 0.
280///
281#define EFI_ACPI_5_1_S4BIOS_F BIT0
282#define EFI_ACPI_5_1_64BIT_WAKE_SUPPORTED_F BIT1
283
284///
285/// OSPM Enabled Firmware Control Structure Flags
286/// All other bits are reserved and must be set to 0.
287///
288#define EFI_ACPI_5_1_OSPM_64BIT_WAKE_F BIT0
289
290//
291// Differentiated System Description Table,
292// Secondary System Description Table
293// and Persistent System Description Table,
294// no definition needed as they are common description table header, the same with
295// EFI_ACPI_DESCRIPTION_HEADER, followed by a definition block.
296//
297#define EFI_ACPI_5_1_DIFFERENTIATED_SYSTEM_DESCRIPTION_TABLE_REVISION 0x02
298#define EFI_ACPI_5_1_SECONDARY_SYSTEM_DESCRIPTION_TABLE_REVISION 0x02
299
300///
301/// Multiple APIC Description Table header definition. The rest of the table
302/// must be defined in a platform specific manner.
303///
309
310///
311/// MADT Revision (as defined in ACPI 5.1 spec.)
312///
313#define EFI_ACPI_5_1_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION 0x03
314
315///
316/// Multiple APIC Flags
317/// All other bits are reserved and must be set to 0.
318///
319#define EFI_ACPI_5_1_PCAT_COMPAT BIT0
320
321//
322// Multiple APIC Description Table APIC structure types
323// All other values between 0x0D and 0x7F are reserved and
324// will be ignored by OSPM. 0x80 ~ 0xFF are reserved for OEM.
325//
326#define EFI_ACPI_5_1_PROCESSOR_LOCAL_APIC 0x00
327#define EFI_ACPI_5_1_IO_APIC 0x01
328#define EFI_ACPI_5_1_INTERRUPT_SOURCE_OVERRIDE 0x02
329#define EFI_ACPI_5_1_NON_MASKABLE_INTERRUPT_SOURCE 0x03
330#define EFI_ACPI_5_1_LOCAL_APIC_NMI 0x04
331#define EFI_ACPI_5_1_LOCAL_APIC_ADDRESS_OVERRIDE 0x05
332#define EFI_ACPI_5_1_IO_SAPIC 0x06
333#define EFI_ACPI_5_1_LOCAL_SAPIC 0x07
334#define EFI_ACPI_5_1_PLATFORM_INTERRUPT_SOURCES 0x08
335#define EFI_ACPI_5_1_PROCESSOR_LOCAL_X2APIC 0x09
336#define EFI_ACPI_5_1_LOCAL_X2APIC_NMI 0x0A
337#define EFI_ACPI_5_1_GIC 0x0B
338#define EFI_ACPI_5_1_GICD 0x0C
339#define EFI_ACPI_5_1_GIC_MSI_FRAME 0x0D
340#define EFI_ACPI_5_1_GICR 0x0E
341
342//
343// APIC Structure Definitions
344//
345
346///
347/// Processor Local APIC Structure Definition
348///
356
357///
358/// Local APIC Flags. All other bits are reserved and must be 0.
359///
360#define EFI_ACPI_5_1_LOCAL_APIC_ENABLED BIT0
361
362///
363/// IO APIC Structure
364///
373
374///
375/// Interrupt Source Override Structure
376///
385
386///
387/// Platform Interrupt Sources Structure Definition
388///
402
403//
404// MPS INTI flags.
405// All other bits are reserved and must be set to 0.
406//
407#define EFI_ACPI_5_1_POLARITY (3 << 0)
408#define EFI_ACPI_5_1_TRIGGER_MODE (3 << 2)
409
410///
411/// Non-Maskable Interrupt Source Structure
412///
419
420///
421/// Local APIC NMI Structure
422///
430
431///
432/// Local APIC Address Override Structure
433///
440
441///
442/// IO SAPIC Structure
443///
452
453///
454/// Local SAPIC Structure
455/// This struct followed by a null-terminated ASCII string - ACPI Processor UID String
456///
467
468///
469/// Platform Interrupt Sources Structure
470///
482
483///
484/// Platform Interrupt Source Flags.
485/// All other bits are reserved and must be set to 0.
486///
487#define EFI_ACPI_5_1_CPEI_PROCESSOR_OVERRIDE BIT0
488
489///
490/// Processor Local x2APIC Structure Definition
491///
500
501///
502/// Local x2APIC NMI Structure
503///
512
513///
514/// GIC Structure
515///
533
534///
535/// GIC Flags. All other bits are reserved and must be 0.
536///
537#define EFI_ACPI_5_1_GIC_ENABLED BIT0
538#define EFI_ACPI_5_1_PERFORMANCE_INTERRUPT_MODEL BIT1
539#define EFI_ACPI_5_1_VGIC_MAINTENANCE_INTERRUPT_MODE_FLAGS BIT2
540
541///
542/// GIC Distributor Structure
543///
554
555///
556/// GIC Version
557///
558#define EFI_ACPI_5_1_GIC_V1 0x01
559#define EFI_ACPI_5_1_GIC_V2 0x02
560#define EFI_ACPI_5_1_GIC_V3 0x03
561#define EFI_ACPI_5_1_GIC_V4 0x04
562
563///
564/// GIC MSI Frame Structure
565///
576
577///
578/// GIC MSI Frame Flags. All other bits are reserved and must be 0.
579///
580#define EFI_ACPI_5_1_SPI_COUNT_BASE_SELECT BIT0
581
582///
583/// GICR Structure
584///
592
593///
594/// Smart Battery Description Table (SBST)
595///
602
603///
604/// SBST Version (as defined in ACPI 5.1 spec.)
605///
606#define EFI_ACPI_5_1_SMART_BATTERY_DESCRIPTION_TABLE_REVISION 0x01
607
608///
609/// Embedded Controller Boot Resources Table (ECDT)
610/// The table is followed by a null terminated ASCII string that contains
611/// a fully qualified reference to the name space object.
612///
620
621///
622/// ECDT Version (as defined in ACPI 5.1 spec.)
623///
624#define EFI_ACPI_5_1_EMBEDDED_CONTROLLER_BOOT_RESOURCES_TABLE_REVISION 0x01
625
626///
627/// System Resource Affinity Table (SRAT). The rest of the table
628/// must be defined in a platform specific manner.
629///
635
636///
637/// SRAT Version (as defined in ACPI 5.1 spec.)
638///
639#define EFI_ACPI_5_1_SYSTEM_RESOURCE_AFFINITY_TABLE_REVISION 0x03
640
641//
642// SRAT structure types.
643// All other values between 0x04 an 0xFF are reserved and
644// will be ignored by OSPM.
645//
646#define EFI_ACPI_5_1_PROCESSOR_LOCAL_APIC_SAPIC_AFFINITY 0x00
647#define EFI_ACPI_5_1_MEMORY_AFFINITY 0x01
648#define EFI_ACPI_5_1_PROCESSOR_LOCAL_X2APIC_AFFINITY 0x02
649#define EFI_ACPI_5_1_GICC_AFFINITY 0x03
650
651///
652/// Processor Local APIC/SAPIC Affinity Structure Definition
653///
664
665///
666/// Local APIC/SAPIC Flags. All other bits are reserved and must be 0.
667///
668#define EFI_ACPI_5_1_PROCESSOR_LOCAL_APIC_SAPIC_ENABLED (1 << 0)
669
670///
671/// Memory Affinity Structure Definition
672///
686
687//
688// Memory Flags. All other bits are reserved and must be 0.
689//
690#define EFI_ACPI_5_1_MEMORY_ENABLED (1 << 0)
691#define EFI_ACPI_5_1_MEMORY_HOT_PLUGGABLE (1 << 1)
692#define EFI_ACPI_5_1_MEMORY_NONVOLATILE (1 << 2)
693
694///
695/// Processor Local x2APIC Affinity Structure Definition
696///
707
708///
709/// GICC Affinity Structure Definition
710///
719
720///
721/// GICC Flags. All other bits are reserved and must be 0.
722///
723#define EFI_ACPI_5_1_GICC_ENABLED (1 << 0)
724
725///
726/// System Locality Distance Information Table (SLIT).
727/// The rest of the table is a matrix.
728///
733
734///
735/// SLIT Version (as defined in ACPI 5.1 spec.)
736///
737#define EFI_ACPI_5_1_SYSTEM_LOCALITY_DISTANCE_INFORMATION_TABLE_REVISION 0x01
738
739///
740/// Corrected Platform Error Polling Table (CPEP)
741///
746
747///
748/// CPEP Version (as defined in ACPI 5.1 spec.)
749///
750#define EFI_ACPI_5_1_CORRECTED_PLATFORM_ERROR_POLLING_TABLE_REVISION 0x01
751
752//
753// CPEP processor structure types.
754//
755#define EFI_ACPI_5_1_CPEP_PROCESSOR_APIC_SAPIC 0x00
756
757///
758/// Corrected Platform Error Polling Processor Structure Definition
759///
767
768///
769/// Maximum System Characteristics Table (MSCT)
770///
778
779///
780/// MSCT Version (as defined in ACPI 5.1 spec.)
781///
782#define EFI_ACPI_5_1_MAXIMUM_SYSTEM_CHARACTERISTICS_TABLE_REVISION 0x01
783
784///
785/// Maximum Proximity Domain Information Structure Definition
786///
795
796///
797/// ACPI RAS Feature Table definition.
798///
803
804///
805/// RASF Version (as defined in ACPI 5.1 spec.)
806///
807#define EFI_ACPI_5_1_RAS_FEATURE_TABLE_REVISION 0x01
808
809///
810/// ACPI RASF Platform Communication Channel Shared Memory Region definition.
811///
822
823///
824/// ACPI RASF PCC command code
825///
826#define EFI_ACPI_5_1_RASF_PCC_COMMAND_CODE_EXECUTE_RASF_COMMAND 0x01
827
828///
829/// ACPI RASF Platform RAS Capabilities
830///
831#define EFI_ACPI_5_1_RASF_PLATFORM_RAS_CAPABILITY_HARDWARE_BASED_PATROL_SCRUB_SUPPORTED BIT0
832#define EFI_ACPI_5_1_RASF_PLATFORM_RAS_CAPABILITY_HARDWARE_BASED_PATROL_SCRUB_SUPPORTED_AND_EXPOSED_TO_SOFTWARE BIT1
833
834///
835/// ACPI RASF Parameter Block structure for PATROL_SCRUB
836///
847
848///
849/// ACPI RASF Patrol Scrub command
850///
851#define EFI_ACPI_5_1_RASF_PATROL_SCRUB_COMMAND_GET_PATROL_PARAMETERS 0x01
852#define EFI_ACPI_5_1_RASF_PATROL_SCRUB_COMMAND_START_PATROL_SCRUBBER 0x02
853#define EFI_ACPI_5_1_RASF_PATROL_SCRUB_COMMAND_STOP_PATROL_SCRUBBER 0x03
854
855///
856/// Memory Power State Table definition.
857///
858typedef struct {
862 // Memory Power Node Structure
863 // Memory Power State Characteristics
865
866///
867/// MPST Version (as defined in ACPI 5.1 spec.)
868///
869#define EFI_ACPI_5_1_MEMORY_POWER_STATE_TABLE_REVISION 0x01
870
871///
872/// MPST Platform Communication Channel Shared Memory Region definition.
873///
885
886///
887/// ACPI MPST PCC command code
888///
889#define EFI_ACPI_5_1_MPST_PCC_COMMAND_CODE_EXECUTE_MPST_COMMAND 0x03
890
891///
892/// ACPI MPST Memory Power command
893///
894#define EFI_ACPI_5_1_MPST_MEMORY_POWER_COMMAND_GET_MEMORY_POWER_STATE 0x01
895#define EFI_ACPI_5_1_MPST_MEMORY_POWER_COMMAND_SET_MEMORY_POWER_STATE 0x02
896#define EFI_ACPI_5_1_MPST_MEMORY_POWER_COMMAND_GET_AVERAGE_POWER_CONSUMED 0x03
897#define EFI_ACPI_5_1_MPST_MEMORY_POWER_COMMAND_GET_MEMORY_ENERGY_CONSUMED 0x04
898
899///
900/// MPST Memory Power Node Table
901///
906
907typedef struct {
916 // EFI_ACPI_5_1_MPST_MEMORY_POWER_STATE MemoryPowerState[NumberOfPowerStates];
917 // UINT16 PhysicalComponentIdentifier[NumberOfPhysicalComponents];
919
920#define EFI_ACPI_5_1_MPST_MEMORY_POWER_STRUCTURE_FLAG_ENABLE 0x01
921#define EFI_ACPI_5_1_MPST_MEMORY_POWER_STRUCTURE_FLAG_POWER_MANAGED 0x02
922#define EFI_ACPI_5_1_MPST_MEMORY_POWER_STRUCTURE_FLAG_HOT_PLUGGABLE 0x04
923
928
929///
930/// MPST Memory Power State Characteristics Table
931///
940
941#define EFI_ACPI_5_1_MPST_MEMORY_POWER_STATE_CHARACTERISTICS_STRUCTURE_FLAG_MEMORY_CONTENT_PRESERVED 0x01
942#define EFI_ACPI_5_1_MPST_MEMORY_POWER_STATE_CHARACTERISTICS_STRUCTURE_FLAG_AUTONOMOUS_MEMORY_POWER_STATE_ENTRY 0x02
943#define EFI_ACPI_5_1_MPST_MEMORY_POWER_STATE_CHARACTERISTICS_STRUCTURE_FLAG_AUTONOMOUS_MEMORY_POWER_STATE_EXIT 0x04
944
949
950///
951/// Memory Topology Table definition.
952///
957
958///
959/// PMTT Version (as defined in ACPI 5.1 spec.)
960///
961#define EFI_ACPI_5_1_MEMORY_TOPOLOGY_TABLE_REVISION 0x01
962
963///
964/// Common Memory Aggregator Device Structure.
965///
973
974///
975/// Memory Aggregator Device Type
976///
977#define EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_SOCKET 0x0
978#define EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_MEMORY_CONTROLLER 0x1
979#define EFI_ACPI_5_1_PMMT_MEMORY_AGGREGATOR_DEVICE_TYPE_DIMM 0x2
980
981///
982/// Socket Memory Aggregator Device Structure.
983///
984typedef struct {
988 // EFI_ACPI_5_1_PMMT_MEMORY_CONTROLLER_MEMORY_AGGREGATOR_DEVICE_STRUCTURE MemoryController[];
990
991///
992/// MemoryController Memory Aggregator Device Structure.
993///
1007
1008///
1009/// DIMM Memory Aggregator Device Structure.
1010///
1018
1019///
1020/// Boot Graphics Resource Table definition.
1021///
1022typedef struct {
1024 ///
1025 /// 2-bytes (16 bit) version ID. This value must be 1.
1026 ///
1028 ///
1029 /// 1-byte status field indicating current status about the table.
1030 /// Bits[7:1] = Reserved (must be zero)
1031 /// Bit [0] = Valid. A one indicates the boot image graphic is valid.
1032 ///
1034 ///
1035 /// 1-byte enumerated type field indicating format of the image.
1036 /// 0 = Bitmap
1037 /// 1 - 255 Reserved (for future use)
1038 ///
1040 ///
1041 /// 8-byte (64 bit) physical address pointing to the firmware's in-memory copy
1042 /// of the image bitmap.
1043 ///
1045 ///
1046 /// A 4-byte (32-bit) unsigned long describing the display X-offset of the boot image.
1047 /// (X, Y) display offset of the top left corner of the boot image.
1048 /// The top left corner of the display is at offset (0, 0).
1049 ///
1051 ///
1052 /// A 4-byte (32-bit) unsigned long describing the display Y-offset of the boot image.
1053 /// (X, Y) display offset of the top left corner of the boot image.
1054 /// The top left corner of the display is at offset (0, 0).
1055 ///
1058
1059///
1060/// BGRT Revision
1061///
1062#define EFI_ACPI_5_1_BOOT_GRAPHICS_RESOURCE_TABLE_REVISION 1
1063
1064///
1065/// BGRT Version
1066///
1067#define EFI_ACPI_5_1_BGRT_VERSION 0x01
1068
1069///
1070/// BGRT Status
1071///
1072#define EFI_ACPI_5_1_BGRT_STATUS_NOT_DISPLAYED 0x00
1073#define EFI_ACPI_5_1_BGRT_STATUS_DISPLAYED 0x01
1074
1075///
1076/// BGRT Image Type
1077///
1078#define EFI_ACPI_5_1_BGRT_IMAGE_TYPE_BMP 0x00
1079
1080///
1081/// FPDT Version (as defined in ACPI 5.1 spec.)
1082///
1083#define EFI_ACPI_5_1_FIRMWARE_PERFORMANCE_DATA_TABLE_REVISION 0x01
1084
1085///
1086/// FPDT Performance Record Types
1087///
1088#define EFI_ACPI_5_1_FPDT_RECORD_TYPE_FIRMWARE_BASIC_BOOT_POINTER 0x0000
1089#define EFI_ACPI_5_1_FPDT_RECORD_TYPE_S3_PERFORMANCE_TABLE_POINTER 0x0001
1090
1091///
1092/// FPDT Performance Record Revision
1093///
1094#define EFI_ACPI_5_1_FPDT_RECORD_REVISION_FIRMWARE_BASIC_BOOT_POINTER 0x01
1095#define EFI_ACPI_5_1_FPDT_RECORD_REVISION_S3_PERFORMANCE_TABLE_POINTER 0x01
1096
1097///
1098/// FPDT Runtime Performance Record Types
1099///
1100#define EFI_ACPI_5_1_FPDT_RUNTIME_RECORD_TYPE_S3_RESUME 0x0000
1101#define EFI_ACPI_5_1_FPDT_RUNTIME_RECORD_TYPE_S3_SUSPEND 0x0001
1102#define EFI_ACPI_5_1_FPDT_RUNTIME_RECORD_TYPE_FIRMWARE_BASIC_BOOT 0x0002
1103
1104///
1105/// FPDT Runtime Performance Record Revision
1106///
1107#define EFI_ACPI_5_1_FPDT_RUNTIME_RECORD_REVISION_S3_RESUME 0x01
1108#define EFI_ACPI_5_1_FPDT_RUNTIME_RECORD_REVISION_S3_SUSPEND 0x01
1109#define EFI_ACPI_5_1_FPDT_RUNTIME_RECORD_REVISION_FIRMWARE_BASIC_BOOT 0x02
1110
1111///
1112/// FPDT Performance Record header
1113///
1119
1120///
1121/// FPDT Performance Table header
1122///
1127
1128///
1129/// FPDT Firmware Basic Boot Performance Pointer Record Structure
1130///
1131typedef struct {
1134 ///
1135 /// 64-bit processor-relative physical address of the Basic Boot Performance Table.
1136 ///
1139
1140///
1141/// FPDT S3 Performance Table Pointer Record Structure
1142///
1143typedef struct {
1146 ///
1147 /// 64-bit processor-relative physical address of the S3 Performance Table.
1148 ///
1151
1152///
1153/// FPDT Firmware Basic Boot Performance Record Structure
1154///
1155typedef struct {
1158 ///
1159 /// Timer value logged at the beginning of firmware image execution.
1160 /// This may not always be zero or near zero.
1161 ///
1163 ///
1164 /// Timer value logged just prior to loading the OS boot loader into memory.
1165 /// For non-UEFI compatible boots, this field must be zero.
1166 ///
1168 ///
1169 /// Timer value logged just prior to launching the previously loaded OS boot loader image.
1170 /// For non-UEFI compatible boots, the timer value logged will be just prior
1171 /// to the INT 19h handler invocation.
1172 ///
1174 ///
1175 /// Timer value logged at the point when the OS loader calls the
1176 /// ExitBootServices function for UEFI compatible firmware.
1177 /// For non-UEFI compatible boots, this field must be zero.
1178 ///
1180 ///
1181 /// Timer value logged at the point just prior to when the OS loader gaining
1182 /// control back from calls the ExitBootServices function for UEFI compatible firmware.
1183 /// For non-UEFI compatible boots, this field must be zero.
1184 ///
1187
1188///
1189/// FPDT Firmware Basic Boot Performance Table signature
1190///
1191#define EFI_ACPI_5_1_FPDT_BOOT_PERFORMANCE_TABLE_SIGNATURE SIGNATURE_32('F', 'B', 'P', 'T')
1192
1193//
1194// FPDT Firmware Basic Boot Performance Table
1195//
1196typedef struct {
1198 //
1199 // one or more Performance Records.
1200 //
1202
1203///
1204/// FPDT "S3PT" S3 Performance Table
1205///
1206#define EFI_ACPI_5_1_FPDT_S3_PERFORMANCE_TABLE_SIGNATURE SIGNATURE_32('S', '3', 'P', 'T')
1207
1208//
1209// FPDT Firmware S3 Boot Performance Table
1210//
1211typedef struct {
1213 //
1214 // one or more Performance Records.
1215 //
1217
1218///
1219/// FPDT Basic S3 Resume Performance Record
1220///
1221typedef struct {
1223 ///
1224 /// A count of the number of S3 resume cycles since the last full boot sequence.
1225 ///
1227 ///
1228 /// Timer recorded at the end of BIOS S3 resume, just prior to handoff to the
1229 /// OS waking vector. Only the most recent resume cycle's time is retained.
1230 ///
1232 ///
1233 /// Average timer value of all resume cycles logged since the last full boot
1234 /// sequence, including the most recent resume. Note that the entire log of
1235 /// timer values does not need to be retained in order to calculate this average.
1236 ///
1239
1240///
1241/// FPDT Basic S3 Suspend Performance Record
1242///
1243typedef struct {
1245 ///
1246 /// Timer value recorded at the OS write to SLP_TYP upon entry to S3.
1247 /// Only the most recent suspend cycle's timer value is retained.
1248 ///
1250 ///
1251 /// Timer value recorded at the final firmware write to SLP_TYP (or other
1252 /// mechanism) used to trigger hardware entry to S3.
1253 /// Only the most recent suspend cycle's timer value is retained.
1254 ///
1257
1258///
1259/// Firmware Performance Record Table definition.
1260///
1264
1265///
1266/// Generic Timer Description Table definition.
1267///
1284
1285///
1286/// GTDT Version (as defined in ACPI 5.1 spec.)
1287///
1288#define EFI_ACPI_5_1_GENERIC_TIMER_DESCRIPTION_TABLE_REVISION 0x02
1289
1290///
1291/// Timer Flags. All other bits are reserved and must be 0.
1292///
1293#define EFI_ACPI_5_1_GTDT_TIMER_FLAG_TIMER_INTERRUPT_MODE BIT0
1294#define EFI_ACPI_5_1_GTDT_TIMER_FLAG_TIMER_INTERRUPT_POLARITY BIT1
1295#define EFI_ACPI_5_1_GTDT_TIMER_FLAG_ALWAYS_ON_CAPABILITY BIT2
1296
1297///
1298/// Platform Timer Type
1299///
1300#define EFI_ACPI_5_1_GTDT_GT_BLOCK 0
1301#define EFI_ACPI_5_1_GTDT_SBSA_GENERIC_WATCHDOG 1
1302
1303///
1304/// GT Block Structure
1305///
1314
1315///
1316/// GT Block Timer Structure
1317///
1329
1330///
1331/// GT Block Physical Timers and Virtual Timers Flags. All other bits are reserved and must be 0.
1332///
1333#define EFI_ACPI_5_1_GTDT_GT_BLOCK_TIMER_FLAG_TIMER_INTERRUPT_MODE BIT0
1334#define EFI_ACPI_5_1_GTDT_GT_BLOCK_TIMER_FLAG_TIMER_INTERRUPT_POLARITY BIT1
1335
1336///
1337/// Common Flags Flags. All other bits are reserved and must be 0.
1338///
1339#define EFI_ACPI_5_1_GTDT_GT_BLOCK_COMMON_FLAG_SECURE_TIMER BIT0
1340#define EFI_ACPI_5_1_GTDT_GT_BLOCK_COMMON_FLAG_ALWAYS_ON_CAPABILITY BIT1
1341
1342///
1343/// SBSA Generic Watchdog Structure
1344///
1354
1355///
1356/// SBSA Generic Watchdog Timer Flags. All other bits are reserved and must be 0.
1357///
1358#define EFI_ACPI_5_1_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_TIMER_INTERRUPT_MODE BIT0
1359#define EFI_ACPI_5_1_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_TIMER_INTERRUPT_POLARITY BIT1
1360#define EFI_ACPI_5_1_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_SECURE_TIMER BIT2
1361
1362///
1363/// Boot Error Record Table (BERT)
1364///
1370
1371///
1372/// BERT Version (as defined in ACPI 5.1 spec.)
1373///
1374#define EFI_ACPI_5_1_BOOT_ERROR_RECORD_TABLE_REVISION 0x01
1375
1376///
1377/// Boot Error Region Block Status Definition
1378///
1387
1388///
1389/// Boot Error Region Definition
1390///
1398
1399//
1400// Boot Error Severity types
1401//
1402#define EFI_ACPI_5_1_ERROR_SEVERITY_RECOVERABLE 0x00
1403#define EFI_ACPI_5_1_ERROR_SEVERITY_FATAL 0x01
1404#define EFI_ACPI_5_1_ERROR_SEVERITY_CORRECTED 0x02
1405#define EFI_ACPI_5_1_ERROR_SEVERITY_NONE 0x03
1406//
1407// The term 'Correctable' is no longer being used as an error severity of the
1408// reported error since ACPI Specification Version 5.1 Errata B.
1409// The below macro is considered as deprecated and should no longer be used.
1410//
1411#define EFI_ACPI_5_1_ERROR_SEVERITY_CORRECTABLE 0x00
1412
1413///
1414/// Generic Error Data Entry Definition
1415///
1426
1427///
1428/// Generic Error Data Entry Version (as defined in ACPI 5.1 spec.)
1429///
1430#define EFI_ACPI_5_1_GENERIC_ERROR_DATA_ENTRY_REVISION 0x0201
1431
1432///
1433/// HEST - Hardware Error Source Table
1434///
1439
1440///
1441/// HEST Version (as defined in ACPI 5.1 spec.)
1442///
1443#define EFI_ACPI_5_1_HARDWARE_ERROR_SOURCE_TABLE_REVISION 0x01
1444
1445//
1446// Error Source structure types.
1447//
1448#define EFI_ACPI_5_1_IA32_ARCHITECTURE_MACHINE_CHECK_EXCEPTION 0x00
1449#define EFI_ACPI_5_1_IA32_ARCHITECTURE_CORRECTED_MACHINE_CHECK 0x01
1450#define EFI_ACPI_5_1_IA32_ARCHITECTURE_NMI_ERROR 0x02
1451#define EFI_ACPI_5_1_PCI_EXPRESS_ROOT_PORT_AER 0x06
1452#define EFI_ACPI_5_1_PCI_EXPRESS_DEVICE_AER 0x07
1453#define EFI_ACPI_5_1_PCI_EXPRESS_BRIDGE_AER 0x08
1454#define EFI_ACPI_5_1_GENERIC_HARDWARE_ERROR 0x09
1455
1456//
1457// Error Source structure flags.
1458//
1459#define EFI_ACPI_5_1_ERROR_SOURCE_FLAG_FIRMWARE_FIRST (1 << 0)
1460#define EFI_ACPI_5_1_ERROR_SOURCE_FLAG_GLOBAL (1 << 1)
1461
1462///
1463/// IA-32 Architecture Machine Check Exception Structure Definition
1464///
1478
1479///
1480/// IA-32 Architecture Machine Check Bank Structure Definition
1481///
1493
1494///
1495/// IA-32 Architecture Machine Check Bank Structure MCA data format
1496///
1497#define EFI_ACPI_5_1_IA32_ARCHITECTURE_MACHINE_CHECK_ERROR_DATA_FORMAT_IA32 0x00
1498#define EFI_ACPI_5_1_IA32_ARCHITECTURE_MACHINE_CHECK_ERROR_DATA_FORMAT_INTEL64 0x01
1499#define EFI_ACPI_5_1_IA32_ARCHITECTURE_MACHINE_CHECK_ERROR_DATA_FORMAT_AMD64 0x02
1500
1501//
1502// Hardware Error Notification types. All other values are reserved
1503//
1504#define EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_POLLED 0x00
1505#define EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_EXTERNAL_INTERRUPT 0x01
1506#define EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_LOCAL_INTERRUPT 0x02
1507#define EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_SCI 0x03
1508#define EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_NMI 0x04
1509
1510///
1511/// Hardware Error Notification Configuration Write Enable Structure Definition
1512///
1522
1523///
1524/// Hardware Error Notification Structure Definition
1525///
1537
1538///
1539/// IA-32 Architecture Corrected Machine Check Structure Definition
1540///
1553
1554///
1555/// IA-32 Architecture NMI Error Structure Definition
1556///
1565
1566///
1567/// PCI Express Root Port AER Structure Definition
1568///
1588
1589///
1590/// PCI Express Device AER Structure Definition
1591///
1610
1611///
1612/// PCI Express Bridge AER Structure Definition
1613///
1635
1636///
1637/// Generic Hardware Error Source Structure Definition
1638///
1652
1653///
1654/// Generic Error Status Definition
1655///
1663
1664///
1665/// ERST - Error Record Serialization Table
1666///
1673
1674///
1675/// ERST Version (as defined in ACPI 5.1 spec.)
1676///
1677#define EFI_ACPI_5_1_ERROR_RECORD_SERIALIZATION_TABLE_REVISION 0x01
1678
1679///
1680/// ERST Serialization Actions
1681///
1682#define EFI_ACPI_5_1_ERST_BEGIN_WRITE_OPERATION 0x00
1683#define EFI_ACPI_5_1_ERST_BEGIN_READ_OPERATION 0x01
1684#define EFI_ACPI_5_1_ERST_BEGIN_CLEAR_OPERATION 0x02
1685#define EFI_ACPI_5_1_ERST_END_OPERATION 0x03
1686#define EFI_ACPI_5_1_ERST_SET_RECORD_OFFSET 0x04
1687#define EFI_ACPI_5_1_ERST_EXECUTE_OPERATION 0x05
1688#define EFI_ACPI_5_1_ERST_CHECK_BUSY_STATUS 0x06
1689#define EFI_ACPI_5_1_ERST_GET_COMMAND_STATUS 0x07
1690#define EFI_ACPI_5_1_ERST_GET_RECORD_IDENTIFIER 0x08
1691#define EFI_ACPI_5_1_ERST_SET_RECORD_IDENTIFIER 0x09
1692#define EFI_ACPI_5_1_ERST_GET_RECORD_COUNT 0x0A
1693#define EFI_ACPI_5_1_ERST_BEGIN_DUMMY_WRITE_OPERATION 0x0B
1694#define EFI_ACPI_5_1_ERST_GET_ERROR_LOG_ADDRESS_RANGE 0x0D
1695#define EFI_ACPI_5_1_ERST_GET_ERROR_LOG_ADDRESS_RANGE_LENGTH 0x0E
1696#define EFI_ACPI_5_1_ERST_GET_ERROR_LOG_ADDRESS_RANGE_ATTRIBUTES 0x0F
1697
1698///
1699/// ERST Action Command Status
1700///
1701#define EFI_ACPI_5_1_ERST_STATUS_SUCCESS 0x00
1702#define EFI_ACPI_5_1_ERST_STATUS_NOT_ENOUGH_SPACE 0x01
1703#define EFI_ACPI_5_1_ERST_STATUS_HARDWARE_NOT_AVAILABLE 0x02
1704#define EFI_ACPI_5_1_ERST_STATUS_FAILED 0x03
1705#define EFI_ACPI_5_1_ERST_STATUS_RECORD_STORE_EMPTY 0x04
1706#define EFI_ACPI_5_1_ERST_STATUS_RECORD_NOT_FOUND 0x05
1707
1708///
1709/// ERST Serialization Instructions
1710///
1711#define EFI_ACPI_5_1_ERST_READ_REGISTER 0x00
1712#define EFI_ACPI_5_1_ERST_READ_REGISTER_VALUE 0x01
1713#define EFI_ACPI_5_1_ERST_WRITE_REGISTER 0x02
1714#define EFI_ACPI_5_1_ERST_WRITE_REGISTER_VALUE 0x03
1715#define EFI_ACPI_5_1_ERST_NOOP 0x04
1716#define EFI_ACPI_5_1_ERST_LOAD_VAR1 0x05
1717#define EFI_ACPI_5_1_ERST_LOAD_VAR2 0x06
1718#define EFI_ACPI_5_1_ERST_STORE_VAR1 0x07
1719#define EFI_ACPI_5_1_ERST_ADD 0x08
1720#define EFI_ACPI_5_1_ERST_SUBTRACT 0x09
1721#define EFI_ACPI_5_1_ERST_ADD_VALUE 0x0A
1722#define EFI_ACPI_5_1_ERST_SUBTRACT_VALUE 0x0B
1723#define EFI_ACPI_5_1_ERST_STALL 0x0C
1724#define EFI_ACPI_5_1_ERST_STALL_WHILE_TRUE 0x0D
1725#define EFI_ACPI_5_1_ERST_SKIP_NEXT_INSTRUCTION_IF_TRUE 0x0E
1726#define EFI_ACPI_5_1_ERST_GOTO 0x0F
1727#define EFI_ACPI_5_1_ERST_SET_SRC_ADDRESS_BASE 0x10
1728#define EFI_ACPI_5_1_ERST_SET_DST_ADDRESS_BASE 0x11
1729#define EFI_ACPI_5_1_ERST_MOVE_DATA 0x12
1730
1731///
1732/// ERST Instruction Flags
1733///
1734#define EFI_ACPI_5_1_ERST_PRESERVE_REGISTER 0x01
1735
1736///
1737/// ERST Serialization Instruction Entry
1738///
1748
1749///
1750/// EINJ - Error Injection Table
1751///
1759
1760///
1761/// EINJ Version (as defined in ACPI 5.1 spec.)
1762///
1763#define EFI_ACPI_5_1_ERROR_INJECTION_TABLE_REVISION 0x01
1764
1765///
1766/// EINJ Error Injection Actions
1767///
1768#define EFI_ACPI_5_1_EINJ_BEGIN_INJECTION_OPERATION 0x00
1769#define EFI_ACPI_5_1_EINJ_GET_TRIGGER_ERROR_ACTION_TABLE 0x01
1770#define EFI_ACPI_5_1_EINJ_SET_ERROR_TYPE 0x02
1771#define EFI_ACPI_5_1_EINJ_GET_ERROR_TYPE 0x03
1772#define EFI_ACPI_5_1_EINJ_END_OPERATION 0x04
1773#define EFI_ACPI_5_1_EINJ_EXECUTE_OPERATION 0x05
1774#define EFI_ACPI_5_1_EINJ_CHECK_BUSY_STATUS 0x06
1775#define EFI_ACPI_5_1_EINJ_GET_COMMAND_STATUS 0x07
1776#define EFI_ACPI_5_1_EINJ_SET_ERROR_TYPE_WITH_ADDRESS 0x08
1777#define EFI_ACPI_5_1_EINJ_TRIGGER_ERROR 0xFF
1778
1779///
1780/// EINJ Action Command Status
1781///
1782#define EFI_ACPI_5_1_EINJ_STATUS_SUCCESS 0x00
1783#define EFI_ACPI_5_1_EINJ_STATUS_UNKNOWN_FAILURE 0x01
1784#define EFI_ACPI_5_1_EINJ_STATUS_INVALID_ACCESS 0x02
1785
1786///
1787/// EINJ Error Type Definition
1788///
1789#define EFI_ACPI_5_1_EINJ_ERROR_PROCESSOR_CORRECTABLE (1 << 0)
1790#define EFI_ACPI_5_1_EINJ_ERROR_PROCESSOR_UNCORRECTABLE_NONFATAL (1 << 1)
1791#define EFI_ACPI_5_1_EINJ_ERROR_PROCESSOR_UNCORRECTABLE_FATAL (1 << 2)
1792#define EFI_ACPI_5_1_EINJ_ERROR_MEMORY_CORRECTABLE (1 << 3)
1793#define EFI_ACPI_5_1_EINJ_ERROR_MEMORY_UNCORRECTABLE_NONFATAL (1 << 4)
1794#define EFI_ACPI_5_1_EINJ_ERROR_MEMORY_UNCORRECTABLE_FATAL (1 << 5)
1795#define EFI_ACPI_5_1_EINJ_ERROR_PCI_EXPRESS_CORRECTABLE (1 << 6)
1796#define EFI_ACPI_5_1_EINJ_ERROR_PCI_EXPRESS_UNCORRECTABLE_NONFATAL (1 << 7)
1797#define EFI_ACPI_5_1_EINJ_ERROR_PCI_EXPRESS_UNCORRECTABLE_FATAL (1 << 8)
1798#define EFI_ACPI_5_1_EINJ_ERROR_PLATFORM_CORRECTABLE (1 << 9)
1799#define EFI_ACPI_5_1_EINJ_ERROR_PLATFORM_UNCORRECTABLE_NONFATAL (1 << 10)
1800#define EFI_ACPI_5_1_EINJ_ERROR_PLATFORM_UNCORRECTABLE_FATAL (1 << 11)
1801
1802///
1803/// EINJ Injection Instructions
1804///
1805#define EFI_ACPI_5_1_EINJ_READ_REGISTER 0x00
1806#define EFI_ACPI_5_1_EINJ_READ_REGISTER_VALUE 0x01
1807#define EFI_ACPI_5_1_EINJ_WRITE_REGISTER 0x02
1808#define EFI_ACPI_5_1_EINJ_WRITE_REGISTER_VALUE 0x03
1809#define EFI_ACPI_5_1_EINJ_NOOP 0x04
1810
1811///
1812/// EINJ Instruction Flags
1813///
1814#define EFI_ACPI_5_1_EINJ_PRESERVE_REGISTER 0x01
1815
1816///
1817/// EINJ Injection Instruction Entry
1818///
1828
1829///
1830/// EINJ Trigger Action Table
1831///
1838
1839///
1840/// Windows ACPI Emulated devices Table
1841///
1842typedef struct {
1844 ///
1845 /// Container of a bitmask of Windows behavior that this system requires
1846 /// Bit 0 - RTC good
1847 /// Bit 1 - ACPI PM timer good
1848 ///
1851
1852///
1853/// WAET Flags. All other bits are reserved and must be 0.
1854///
1855#define EFI_ACPI_5_1_WAET_FLAGS_RTC_GOOD BIT0
1856#define EFI_ACPI_5_1_WAET_FLAGS_ACPI_PM_TIMER_GOOD BIT1
1857
1858///
1859/// Platform Communications Channel Table (PCCT)
1860///
1866
1867///
1868/// PCCT Version (as defined in ACPI 5.1 spec.)
1869///
1870#define EFI_ACPI_5_1_PLATFORM_COMMUNICATION_CHANNEL_TABLE_REVISION 0x01
1871
1872///
1873/// PCCT Global Flags
1874///
1875#define EFI_ACPI_5_1_PCCT_FLAGS_SCI_DOORBELL BIT0
1876
1877//
1878// PCCT Subspace type
1879//
1880#define EFI_ACPI_5_1_PCCT_SUBSPACE_TYPE_GENERIC 0x00
1881
1882///
1883/// PCC Subspace Structure Header
1884///
1889
1890///
1891/// Generic Communications Subspace Structure
1892///
1906
1907///
1908/// Generic Communications Channel Shared Memory Region
1909///
1910
1916
1925
1931
1932//
1933// Known table signatures
1934//
1935
1936///
1937/// "RSD PTR " Root System Description Pointer
1938///
1939#define EFI_ACPI_5_1_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE SIGNATURE_64('R', 'S', 'D', ' ', 'P', 'T', 'R', ' ')
1940
1941///
1942/// "APIC" Multiple APIC Description Table
1943///
1944#define EFI_ACPI_5_1_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('A', 'P', 'I', 'C')
1945
1946///
1947/// "BERT" Boot Error Record Table
1948///
1949#define EFI_ACPI_5_1_BOOT_ERROR_RECORD_TABLE_SIGNATURE SIGNATURE_32('B', 'E', 'R', 'T')
1950
1951///
1952/// "BGRT" Boot Graphics Resource Table
1953///
1954#define EFI_ACPI_5_1_BOOT_GRAPHICS_RESOURCE_TABLE_SIGNATURE SIGNATURE_32('B', 'G', 'R', 'T')
1955
1956///
1957/// "CPEP" Corrected Platform Error Polling Table
1958///
1959#define EFI_ACPI_5_1_CORRECTED_PLATFORM_ERROR_POLLING_TABLE_SIGNATURE SIGNATURE_32('C', 'P', 'E', 'P')
1960
1961///
1962/// "DSDT" Differentiated System Description Table
1963///
1964#define EFI_ACPI_5_1_DIFFERENTIATED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('D', 'S', 'D', 'T')
1965
1966///
1967/// "ECDT" Embedded Controller Boot Resources Table
1968///
1969#define EFI_ACPI_5_1_EMBEDDED_CONTROLLER_BOOT_RESOURCES_TABLE_SIGNATURE SIGNATURE_32('E', 'C', 'D', 'T')
1970
1971///
1972/// "EINJ" Error Injection Table
1973///
1974#define EFI_ACPI_5_1_ERROR_INJECTION_TABLE_SIGNATURE SIGNATURE_32('E', 'I', 'N', 'J')
1975
1976///
1977/// "ERST" Error Record Serialization Table
1978///
1979#define EFI_ACPI_5_1_ERROR_RECORD_SERIALIZATION_TABLE_SIGNATURE SIGNATURE_32('E', 'R', 'S', 'T')
1980
1981///
1982/// "FACP" Fixed ACPI Description Table
1983///
1984#define EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('F', 'A', 'C', 'P')
1985
1986///
1987/// "FACS" Firmware ACPI Control Structure
1988///
1989#define EFI_ACPI_5_1_FIRMWARE_ACPI_CONTROL_STRUCTURE_SIGNATURE SIGNATURE_32('F', 'A', 'C', 'S')
1990
1991///
1992/// "FPDT" Firmware Performance Data Table
1993///
1994#define EFI_ACPI_5_1_FIRMWARE_PERFORMANCE_DATA_TABLE_SIGNATURE SIGNATURE_32('F', 'P', 'D', 'T')
1995
1996///
1997/// "GTDT" Generic Timer Description Table
1998///
1999#define EFI_ACPI_5_1_GENERIC_TIMER_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('G', 'T', 'D', 'T')
2000
2001///
2002/// "HEST" Hardware Error Source Table
2003///
2004#define EFI_ACPI_5_1_HARDWARE_ERROR_SOURCE_TABLE_SIGNATURE SIGNATURE_32('H', 'E', 'S', 'T')
2005
2006///
2007/// "MPST" Memory Power State Table
2008///
2009#define EFI_ACPI_5_1_MEMORY_POWER_STATE_TABLE_SIGNATURE SIGNATURE_32('M', 'P', 'S', 'T')
2010
2011///
2012/// "MSCT" Maximum System Characteristics Table
2013///
2014#define EFI_ACPI_5_1_MAXIMUM_SYSTEM_CHARACTERISTICS_TABLE_SIGNATURE SIGNATURE_32('M', 'S', 'C', 'T')
2015
2016///
2017/// "PMTT" Platform Memory Topology Table
2018///
2019#define EFI_ACPI_5_1_PLATFORM_MEMORY_TOPOLOGY_TABLE_SIGNATURE SIGNATURE_32('P', 'M', 'T', 'T')
2020
2021///
2022/// "PSDT" Persistent System Description Table
2023///
2024#define EFI_ACPI_5_1_PERSISTENT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('P', 'S', 'D', 'T')
2025
2026///
2027/// "RASF" ACPI RAS Feature Table
2028///
2029#define EFI_ACPI_5_1_ACPI_RAS_FEATURE_TABLE_SIGNATURE SIGNATURE_32('R', 'A', 'S', 'F')
2030
2031///
2032/// "RSDT" Root System Description Table
2033///
2034#define EFI_ACPI_5_1_ROOT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('R', 'S', 'D', 'T')
2035
2036///
2037/// "SBST" Smart Battery Specification Table
2038///
2039#define EFI_ACPI_5_1_SMART_BATTERY_SPECIFICATION_TABLE_SIGNATURE SIGNATURE_32('S', 'B', 'S', 'T')
2040
2041///
2042/// "SLIT" System Locality Information Table
2043///
2044#define EFI_ACPI_5_1_SYSTEM_LOCALITY_INFORMATION_TABLE_SIGNATURE SIGNATURE_32('S', 'L', 'I', 'T')
2045
2046///
2047/// "SRAT" System Resource Affinity Table
2048///
2049#define EFI_ACPI_5_1_SYSTEM_RESOURCE_AFFINITY_TABLE_SIGNATURE SIGNATURE_32('S', 'R', 'A', 'T')
2050
2051///
2052/// "SSDT" Secondary System Description Table
2053///
2054#define EFI_ACPI_5_1_SECONDARY_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('S', 'S', 'D', 'T')
2055
2056///
2057/// "XSDT" Extended System Description Table
2058///
2059#define EFI_ACPI_5_1_EXTENDED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('X', 'S', 'D', 'T')
2060
2061///
2062/// "BOOT" MS Simple Boot Spec
2063///
2064#define EFI_ACPI_5_1_SIMPLE_BOOT_FLAG_TABLE_SIGNATURE SIGNATURE_32('B', 'O', 'O', 'T')
2065
2066///
2067/// "CSRT" MS Core System Resource Table
2068///
2069#define EFI_ACPI_5_1_CORE_SYSTEM_RESOURCE_TABLE_SIGNATURE SIGNATURE_32('C', 'S', 'R', 'T')
2070
2071///
2072/// "DBG2" MS Debug Port 2 Spec
2073///
2074#define EFI_ACPI_5_1_DEBUG_PORT_2_TABLE_SIGNATURE SIGNATURE_32('D', 'B', 'G', '2')
2075
2076///
2077/// "DBGP" MS Debug Port Spec
2078///
2079#define EFI_ACPI_5_1_DEBUG_PORT_TABLE_SIGNATURE SIGNATURE_32('D', 'B', 'G', 'P')
2080
2081///
2082/// "DMAR" DMA Remapping Table
2083///
2084#define EFI_ACPI_5_1_DMA_REMAPPING_TABLE_SIGNATURE SIGNATURE_32('D', 'M', 'A', 'R')
2085
2086///
2087/// "DRTM" Dynamic Root of Trust for Measurement Table
2088///
2089#define EFI_ACPI_5_1_DYNAMIC_ROOT_OF_TRUST_FOR_MEASUREMENT_TABLE_SIGNATURE SIGNATURE_32('D', 'R', 'T', 'M')
2090
2091///
2092/// "ETDT" Event Timer Description Table
2093///
2094#define EFI_ACPI_5_1_EVENT_TIMER_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('E', 'T', 'D', 'T')
2095
2096///
2097/// "HPET" IA-PC High Precision Event Timer Table
2098///
2099#define EFI_ACPI_5_1_HIGH_PRECISION_EVENT_TIMER_TABLE_SIGNATURE SIGNATURE_32('H', 'P', 'E', 'T')
2100
2101///
2102/// "iBFT" iSCSI Boot Firmware Table
2103///
2104#define EFI_ACPI_5_1_ISCSI_BOOT_FIRMWARE_TABLE_SIGNATURE SIGNATURE_32('i', 'B', 'F', 'T')
2105
2106///
2107/// "IVRS" I/O Virtualization Reporting Structure
2108///
2109#define EFI_ACPI_5_1_IO_VIRTUALIZATION_REPORTING_STRUCTURE_SIGNATURE SIGNATURE_32('I', 'V', 'R', 'S')
2110
2111///
2112/// "LPIT" Low Power Idle Table
2113///
2114#define EFI_ACPI_5_1_IO_LOW_POWER_IDLE_TABLE_STRUCTURE_SIGNATURE SIGNATURE_32('L', 'P', 'I', 'T')
2115
2116///
2117/// "MCFG" PCI Express Memory Mapped Configuration Space Base Address Description Table
2118///
2119#define EFI_ACPI_5_1_PCI_EXPRESS_MEMORY_MAPPED_CONFIGURATION_SPACE_BASE_ADDRESS_DESCRIPTION_TABLE_SIGNATURE SIGNATURE_32('M', 'C', 'F', 'G')
2120
2121///
2122/// "MCHI" Management Controller Host Interface Table
2123///
2124#define EFI_ACPI_5_1_MANAGEMENT_CONTROLLER_HOST_INTERFACE_TABLE_SIGNATURE SIGNATURE_32('M', 'C', 'H', 'I')
2125
2126///
2127/// "MSDM" MS Data Management Table
2128///
2129#define EFI_ACPI_5_1_DATA_MANAGEMENT_TABLE_SIGNATURE SIGNATURE_32('M', 'S', 'D', 'M')
2130
2131///
2132/// "PCCT" Platform Communications Channel Table
2133///
2134#define EFI_ACPI_5_1_PLATFORM_COMMUNICATIONS_CHANNEL_TABLE_SIGNATURE SIGNATURE_32('P', 'C', 'C', 'T')
2135
2136///
2137/// "SLIC" MS Software Licensing Table Specification
2138///
2139#define EFI_ACPI_5_1_SOFTWARE_LICENSING_TABLE_SIGNATURE SIGNATURE_32('S', 'L', 'I', 'C')
2140
2141///
2142/// "SPCR" Serial Port Console Redirection Table
2143///
2144#define EFI_ACPI_5_1_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_SIGNATURE SIGNATURE_32('S', 'P', 'C', 'R')
2145
2146///
2147/// "SPMI" Server Platform Management Interface Table
2148///
2149#define EFI_ACPI_5_1_SERVER_PLATFORM_MANAGEMENT_INTERFACE_TABLE_SIGNATURE SIGNATURE_32('S', 'P', 'M', 'I')
2150
2151///
2152/// "TCPA" Trusted Computing Platform Alliance Capabilities Table
2153///
2154#define EFI_ACPI_5_1_TRUSTED_COMPUTING_PLATFORM_ALLIANCE_CAPABILITIES_TABLE_SIGNATURE SIGNATURE_32('T', 'C', 'P', 'A')
2155
2156///
2157/// "TPM2" Trusted Computing Platform 1 Table
2158///
2159#define EFI_ACPI_5_1_TRUSTED_COMPUTING_PLATFORM_2_TABLE_SIGNATURE SIGNATURE_32('T', 'P', 'M', '2')
2160
2161///
2162/// "UEFI" UEFI ACPI Data Table
2163///
2164#define EFI_ACPI_5_1_UEFI_ACPI_DATA_TABLE_SIGNATURE SIGNATURE_32('U', 'E', 'F', 'I')
2165
2166///
2167/// "WAET" Windows ACPI Emulated Devices Table
2168///
2169#define EFI_ACPI_5_1_WINDOWS_ACPI_EMULATED_DEVICES_TABLE_SIGNATURE SIGNATURE_32('W', 'A', 'E', 'T')
2170
2171///
2172/// "WDAT" Watchdog Action Table
2173///
2174#define EFI_ACPI_5_1_WATCHDOG_ACTION_TABLE_SIGNATURE SIGNATURE_32('W', 'D', 'A', 'T')
2175
2176///
2177/// "WDRT" Watchdog Resource Table
2178///
2179#define EFI_ACPI_5_1_WATCHDOG_RESOURCE_TABLE_SIGNATURE SIGNATURE_32('W', 'D', 'R', 'T')
2180
2181///
2182/// "WPBT" MS Platform Binary Table
2183///
2184#define EFI_ACPI_5_1_PLATFORM_BINARY_TABLE_SIGNATURE SIGNATURE_32('W', 'P', 'B', 'T')
2185
2186#pragma pack()
unsigned short UINT16
2-byte unsigned value.
unsigned long long UINT64
8-byte unsigned value.
unsigned char UINT8
1-byte unsigned value.
unsigned int UINT32
4-byte unsigned value.
ACPI 5.0 definitions from the ACPI Specification Revision 5.0a November 13, 2013.
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
Definition compiler.h:921
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
Definition compiler.h:951
Boot Error Record Table (BERT)
Definition Acpi51.h:1365
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:1366
Boot Error Region Definition.
Definition Acpi51.h:1391
EFI_ACPI_5_1_ERROR_BLOCK_STATUS BlockStatus
Definition Acpi51.h:1392
Boot Graphics Resource Table definition.
Definition Acpi51.h:1022
UINT16 Version
2-bytes (16 bit) version ID.
Definition Acpi51.h:1027
UINT32 ImageOffsetY
A 4-byte (32-bit) unsigned long describing the display Y-offset of the boot image.
Definition Acpi51.h:1056
UINT8 ImageType
1-byte enumerated type field indicating format of the image.
Definition Acpi51.h:1039
UINT32 ImageOffsetX
A 4-byte (32-bit) unsigned long describing the display X-offset of the boot image.
Definition Acpi51.h:1050
UINT8 Status
1-byte status field indicating current status about the table.
Definition Acpi51.h:1033
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:1023
UINT64 ImageAddress
8-byte (64 bit) physical address pointing to the firmware's in-memory copy of the image bitmap.
Definition Acpi51.h:1044
Common table header, this prefaces all ACPI tables, including FACS, but excluding the RSD PTR structu...
Definition Acpi51.h:103
Corrected Platform Error Polling Table (CPEP)
Definition Acpi51.h:742
Corrected Platform Error Polling Processor Structure Definition.
Definition Acpi51.h:760
EINJ Injection Instruction Entry.
Definition Acpi51.h:1819
UINT8 Flags
Definition Acpi51.h:1822
UINT8 InjectionAction
Definition Acpi51.h:1820
UINT64 Mask
Definition Acpi51.h:1826
UINT8 Reserved0
Definition Acpi51.h:1823
UINT8 Instruction
Definition Acpi51.h:1821
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE RegisterRegion
Definition Acpi51.h:1824
UINT64 Value
Definition Acpi51.h:1825
EINJ Trigger Action Table.
Definition Acpi51.h:1832
Embedded Controller Boot Resources Table (ECDT) The table is followed by a null terminated ASCII stri...
Definition Acpi51.h:613
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE EcData
Definition Acpi51.h:616
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE EcControl
Definition Acpi51.h:615
Boot Error Region Block Status Definition.
Definition Acpi51.h:1379
EINJ - Error Injection Table.
Definition Acpi51.h:1752
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:1753
ERST - Error Record Serialization Table.
Definition Acpi51.h:1667
ERST Serialization Instruction Entry.
Definition Acpi51.h:1739
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE RegisterRegion
Definition Acpi51.h:1744
UINT8 Instruction
Definition Acpi51.h:1741
UINT8 Reserved0
Definition Acpi51.h:1743
UINT64 Mask
Definition Acpi51.h:1746
UINT64 Value
Definition Acpi51.h:1745
UINT8 Flags
Definition Acpi51.h:1742
UINT8 SerializationAction
Definition Acpi51.h:1740
Firmware ACPI Control Structure.
Definition Acpi51.h:258
Firmware Performance Record Table definition.
Definition Acpi51.h:1261
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:1262
Fixed ACPI Description Table Structure (FADT)
Definition Acpi51.h:133
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE ResetReg
Definition Acpi51.h:173
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XPm1bCntBlk
Definition Acpi51.h:182
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE SleepStatusReg
Definition Acpi51.h:188
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XPm1bEvtBlk
Definition Acpi51.h:180
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XPm1aCntBlk
Definition Acpi51.h:181
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE SleepControlReg
Definition Acpi51.h:187
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XPmTmrBlk
Definition Acpi51.h:184
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XGpe0Blk
Definition Acpi51.h:185
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XGpe1Blk
Definition Acpi51.h:186
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XPm1aEvtBlk
Definition Acpi51.h:179
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE XPm2CntBlk
Definition Acpi51.h:183
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:134
FPDT Firmware Basic Boot Performance Pointer Record Structure.
Definition Acpi51.h:1131
UINT64 BootPerformanceTablePointer
64-bit processor-relative physical address of the Basic Boot Performance Table.
Definition Acpi51.h:1137
EFI_ACPI_5_1_FPDT_PERFORMANCE_RECORD_HEADER Header
Definition Acpi51.h:1132
FPDT Firmware Basic Boot Performance Record Structure.
Definition Acpi51.h:1155
UINT64 ExitBootServicesEntry
Timer value logged at the point when the OS loader calls the ExitBootServices function for UEFI compa...
Definition Acpi51.h:1179
UINT64 ResetEnd
Timer value logged at the beginning of firmware image execution.
Definition Acpi51.h:1162
UINT64 OsLoaderStartImageStart
Timer value logged just prior to launching the previously loaded OS boot loader image.
Definition Acpi51.h:1173
EFI_ACPI_5_1_FPDT_PERFORMANCE_RECORD_HEADER Header
Definition Acpi51.h:1156
UINT64 OsLoaderLoadImageStart
Timer value logged just prior to loading the OS boot loader into memory.
Definition Acpi51.h:1167
UINT64 ExitBootServicesExit
Timer value logged at the point just prior to when the OS loader gaining control back from calls the ...
Definition Acpi51.h:1185
EFI_ACPI_5_1_FPDT_PERFORMANCE_TABLE_HEADER Header
Definition Acpi51.h:1197
EFI_ACPI_5_1_FPDT_PERFORMANCE_TABLE_HEADER Header
Definition Acpi51.h:1212
FPDT Performance Record header.
Definition Acpi51.h:1114
FPDT Performance Table header.
Definition Acpi51.h:1123
FPDT S3 Performance Table Pointer Record Structure.
Definition Acpi51.h:1143
UINT64 S3PerformanceTablePointer
64-bit processor-relative physical address of the S3 Performance Table.
Definition Acpi51.h:1149
EFI_ACPI_5_1_FPDT_PERFORMANCE_RECORD_HEADER Header
Definition Acpi51.h:1144
FPDT Basic S3 Resume Performance Record.
Definition Acpi51.h:1221
EFI_ACPI_5_1_FPDT_PERFORMANCE_RECORD_HEADER Header
Definition Acpi51.h:1222
UINT64 FullResume
Timer recorded at the end of BIOS S3 resume, just prior to handoff to the OS waking vector.
Definition Acpi51.h:1231
UINT32 ResumeCount
A count of the number of S3 resume cycles since the last full boot sequence.
Definition Acpi51.h:1226
UINT64 AverageResume
Average timer value of all resume cycles logged since the last full boot sequence,...
Definition Acpi51.h:1237
FPDT Basic S3 Suspend Performance Record.
Definition Acpi51.h:1243
EFI_ACPI_5_1_FPDT_PERFORMANCE_RECORD_HEADER Header
Definition Acpi51.h:1244
UINT64 SuspendStart
Timer value recorded at the OS write to SLP_TYP upon entry to S3.
Definition Acpi51.h:1249
UINT64 SuspendEnd
Timer value recorded at the final firmware write to SLP_TYP (or other mechanism) used to trigger hard...
Definition Acpi51.h:1255
ACPI 5.1 Generic Address Space definition.
Definition Acpi51.h:47
Generic Error Data Entry Definition.
Definition Acpi51.h:1416
UINT8 FruId[16]
Definition Acpi51.h:1423
UINT8 SectionType[16]
Definition Acpi51.h:1417
UINT8 Flags
Definition Acpi51.h:1421
UINT8 ValidationBits
Definition Acpi51.h:1420
UINT16 Revision
Definition Acpi51.h:1419
UINT8 FruText[20]
Definition Acpi51.h:1424
UINT32 ErrorDataLength
Definition Acpi51.h:1422
UINT32 ErrorSeverity
Definition Acpi51.h:1418
Generic Error Status Definition.
Definition Acpi51.h:1656
EFI_ACPI_5_1_ERROR_BLOCK_STATUS BlockStatus
Definition Acpi51.h:1657
Generic Hardware Error Source Structure Definition.
Definition Acpi51.h:1639
EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_STRUCTURE NotificationStructure
Definition Acpi51.h:1649
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE ErrorStatusAddress
Definition Acpi51.h:1648
Generic Timer Description Table definition.
Definition Acpi51.h:1268
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:1269
GICC Affinity Structure Definition.
Definition Acpi51.h:711
GICR Structure.
Definition Acpi51.h:585
GIC Distributor Structure.
Definition Acpi51.h:544
GIC MSI Frame Structure.
Definition Acpi51.h:566
SBSA Generic Watchdog Structure.
Definition Acpi51.h:1345
Hardware Error Notification Configuration Write Enable Structure Definition.
Definition Acpi51.h:1513
Hardware Error Notification Structure Definition.
Definition Acpi51.h:1526
EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_CONFIGURATION_WRITE_ENABLE_STRUCTURE ConfigurationWriteEnable
Definition Acpi51.h:1529
HEST - Hardware Error Source Table.
Definition Acpi51.h:1435
IA-32 Architecture Corrected Machine Check Structure Definition.
Definition Acpi51.h:1541
EFI_ACPI_5_1_HARDWARE_ERROR_NOTIFICATION_STRUCTURE NotificationStructure
Definition Acpi51.h:1549
IA-32 Architecture Machine Check Bank Structure Definition.
Definition Acpi51.h:1482
IA-32 Architecture Machine Check Exception Structure Definition.
Definition Acpi51.h:1465
IA-32 Architecture NMI Error Structure Definition.
Definition Acpi51.h:1557
Interrupt Source Override Structure.
Definition Acpi51.h:377
IO APIC Structure.
Definition Acpi51.h:365
IO SAPIC Structure.
Definition Acpi51.h:444
Local APIC Address Override Structure.
Definition Acpi51.h:434
Local APIC NMI Structure.
Definition Acpi51.h:423
Local x2APIC NMI Structure.
Definition Acpi51.h:504
Maximum Proximity Domain Information Structure Definition.
Definition Acpi51.h:787
Maximum System Characteristics Table (MSCT)
Definition Acpi51.h:771
Memory Affinity Structure Definition.
Definition Acpi51.h:673
Memory Power State Table definition.
Definition Acpi51.h:858
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:859
Memory Topology Table definition.
Definition Acpi51.h:953
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:954
MPST Memory Power State Characteristics Table.
Definition Acpi51.h:932
MPST Memory Power Node Table.
Definition Acpi51.h:902
MPST Platform Communication Channel Shared Memory Region definition.
Definition Acpi51.h:874
Multiple APIC Description Table header definition.
Definition Acpi51.h:304
Non-Maskable Interrupt Source Structure.
Definition Acpi51.h:413
Generic Communications Channel Shared Memory Region.
Definition Acpi51.h:1911
EFI_ACPI_5_1_PCCT_GENERIC_SHARED_MEMORY_REGION_COMMAND Command
Definition Acpi51.h:1928
EFI_ACPI_5_1_PCCT_GENERIC_SHARED_MEMORY_REGION_STATUS Status
Definition Acpi51.h:1929
Generic Communications Subspace Structure.
Definition Acpi51.h:1893
EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE DoorbellRegister
Definition Acpi51.h:1899
PCC Subspace Structure Header.
Definition Acpi51.h:1885
PCI Express Bridge AER Structure Definition.
Definition Acpi51.h:1614
PCI Express Device AER Structure Definition.
Definition Acpi51.h:1592
PCI Express Root Port AER Structure Definition.
Definition Acpi51.h:1569
Platform Communications Channel Table (PCCT)
Definition Acpi51.h:1861
Platform Interrupt Sources Structure Definition.
Definition Acpi51.h:389
Platform Interrupt Sources Structure.
Definition Acpi51.h:471
Common Memory Aggregator Device Structure.
Definition Acpi51.h:966
DIMM Memory Aggregator Device Structure.
Definition Acpi51.h:1011
EFI_ACPI_5_1_PMMT_COMMON_MEMORY_AGGREGATOR_DEVICE_STRUCTURE Header
Definition Acpi51.h:1012
MemoryController Memory Aggregator Device Structure.
Definition Acpi51.h:994
EFI_ACPI_5_1_PMMT_COMMON_MEMORY_AGGREGATOR_DEVICE_STRUCTURE Header
Definition Acpi51.h:995
Socket Memory Aggregator Device Structure.
Definition Acpi51.h:984
EFI_ACPI_5_1_PMMT_COMMON_MEMORY_AGGREGATOR_DEVICE_STRUCTURE Header
Definition Acpi51.h:985
Processor Local APIC/SAPIC Affinity Structure Definition.
Definition Acpi51.h:654
Processor Local APIC Structure Definition.
Definition Acpi51.h:349
Local SAPIC Structure This struct followed by a null-terminated ASCII string - ACPI Processor UID Str...
Definition Acpi51.h:457
Processor Local x2APIC Affinity Structure Definition.
Definition Acpi51.h:697
Processor Local x2APIC Structure Definition.
Definition Acpi51.h:492
ACPI RASF Parameter Block structure for PATROL_SCRUB.
Definition Acpi51.h:837
ACPI RASF Platform Communication Channel Shared Memory Region definition.
Definition Acpi51.h:812
ACPI RAS Feature Table definition.
Definition Acpi51.h:799
UINT8 PlatformCommunicationChannelIdentifier[12]
Definition Acpi51.h:801
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:800
Root System Description Pointer Structure.
Definition Acpi51.h:82
Smart Battery Description Table (SBST)
Definition Acpi51.h:596
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:597
System Locality Distance Information Table (SLIT).
Definition Acpi51.h:729
System Resource Affinity Table (SRAT).
Definition Acpi51.h:630
Windows ACPI Emulated devices Table.
Definition Acpi51.h:1842
EFI_ACPI_DESCRIPTION_HEADER Header
Definition Acpi51.h:1843
UINT32 EmulatedDeviceFlags
Container of a bitmask of Windows behavior that this system requires Bit 0 - RTC good Bit 1 - ACPI PM...
Definition Acpi51.h:1849
The common ACPI description table header.
Definition Acpi10.h:29