/// excluding the RSD PTR structure.\r
///\r
typedef struct {\r
- UINT32 Signature;\r
- UINT32 Length;\r
+ UINT32 Signature;\r
+ UINT32 Length;\r
} EFI_ACPI_COMMON_HEADER;\r
\r
#pragma pack(1)\r
/// The common ACPI description table header. This structure prefaces most ACPI tables.\r
///\r
typedef struct {\r
- UINT32 Signature;\r
- UINT32 Length;\r
- UINT8 Revision;\r
- UINT8 Checksum;\r
- UINT8 OemId[6];\r
- UINT64 OemTableId;\r
- UINT32 OemRevision;\r
- UINT32 CreatorId;\r
- UINT32 CreatorRevision;\r
+ UINT32 Signature;\r
+ UINT32 Length;\r
+ UINT8 Revision;\r
+ UINT8 Checksum;\r
+ UINT8 OemId[6];\r
+ UINT64 OemTableId;\r
+ UINT32 OemRevision;\r
+ UINT32 CreatorId;\r
+ UINT32 CreatorRevision;\r
} EFI_ACPI_DESCRIPTION_HEADER;\r
#pragma pack()\r
\r
//\r
// Define for Descriptor\r
//\r
-#define ACPI_SMALL_ITEM_FLAG 0x00\r
-#define ACPI_LARGE_ITEM_FLAG 0x01\r
+#define ACPI_SMALL_ITEM_FLAG 0x00\r
+#define ACPI_LARGE_ITEM_FLAG 0x01\r
\r
//\r
// Small Item Descriptor Name\r
//\r
-#define ACPI_SMALL_IRQ_DESCRIPTOR_NAME 0x04\r
-#define ACPI_SMALL_DMA_DESCRIPTOR_NAME 0x05\r
-#define ACPI_SMALL_START_DEPENDENT_DESCRIPTOR_NAME 0x06\r
-#define ACPI_SMALL_END_DEPENDENT_DESCRIPTOR_NAME 0x07\r
-#define ACPI_SMALL_IO_PORT_DESCRIPTOR_NAME 0x08\r
-#define ACPI_SMALL_FIXED_IO_PORT_DESCRIPTOR_NAME 0x09\r
-#define ACPI_SMALL_VENDOR_DEFINED_DESCRIPTOR_NAME 0x0E\r
-#define ACPI_SMALL_END_TAG_DESCRIPTOR_NAME 0x0F\r
+#define ACPI_SMALL_IRQ_DESCRIPTOR_NAME 0x04\r
+#define ACPI_SMALL_DMA_DESCRIPTOR_NAME 0x05\r
+#define ACPI_SMALL_START_DEPENDENT_DESCRIPTOR_NAME 0x06\r
+#define ACPI_SMALL_END_DEPENDENT_DESCRIPTOR_NAME 0x07\r
+#define ACPI_SMALL_IO_PORT_DESCRIPTOR_NAME 0x08\r
+#define ACPI_SMALL_FIXED_IO_PORT_DESCRIPTOR_NAME 0x09\r
+#define ACPI_SMALL_VENDOR_DEFINED_DESCRIPTOR_NAME 0x0E\r
+#define ACPI_SMALL_END_TAG_DESCRIPTOR_NAME 0x0F\r
\r
//\r
// Large Item Descriptor Name\r
//\r
-#define ACPI_LARGE_24_BIT_MEMORY_RANGE_DESCRIPTOR_NAME 0x01\r
-#define ACPI_LARGE_VENDOR_DEFINED_DESCRIPTOR_NAME 0x04\r
-#define ACPI_LARGE_32_BIT_MEMORY_RANGE_DESCRIPTOR_NAME 0x05\r
-#define ACPI_LARGE_32_BIT_FIXED_MEMORY_RANGE_DESCRIPTOR_NAME 0x06\r
-#define ACPI_LARGE_DWORD_ADDRESS_SPACE_DESCRIPTOR_NAME 0x07\r
-#define ACPI_LARGE_WORD_ADDRESS_SPACE_DESCRIPTOR_NAME 0x08\r
-#define ACPI_LARGE_EXTENDED_IRQ_DESCRIPTOR_NAME 0x09\r
-#define ACPI_LARGE_QWORD_ADDRESS_SPACE_DESCRIPTOR_NAME 0x0A\r
+#define ACPI_LARGE_24_BIT_MEMORY_RANGE_DESCRIPTOR_NAME 0x01\r
+#define ACPI_LARGE_VENDOR_DEFINED_DESCRIPTOR_NAME 0x04\r
+#define ACPI_LARGE_32_BIT_MEMORY_RANGE_DESCRIPTOR_NAME 0x05\r
+#define ACPI_LARGE_32_BIT_FIXED_MEMORY_RANGE_DESCRIPTOR_NAME 0x06\r
+#define ACPI_LARGE_DWORD_ADDRESS_SPACE_DESCRIPTOR_NAME 0x07\r
+#define ACPI_LARGE_WORD_ADDRESS_SPACE_DESCRIPTOR_NAME 0x08\r
+#define ACPI_LARGE_EXTENDED_IRQ_DESCRIPTOR_NAME 0x09\r
+#define ACPI_LARGE_QWORD_ADDRESS_SPACE_DESCRIPTOR_NAME 0x0A\r
\r
//\r
// Small Item Descriptor Value\r
//\r
-#define ACPI_IRQ_NOFLAG_DESCRIPTOR 0x22\r
-#define ACPI_IRQ_DESCRIPTOR 0x23\r
-#define ACPI_DMA_DESCRIPTOR 0x2A\r
-#define ACPI_START_DEPENDENT_DESCRIPTOR 0x30\r
-#define ACPI_START_DEPENDENT_EX_DESCRIPTOR 0x31\r
-#define ACPI_END_DEPENDENT_DESCRIPTOR 0x38\r
-#define ACPI_IO_PORT_DESCRIPTOR 0x47\r
-#define ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR 0x4B\r
-#define ACPI_END_TAG_DESCRIPTOR 0x79\r
+#define ACPI_IRQ_NOFLAG_DESCRIPTOR 0x22\r
+#define ACPI_IRQ_DESCRIPTOR 0x23\r
+#define ACPI_DMA_DESCRIPTOR 0x2A\r
+#define ACPI_START_DEPENDENT_DESCRIPTOR 0x30\r
+#define ACPI_START_DEPENDENT_EX_DESCRIPTOR 0x31\r
+#define ACPI_END_DEPENDENT_DESCRIPTOR 0x38\r
+#define ACPI_IO_PORT_DESCRIPTOR 0x47\r
+#define ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR 0x4B\r
+#define ACPI_END_TAG_DESCRIPTOR 0x79\r
\r
//\r
// Large Item Descriptor Value\r
//\r
-#define ACPI_24_BIT_MEMORY_RANGE_DESCRIPTOR 0x81\r
-#define ACPI_32_BIT_MEMORY_RANGE_DESCRIPTOR 0x85\r
-#define ACPI_32_BIT_FIXED_MEMORY_RANGE_DESCRIPTOR 0x86\r
-#define ACPI_DWORD_ADDRESS_SPACE_DESCRIPTOR 0x87\r
-#define ACPI_WORD_ADDRESS_SPACE_DESCRIPTOR 0x88\r
-#define ACPI_EXTENDED_INTERRUPT_DESCRIPTOR 0x89\r
-#define ACPI_QWORD_ADDRESS_SPACE_DESCRIPTOR 0x8A\r
-#define ACPI_ADDRESS_SPACE_DESCRIPTOR 0x8A\r
+#define ACPI_24_BIT_MEMORY_RANGE_DESCRIPTOR 0x81\r
+#define ACPI_32_BIT_MEMORY_RANGE_DESCRIPTOR 0x85\r
+#define ACPI_32_BIT_FIXED_MEMORY_RANGE_DESCRIPTOR 0x86\r
+#define ACPI_DWORD_ADDRESS_SPACE_DESCRIPTOR 0x87\r
+#define ACPI_WORD_ADDRESS_SPACE_DESCRIPTOR 0x88\r
+#define ACPI_EXTENDED_INTERRUPT_DESCRIPTOR 0x89\r
+#define ACPI_QWORD_ADDRESS_SPACE_DESCRIPTOR 0x8A\r
+#define ACPI_ADDRESS_SPACE_DESCRIPTOR 0x8A\r
\r
//\r
// Resource Type\r
//\r
-#define ACPI_ADDRESS_SPACE_TYPE_MEM 0x00\r
-#define ACPI_ADDRESS_SPACE_TYPE_IO 0x01\r
-#define ACPI_ADDRESS_SPACE_TYPE_BUS 0x02\r
+#define ACPI_ADDRESS_SPACE_TYPE_MEM 0x00\r
+#define ACPI_ADDRESS_SPACE_TYPE_IO 0x01\r
+#define ACPI_ADDRESS_SPACE_TYPE_BUS 0x02\r
\r
///\r
/// Power Management Timer frequency is fixed at 3.579545MHz.\r
///\r
-#define ACPI_TIMER_FREQUENCY 3579545\r
+#define ACPI_TIMER_FREQUENCY 3579545\r
\r
//\r
// Ensure proper structure formats\r
/// Address Space Descriptors.\r
///\r
typedef PACKED struct {\r
- UINT8 Desc;\r
- UINT16 Len;\r
- UINT8 ResType;\r
- UINT8 GenFlag;\r
- UINT8 SpecificFlag;\r
- UINT64 AddrSpaceGranularity;\r
- UINT64 AddrRangeMin;\r
- UINT64 AddrRangeMax;\r
- UINT64 AddrTranslationOffset;\r
- UINT64 AddrLen;\r
+ UINT8 Desc;\r
+ UINT16 Len;\r
+ UINT8 ResType;\r
+ UINT8 GenFlag;\r
+ UINT8 SpecificFlag;\r
+ UINT64 AddrSpaceGranularity;\r
+ UINT64 AddrRangeMin;\r
+ UINT64 AddrRangeMax;\r
+ UINT64 AddrTranslationOffset;\r
+ UINT64 AddrLen;\r
} EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR;\r
\r
typedef PACKED union {\r
- UINT8 Byte;\r
+ UINT8 Byte;\r
PACKED struct {\r
- UINT8 Length : 3;\r
- UINT8 Name : 4;\r
- UINT8 Type : 1;\r
+ UINT8 Length : 3;\r
+ UINT8 Name : 4;\r
+ UINT8 Type : 1;\r
} Bits;\r
} ACPI_SMALL_RESOURCE_HEADER;\r
\r
typedef PACKED struct {\r
PACKED union {\r
- UINT8 Byte;\r
+ UINT8 Byte;\r
PACKED struct {\r
- UINT8 Name : 7;\r
- UINT8 Type : 1;\r
- }Bits;\r
+ UINT8 Name : 7;\r
+ UINT8 Type : 1;\r
+ } Bits;\r
} Header;\r
- UINT16 Length;\r
+ UINT16 Length;\r
} ACPI_LARGE_RESOURCE_HEADER;\r
\r
///\r
/// IRQ Descriptor.\r
///\r
typedef PACKED struct {\r
- ACPI_SMALL_RESOURCE_HEADER Header;\r
- UINT16 Mask;\r
+ ACPI_SMALL_RESOURCE_HEADER Header;\r
+ UINT16 Mask;\r
} EFI_ACPI_IRQ_NOFLAG_DESCRIPTOR;\r
\r
///\r
/// IRQ Descriptor.\r
///\r
typedef PACKED struct {\r
- ACPI_SMALL_RESOURCE_HEADER Header;\r
- UINT16 Mask;\r
- UINT8 Information;\r
+ ACPI_SMALL_RESOURCE_HEADER Header;\r
+ UINT16 Mask;\r
+ UINT8 Information;\r
} EFI_ACPI_IRQ_DESCRIPTOR;\r
\r
///\r
/// DMA Descriptor.\r
///\r
typedef PACKED struct {\r
- ACPI_SMALL_RESOURCE_HEADER Header;\r
- UINT8 ChannelMask;\r
- UINT8 Information;\r
+ ACPI_SMALL_RESOURCE_HEADER Header;\r
+ UINT8 ChannelMask;\r
+ UINT8 Information;\r
} EFI_ACPI_DMA_DESCRIPTOR;\r
\r
///\r
/// I/O Port Descriptor\r
///\r
typedef PACKED struct {\r
- ACPI_SMALL_RESOURCE_HEADER Header;\r
- UINT8 Information;\r
- UINT16 BaseAddressMin;\r
- UINT16 BaseAddressMax;\r
- UINT8 Alignment;\r
- UINT8 Length;\r
+ ACPI_SMALL_RESOURCE_HEADER Header;\r
+ UINT8 Information;\r
+ UINT16 BaseAddressMin;\r
+ UINT16 BaseAddressMax;\r
+ UINT8 Alignment;\r
+ UINT8 Length;\r
} EFI_ACPI_IO_PORT_DESCRIPTOR;\r
\r
///\r
/// Fixed Location I/O Port Descriptor.\r
///\r
typedef PACKED struct {\r
- ACPI_SMALL_RESOURCE_HEADER Header;\r
- UINT16 BaseAddress;\r
- UINT8 Length;\r
+ ACPI_SMALL_RESOURCE_HEADER Header;\r
+ UINT16 BaseAddress;\r
+ UINT8 Length;\r
} EFI_ACPI_FIXED_LOCATION_IO_PORT_DESCRIPTOR;\r
\r
///\r
/// The End tag identifies an end of resource data.\r
///\r
typedef struct {\r
- UINT8 Desc;\r
- UINT8 Checksum;\r
+ UINT8 Desc;\r
+ UINT8 Checksum;\r
} EFI_ACPI_END_TAG_DESCRIPTOR;\r
\r
//\r
// General use definitions\r
//\r
-#define EFI_ACPI_RESERVED_BYTE 0x00\r
-#define EFI_ACPI_RESERVED_WORD 0x0000\r
-#define EFI_ACPI_RESERVED_DWORD 0x00000000\r
-#define EFI_ACPI_RESERVED_QWORD 0x0000000000000000\r
+#define EFI_ACPI_RESERVED_BYTE 0x00\r
+#define EFI_ACPI_RESERVED_WORD 0x0000\r
+#define EFI_ACPI_RESERVED_DWORD 0x00000000\r
+#define EFI_ACPI_RESERVED_QWORD 0x0000000000000000\r
\r
//\r
// Resource Type Specific Flags\r
//\r
// Bit [0] : Write Status, _RW\r
//\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_READ_WRITE (1 << 0)\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_READ_ONLY (0 << 0)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_READ_WRITE (1 << 0)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_READ_ONLY (0 << 0)\r
//\r
// Bit [2:1] : Memory Attributes, _MEM\r
//\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_NON_CACHEABLE (0 << 1)\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE (1 << 1)\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE_WRITE_COMBINING (2 << 1)\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE_PREFETCHABLE (3 << 1)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_NON_CACHEABLE (0 << 1)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE (1 << 1)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE_WRITE_COMBINING (2 << 1)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_CACHEABLE_PREFETCHABLE (3 << 1)\r
//\r
// Bit [4:3] : Memory Attributes, _MTP\r
//\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_MEMORY (0 << 3)\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_RESERVED (1 << 3)\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_ACPI (2 << 3)\r
-#define EFI_APCI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_NVS (3 << 3)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_MEMORY (0 << 3)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_RESERVED (1 << 3)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_ACPI (2 << 3)\r
+#define EFI_APCI_MEMORY_RESOURCE_SPECIFIC_FLAG_ADDRESS_RANGE_NVS (3 << 3)\r
//\r
// Bit [5] : Memory to I/O Translation, _TTP\r
//\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_TYPE_TRANSLATION (1 << 5)\r
-#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_TYPE_STATIC (0 << 5)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_TYPE_TRANSLATION (1 << 5)\r
+#define EFI_ACPI_MEMORY_RESOURCE_SPECIFIC_FLAG_TYPE_STATIC (0 << 5)\r
\r
//\r
// IRQ Information\r
// Ref ACPI specification 6.4.2.1\r
//\r
-#define EFI_ACPI_IRQ_SHARABLE_MASK 0x10\r
-#define EFI_ACPI_IRQ_SHARABLE 0x10\r
+#define EFI_ACPI_IRQ_SHARABLE_MASK 0x10\r
+#define EFI_ACPI_IRQ_SHARABLE 0x10\r
\r
-#define EFI_ACPI_IRQ_POLARITY_MASK 0x08\r
-#define EFI_ACPI_IRQ_HIGH_TRUE 0x00\r
-#define EFI_ACPI_IRQ_LOW_FALSE 0x08\r
+#define EFI_ACPI_IRQ_POLARITY_MASK 0x08\r
+#define EFI_ACPI_IRQ_HIGH_TRUE 0x00\r
+#define EFI_ACPI_IRQ_LOW_FALSE 0x08\r
\r
-#define EFI_ACPI_IRQ_MODE 0x01\r
-#define EFI_ACPI_IRQ_LEVEL_TRIGGERED 0x00\r
-#define EFI_ACPI_IRQ_EDGE_TRIGGERED 0x01\r
+#define EFI_ACPI_IRQ_MODE 0x01\r
+#define EFI_ACPI_IRQ_LEVEL_TRIGGERED 0x00\r
+#define EFI_ACPI_IRQ_EDGE_TRIGGERED 0x01\r
\r
//\r
// DMA Information\r
// Ref ACPI specification 6.4.2.2\r
//\r
-#define EFI_ACPI_DMA_SPEED_TYPE_MASK 0x60\r
-#define EFI_ACPI_DMA_SPEED_TYPE_COMPATIBILITY 0x00\r
-#define EFI_ACPI_DMA_SPEED_TYPE_A 0x20\r
-#define EFI_ACPI_DMA_SPEED_TYPE_B 0x40\r
-#define EFI_ACPI_DMA_SPEED_TYPE_F 0x60\r
+#define EFI_ACPI_DMA_SPEED_TYPE_MASK 0x60\r
+#define EFI_ACPI_DMA_SPEED_TYPE_COMPATIBILITY 0x00\r
+#define EFI_ACPI_DMA_SPEED_TYPE_A 0x20\r
+#define EFI_ACPI_DMA_SPEED_TYPE_B 0x40\r
+#define EFI_ACPI_DMA_SPEED_TYPE_F 0x60\r
\r
-#define EFI_ACPI_DMA_BUS_MASTER_MASK 0x04\r
-#define EFI_ACPI_DMA_BUS_MASTER 0x04\r
+#define EFI_ACPI_DMA_BUS_MASTER_MASK 0x04\r
+#define EFI_ACPI_DMA_BUS_MASTER 0x04\r
\r
-#define EFI_ACPI_DMA_TRANSFER_TYPE_MASK 0x03\r
-#define EFI_ACPI_DMA_TRANSFER_TYPE_8_BIT 0x00\r
-#define EFI_ACPI_DMA_TRANSFER_TYPE_8_BIT_AND_16_BIT 0x01\r
-#define EFI_ACPI_DMA_TRANSFER_TYPE_16_BIT 0x02\r
+#define EFI_ACPI_DMA_TRANSFER_TYPE_MASK 0x03\r
+#define EFI_ACPI_DMA_TRANSFER_TYPE_8_BIT 0x00\r
+#define EFI_ACPI_DMA_TRANSFER_TYPE_8_BIT_AND_16_BIT 0x01\r
+#define EFI_ACPI_DMA_TRANSFER_TYPE_16_BIT 0x02\r
\r
//\r
// IO Information\r
// Ref ACPI specification 6.4.2.5\r
//\r
-#define EFI_ACPI_IO_DECODE_MASK 0x01\r
-#define EFI_ACPI_IO_DECODE_16_BIT 0x01\r
-#define EFI_ACPI_IO_DECODE_10_BIT 0x00\r
+#define EFI_ACPI_IO_DECODE_MASK 0x01\r
+#define EFI_ACPI_IO_DECODE_16_BIT 0x01\r
+#define EFI_ACPI_IO_DECODE_10_BIT 0x00\r
\r
//\r
// Memory Information\r
// Ref ACPI specification 6.4.3.4\r
//\r
-#define EFI_ACPI_MEMORY_WRITE_STATUS_MASK 0x01\r
-#define EFI_ACPI_MEMORY_WRITABLE 0x01\r
-#define EFI_ACPI_MEMORY_NON_WRITABLE 0x00\r
+#define EFI_ACPI_MEMORY_WRITE_STATUS_MASK 0x01\r
+#define EFI_ACPI_MEMORY_WRITABLE 0x01\r
+#define EFI_ACPI_MEMORY_NON_WRITABLE 0x00\r
\r
//\r
// Interrupt Vector Flags definitions for Extended Interrupt Descriptor\r
// Ref ACPI specification 6.4.3.6\r
//\r
-#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_PRODUCER_CONSUMER_MASK BIT0\r
-#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_MODE_MASK BIT1\r
-#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_POLARITY_MASK BIT2\r
-#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_SHARABLE_MASK BIT3\r
-#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_WAKE_CAPABLITY_MASK BIT4\r
+#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_PRODUCER_CONSUMER_MASK BIT0\r
+#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_MODE_MASK BIT1\r
+#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_POLARITY_MASK BIT2\r
+#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_SHARABLE_MASK BIT3\r
+#define EFI_ACPI_EXTENDED_INTERRUPT_FLAG_WAKE_CAPABLITY_MASK BIT4\r
\r
//\r
// Ensure proper structure formats\r
/// Root System Description Pointer Structure.\r
///\r
typedef struct {\r
- UINT64 Signature;\r
- UINT8 Checksum;\r
- UINT8 OemId[6];\r
- UINT8 Reserved;\r
- UINT32 RsdtAddress;\r
+ UINT64 Signature;\r
+ UINT8 Checksum;\r
+ UINT8 OemId[6];\r
+ UINT8 Reserved;\r
+ UINT32 RsdtAddress;\r
} EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_POINTER;\r
\r
//\r
///\r
/// RSDT Revision (as defined in ACPI 1.0b specification).\r
///\r
-#define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01\r
+#define EFI_ACPI_1_0_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01\r
\r
///\r
/// Fixed ACPI Description Table Structure (FADT).\r
///\r
typedef struct {\r
- EFI_ACPI_DESCRIPTION_HEADER Header;\r
- UINT32 FirmwareCtrl;\r
- UINT32 Dsdt;\r
- UINT8 IntModel;\r
- UINT8 Reserved1;\r
- UINT16 SciInt;\r
- UINT32 SmiCmd;\r
- UINT8 AcpiEnable;\r
- UINT8 AcpiDisable;\r
- UINT8 S4BiosReq;\r
- UINT8 Reserved2;\r
- UINT32 Pm1aEvtBlk;\r
- UINT32 Pm1bEvtBlk;\r
- UINT32 Pm1aCntBlk;\r
- UINT32 Pm1bCntBlk;\r
- UINT32 Pm2CntBlk;\r
- UINT32 PmTmrBlk;\r
- UINT32 Gpe0Blk;\r
- UINT32 Gpe1Blk;\r
- UINT8 Pm1EvtLen;\r
- UINT8 Pm1CntLen;\r
- UINT8 Pm2CntLen;\r
- UINT8 PmTmLen;\r
- UINT8 Gpe0BlkLen;\r
- UINT8 Gpe1BlkLen;\r
- UINT8 Gpe1Base;\r
- UINT8 Reserved3;\r
- UINT16 PLvl2Lat;\r
- UINT16 PLvl3Lat;\r
- UINT16 FlushSize;\r
- UINT16 FlushStride;\r
- UINT8 DutyOffset;\r
- UINT8 DutyWidth;\r
- UINT8 DayAlrm;\r
- UINT8 MonAlrm;\r
- UINT8 Century;\r
- UINT8 Reserved4;\r
- UINT8 Reserved5;\r
- UINT8 Reserved6;\r
- UINT32 Flags;\r
+ EFI_ACPI_DESCRIPTION_HEADER Header;\r
+ UINT32 FirmwareCtrl;\r
+ UINT32 Dsdt;\r
+ UINT8 IntModel;\r
+ UINT8 Reserved1;\r
+ UINT16 SciInt;\r
+ UINT32 SmiCmd;\r
+ UINT8 AcpiEnable;\r
+ UINT8 AcpiDisable;\r
+ UINT8 S4BiosReq;\r
+ UINT8 Reserved2;\r
+ UINT32 Pm1aEvtBlk;\r
+ UINT32 Pm1bEvtBlk;\r
+ UINT32 Pm1aCntBlk;\r
+ UINT32 Pm1bCntBlk;\r
+ UINT32 Pm2CntBlk;\r
+ UINT32 PmTmrBlk;\r
+ UINT32 Gpe0Blk;\r
+ UINT32 Gpe1Blk;\r
+ UINT8 Pm1EvtLen;\r
+ UINT8 Pm1CntLen;\r
+ UINT8 Pm2CntLen;\r
+ UINT8 PmTmLen;\r
+ UINT8 Gpe0BlkLen;\r
+ UINT8 Gpe1BlkLen;\r
+ UINT8 Gpe1Base;\r
+ UINT8 Reserved3;\r
+ UINT16 PLvl2Lat;\r
+ UINT16 PLvl3Lat;\r
+ UINT16 FlushSize;\r
+ UINT16 FlushStride;\r
+ UINT8 DutyOffset;\r
+ UINT8 DutyWidth;\r
+ UINT8 DayAlrm;\r
+ UINT8 MonAlrm;\r
+ UINT8 Century;\r
+ UINT8 Reserved4;\r
+ UINT8 Reserved5;\r
+ UINT8 Reserved6;\r
+ UINT32 Flags;\r
} EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE;\r
\r
///\r
///\r
#define EFI_ACPI_1_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION 0x01\r
\r
-#define EFI_ACPI_1_0_INT_MODE_DUAL_PIC 0\r
-#define EFI_ACPI_1_0_INT_MODE_MULTIPLE_APIC 1\r
+#define EFI_ACPI_1_0_INT_MODE_DUAL_PIC 0\r
+#define EFI_ACPI_1_0_INT_MODE_MULTIPLE_APIC 1\r
\r
//\r
// Fixed ACPI Description Table Fixed Feature Flags\r
// All other bits are reserved and must be set to 0.\r
//\r
-#define EFI_ACPI_1_0_WBINVD BIT0\r
-#define EFI_ACPI_1_0_WBINVD_FLUSH BIT1\r
-#define EFI_ACPI_1_0_PROC_C1 BIT2\r
-#define EFI_ACPI_1_0_P_LVL2_UP BIT3\r
-#define EFI_ACPI_1_0_PWR_BUTTON BIT4\r
-#define EFI_ACPI_1_0_SLP_BUTTON BIT5\r
-#define EFI_ACPI_1_0_FIX_RTC BIT6\r
-#define EFI_ACPI_1_0_RTC_S4 BIT7\r
-#define EFI_ACPI_1_0_TMR_VAL_EXT BIT8\r
-#define EFI_ACPI_1_0_DCK_CAP BIT9\r
+#define EFI_ACPI_1_0_WBINVD BIT0\r
+#define EFI_ACPI_1_0_WBINVD_FLUSH BIT1\r
+#define EFI_ACPI_1_0_PROC_C1 BIT2\r
+#define EFI_ACPI_1_0_P_LVL2_UP BIT3\r
+#define EFI_ACPI_1_0_PWR_BUTTON BIT4\r
+#define EFI_ACPI_1_0_SLP_BUTTON BIT5\r
+#define EFI_ACPI_1_0_FIX_RTC BIT6\r
+#define EFI_ACPI_1_0_RTC_S4 BIT7\r
+#define EFI_ACPI_1_0_TMR_VAL_EXT BIT8\r
+#define EFI_ACPI_1_0_DCK_CAP BIT9\r
\r
///\r
/// Firmware ACPI Control Structure.\r
///\r
typedef struct {\r
- UINT32 Signature;\r
- UINT32 Length;\r
- UINT32 HardwareSignature;\r
- UINT32 FirmwareWakingVector;\r
- UINT32 GlobalLock;\r
- UINT32 Flags;\r
- UINT8 Reserved[40];\r
+ UINT32 Signature;\r
+ UINT32 Length;\r
+ UINT32 HardwareSignature;\r
+ UINT32 FirmwareWakingVector;\r
+ UINT32 GlobalLock;\r
+ UINT32 Flags;\r
+ UINT8 Reserved[40];\r
} EFI_ACPI_1_0_FIRMWARE_ACPI_CONTROL_STRUCTURE;\r
\r
///\r
/// Firmware Control Structure Feature Flags.\r
/// All other bits are reserved and must be set to 0.\r
///\r
-#define EFI_ACPI_1_0_S4BIOS_F BIT0\r
+#define EFI_ACPI_1_0_S4BIOS_F BIT0\r
\r
///\r
/// Multiple APIC Description Table header definition. The rest of the table\r
/// must be defined in a platform-specific manner.\r
///\r
typedef struct {\r
- EFI_ACPI_DESCRIPTION_HEADER Header;\r
- UINT32 LocalApicAddress;\r
- UINT32 Flags;\r
+ EFI_ACPI_DESCRIPTION_HEADER Header;\r
+ UINT32 LocalApicAddress;\r
+ UINT32 Flags;\r
} EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER;\r
\r
///\r
/// MADT Revision (as defined in ACPI 1.0b specification).\r
///\r
-#define EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION 0x01\r
+#define EFI_ACPI_1_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION 0x01\r
\r
///\r
/// Multiple APIC Flags\r
/// All other bits are reserved and must be set to 0.\r
///\r
-#define EFI_ACPI_1_0_PCAT_COMPAT BIT0\r
+#define EFI_ACPI_1_0_PCAT_COMPAT BIT0\r
\r
//\r
// Multiple APIC Description Table APIC structure types\r
/// Processor Local APIC Structure Definition.\r
///\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 Length;\r
- UINT8 AcpiProcessorId;\r
- UINT8 ApicId;\r
- UINT32 Flags;\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT8 AcpiProcessorId;\r
+ UINT8 ApicId;\r
+ UINT32 Flags;\r
} EFI_ACPI_1_0_PROCESSOR_LOCAL_APIC_STRUCTURE;\r
\r
///\r
/// Local APIC Flags. All other bits are reserved and must be 0.\r
///\r
-#define EFI_ACPI_1_0_LOCAL_APIC_ENABLED BIT0\r
+#define EFI_ACPI_1_0_LOCAL_APIC_ENABLED BIT0\r
\r
///\r
/// IO APIC Structure.\r
///\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 Length;\r
- UINT8 IoApicId;\r
- UINT8 Reserved;\r
- UINT32 IoApicAddress;\r
- UINT32 SystemVectorBase;\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT8 IoApicId;\r
+ UINT8 Reserved;\r
+ UINT32 IoApicAddress;\r
+ UINT32 SystemVectorBase;\r
} EFI_ACPI_1_0_IO_APIC_STRUCTURE;\r
\r
///\r
/// Interrupt Source Override Structure.\r
///\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 Length;\r
- UINT8 Bus;\r
- UINT8 Source;\r
- UINT32 GlobalSystemInterruptVector;\r
- UINT16 Flags;\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT8 Bus;\r
+ UINT8 Source;\r
+ UINT32 GlobalSystemInterruptVector;\r
+ UINT16 Flags;\r
} EFI_ACPI_1_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE;\r
\r
///\r
/// Non-Maskable Interrupt Source Structure.\r
///\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 Length;\r
- UINT16 Flags;\r
- UINT32 GlobalSystemInterruptVector;\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT16 Flags;\r
+ UINT32 GlobalSystemInterruptVector;\r
} EFI_ACPI_1_0_NON_MASKABLE_INTERRUPT_SOURCE_STRUCTURE;\r
\r
///\r
/// Local APIC NMI Structure.\r
///\r
typedef struct {\r
- UINT8 Type;\r
- UINT8 Length;\r
- UINT8 AcpiProcessorId;\r
- UINT16 Flags;\r
- UINT8 LocalApicInti;\r
+ UINT8 Type;\r
+ UINT8 Length;\r
+ UINT8 AcpiProcessorId;\r
+ UINT16 Flags;\r
+ UINT8 LocalApicInti;\r
} EFI_ACPI_1_0_LOCAL_APIC_NMI_STRUCTURE;\r
\r
///\r
/// Smart Battery Description Table (SBST)\r
///\r
typedef struct {\r
- EFI_ACPI_DESCRIPTION_HEADER Header;\r
- UINT32 WarningEnergyLevel;\r
- UINT32 LowEnergyLevel;\r
- UINT32 CriticalEnergyLevel;\r
+ EFI_ACPI_DESCRIPTION_HEADER Header;\r
+ UINT32 WarningEnergyLevel;\r
+ UINT32 LowEnergyLevel;\r
+ UINT32 CriticalEnergyLevel;\r
} EFI_ACPI_1_0_SMART_BATTERY_DESCRIPTION_TABLE;\r
\r
//\r