130fdf1140b8d1ce93f3821d986fa165552023440lgao/** @file 230fdf1140b8d1ce93f3821d986fa165552023440lgao ACPI 2.0 definitions from the ACPI Specification, revision 2.0 330fdf1140b8d1ce93f3821d986fa165552023440lgao 497fa0ee9b1cffbb4b97ee35365afa7afcf50e174Yingke Liu Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR> 530fdf1140b8d1ce93f3821d986fa165552023440lgao 630fdf1140b8d1ce93f3821d986fa165552023440lgao This program and the accompanying materials are licensed and made available 730fdf1140b8d1ce93f3821d986fa165552023440lgao under the terms and conditions of the BSD License which accompanies this 897fa0ee9b1cffbb4b97ee35365afa7afcf50e174Yingke Liu distribution. The full text of the license may be found at 930fdf1140b8d1ce93f3821d986fa165552023440lgao http://opensource.org/licenses/bsd-license.php 1030fdf1140b8d1ce93f3821d986fa165552023440lgao 1130fdf1140b8d1ce93f3821d986fa165552023440lgao THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 1230fdf1140b8d1ce93f3821d986fa165552023440lgao WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 1330fdf1140b8d1ce93f3821d986fa165552023440lgao 1430fdf1140b8d1ce93f3821d986fa165552023440lgao**/ 1530fdf1140b8d1ce93f3821d986fa165552023440lgao 1630fdf1140b8d1ce93f3821d986fa165552023440lgao#ifndef _ACPI_2_0_H_ 1730fdf1140b8d1ce93f3821d986fa165552023440lgao#define _ACPI_2_0_H_ 1830fdf1140b8d1ce93f3821d986fa165552023440lgao 1930fdf1140b8d1ce93f3821d986fa165552023440lgao#include "IndustryStandard/Acpi.h" 2030fdf1140b8d1ce93f3821d986fa165552023440lgao 2130fdf1140b8d1ce93f3821d986fa165552023440lgao// 2230fdf1140b8d1ce93f3821d986fa165552023440lgao// Ensure proper structure formats 2330fdf1140b8d1ce93f3821d986fa165552023440lgao// 2430fdf1140b8d1ce93f3821d986fa165552023440lgao#pragma pack(1) 2530fdf1140b8d1ce93f3821d986fa165552023440lgao// 2630fdf1140b8d1ce93f3821d986fa165552023440lgao// ACPI Specification Revision 2730fdf1140b8d1ce93f3821d986fa165552023440lgao// 2830fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_REVISION 0x02 2930fdf1140b8d1ce93f3821d986fa165552023440lgao 3030fdf1140b8d1ce93f3821d986fa165552023440lgao// 3130fdf1140b8d1ce93f3821d986fa165552023440lgao// BUGBUG: OEM values need to be moved somewhere else, probably read from data hub 3230fdf1140b8d1ce93f3821d986fa165552023440lgao// and produced by a platform specific driver. 3330fdf1140b8d1ce93f3821d986fa165552023440lgao// 3430fdf1140b8d1ce93f3821d986fa165552023440lgao// 3530fdf1140b8d1ce93f3821d986fa165552023440lgao// ACPI OEM ID 3630fdf1140b8d1ce93f3821d986fa165552023440lgao// 3730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_OEM_ID "INTEL " 3830fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_OEM_TABLE_ID 0x5034303738543245 // "E2T8704P" 3930fdf1140b8d1ce93f3821d986fa165552023440lgao// 4030fdf1140b8d1ce93f3821d986fa165552023440lgao// ACPI OEM Revision 4130fdf1140b8d1ce93f3821d986fa165552023440lgao// 4230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_OEM_REVISION 0x00000002 4330fdf1140b8d1ce93f3821d986fa165552023440lgao 4430fdf1140b8d1ce93f3821d986fa165552023440lgao// 4530fdf1140b8d1ce93f3821d986fa165552023440lgao// ACPI table creator ID 4630fdf1140b8d1ce93f3821d986fa165552023440lgao// 4730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_CREATOR_ID 0x5446534D // TBD "MSFT" 4830fdf1140b8d1ce93f3821d986fa165552023440lgao// 4930fdf1140b8d1ce93f3821d986fa165552023440lgao// ACPI table creator revision 5030fdf1140b8d1ce93f3821d986fa165552023440lgao// 5130fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_CREATOR_REVISION 0x01000013 // TBD 5230fdf1140b8d1ce93f3821d986fa165552023440lgao// 5330fdf1140b8d1ce93f3821d986fa165552023440lgao// ACPI 2.0 Generic Address Space definition 5430fdf1140b8d1ce93f3821d986fa165552023440lgao// 5530fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 5630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 AddressSpaceId; 5730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 RegisterBitWidth; 5830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 RegisterBitOffset; 5930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved; 6030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 Address; 6130fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE; 6230fdf1140b8d1ce93f3821d986fa165552023440lgao 6330fdf1140b8d1ce93f3821d986fa165552023440lgao// 6430fdf1140b8d1ce93f3821d986fa165552023440lgao// Generic Address Space Address IDs 6530fdf1140b8d1ce93f3821d986fa165552023440lgao// 6630fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SYSTEM_MEMORY 0 6730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SYSTEM_IO 1 6830fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PCI_CONFIGURATION_SPACE 2 6930fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_EMBEDDED_CONTROLLER 3 7030fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SMBUS 4 7130fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_FUNCTIONAL_FIXED_HARDWARE 0x7F 7230fdf1140b8d1ce93f3821d986fa165552023440lgao 7330fdf1140b8d1ce93f3821d986fa165552023440lgao// 7430fdf1140b8d1ce93f3821d986fa165552023440lgao// ACPI 2.0 table structures 7530fdf1140b8d1ce93f3821d986fa165552023440lgao// 7630fdf1140b8d1ce93f3821d986fa165552023440lgao// 7730fdf1140b8d1ce93f3821d986fa165552023440lgao// Root System Description Pointer Structure 7830fdf1140b8d1ce93f3821d986fa165552023440lgao// 7930fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 8030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 Signature; 8130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Checksum; 8230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 OemId[6]; 8330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Revision; 8430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 RsdtAddress; 8530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Length; 8630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 XsdtAddress; 8730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 ExtendedChecksum; 8830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved[3]; 8930fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER; 9030fdf1140b8d1ce93f3821d986fa165552023440lgao 9130fdf1140b8d1ce93f3821d986fa165552023440lgao// 9230fdf1140b8d1ce93f3821d986fa165552023440lgao// RSD_PTR Revision (as defined in ACPI 2.0 spec.) 9330fdf1140b8d1ce93f3821d986fa165552023440lgao// 9430fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER_REVISION 0x02 9530fdf1140b8d1ce93f3821d986fa165552023440lgao 9630fdf1140b8d1ce93f3821d986fa165552023440lgao// 9730fdf1140b8d1ce93f3821d986fa165552023440lgao// Common table header, this prefaces all ACPI tables, including FACS, but 9830fdf1140b8d1ce93f3821d986fa165552023440lgao// excluding the RSD PTR structure 9930fdf1140b8d1ce93f3821d986fa165552023440lgao// 10030fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 10130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Signature; 10230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Length; 10330fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_COMMON_HEADER; 10430fdf1140b8d1ce93f3821d986fa165552023440lgao 10530fdf1140b8d1ce93f3821d986fa165552023440lgao// 10630fdf1140b8d1ce93f3821d986fa165552023440lgao// Root System Description Table 10730fdf1140b8d1ce93f3821d986fa165552023440lgao// No definition needed as it is a common description table header followed by a 10830fdf1140b8d1ce93f3821d986fa165552023440lgao// variable number of UINT32 table pointers. 10930fdf1140b8d1ce93f3821d986fa165552023440lgao// 11030fdf1140b8d1ce93f3821d986fa165552023440lgao// 11130fdf1140b8d1ce93f3821d986fa165552023440lgao// RSDT Revision (as defined in ACPI 2.0 spec.) 11230fdf1140b8d1ce93f3821d986fa165552023440lgao// 11330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01 11430fdf1140b8d1ce93f3821d986fa165552023440lgao 11530fdf1140b8d1ce93f3821d986fa165552023440lgao// 11630fdf1140b8d1ce93f3821d986fa165552023440lgao// Extended System Description Table 11730fdf1140b8d1ce93f3821d986fa165552023440lgao// No definition needed as it is a common description table header followed by a 11830fdf1140b8d1ce93f3821d986fa165552023440lgao// variable number of UINT64 table pointers. 11930fdf1140b8d1ce93f3821d986fa165552023440lgao// 12030fdf1140b8d1ce93f3821d986fa165552023440lgao// 12130fdf1140b8d1ce93f3821d986fa165552023440lgao// XSDT Revision (as defined in ACPI 2.0 spec.) 12230fdf1140b8d1ce93f3821d986fa165552023440lgao// 12330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_EXTENDED_SYSTEM_DESCRIPTION_TABLE_REVISION 0x01 12430fdf1140b8d1ce93f3821d986fa165552023440lgao 12530fdf1140b8d1ce93f3821d986fa165552023440lgao// 12630fdf1140b8d1ce93f3821d986fa165552023440lgao// Fixed ACPI Description Table Structure (FADT) 12730fdf1140b8d1ce93f3821d986fa165552023440lgao// 12830fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 12930fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_DESCRIPTION_HEADER Header; 13030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 FirmwareCtrl; 13130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Dsdt; 13230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved0; 13330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 PreferredPmProfile; 13430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 SciInt; 13530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 SmiCmd; 13630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 AcpiEnable; 13730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 AcpiDisable; 13830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 S4BiosReq; 13930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 PstateCnt; 14030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Pm1aEvtBlk; 14130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Pm1bEvtBlk; 14230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Pm1aCntBlk; 14330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Pm1bCntBlk; 14430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Pm2CntBlk; 14530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 PmTmrBlk; 14630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Gpe0Blk; 14730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Gpe1Blk; 14830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Pm1EvtLen; 14930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Pm1CntLen; 15030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Pm2CntLen; 15130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 PmTmrLen; 15230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Gpe0BlkLen; 15330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Gpe1BlkLen; 15430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Gpe1Base; 15530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 CstCnt; 15630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 PLvl2Lat; 15730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 PLvl3Lat; 15830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 FlushSize; 15930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 FlushStride; 16030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 DutyOffset; 16130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 DutyWidth; 16230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 DayAlrm; 16330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 MonAlrm; 16430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Century; 16530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 IaPcBootArch; 16630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved1; 16730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Flags; 16830fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE ResetReg; 16930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 ResetValue; 17030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved2[3]; 17130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 XFirmwareCtrl; 17230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 XDsdt; 17330fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XPm1aEvtBlk; 17430fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XPm1bEvtBlk; 17530fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XPm1aCntBlk; 17630fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XPm1bCntBlk; 17730fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XPm2CntBlk; 17830fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XPmTmrBlk; 17930fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XGpe0Blk; 18030fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE XGpe1Blk; 18130fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE; 18230fdf1140b8d1ce93f3821d986fa165552023440lgao 18330fdf1140b8d1ce93f3821d986fa165552023440lgao// 18430fdf1140b8d1ce93f3821d986fa165552023440lgao// FADT Version (as defined in ACPI 2.0 spec.) 18530fdf1140b8d1ce93f3821d986fa165552023440lgao// 18630fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION 0x03 18730fdf1140b8d1ce93f3821d986fa165552023440lgao 18830fdf1140b8d1ce93f3821d986fa165552023440lgao// 18930fdf1140b8d1ce93f3821d986fa165552023440lgao// Fixed ACPI Description Table Boot Architecture Flags 19030fdf1140b8d1ce93f3821d986fa165552023440lgao// All other bits are reserved and must be set to 0. 19130fdf1140b8d1ce93f3821d986fa165552023440lgao// 19230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_LEGACY_DEVICES (1 << 0) 19330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_8042 (1 << 1) 19430fdf1140b8d1ce93f3821d986fa165552023440lgao 19530fdf1140b8d1ce93f3821d986fa165552023440lgao// 19630fdf1140b8d1ce93f3821d986fa165552023440lgao// Fixed ACPI Description Table Fixed Feature Flags 19730fdf1140b8d1ce93f3821d986fa165552023440lgao// All other bits are reserved and must be set to 0. 19830fdf1140b8d1ce93f3821d986fa165552023440lgao// 19930fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_WBINVD (1 << 0) 20030fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_WBINVD_FLUSH (1 << 1) 20130fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PROC_C1 (1 << 2) 20230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_P_LVL2_UP (1 << 3) 20330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PWR_BUTTON (1 << 4) 20430fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SLP_BUTTON (1 << 5) 20530fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_FIX_RTC (1 << 6) 20630fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_RTC_S4 (1 << 7) 20730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_TMR_VAL_EXT (1 << 8) 20830fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_DCK_CAP (1 << 9) 20930fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_RESET_REG_SUP (1 << 10) 21030fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SEALED_CASE (1 << 11) 21130fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_HEADLESS (1 << 12) 21230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_CPU_SW_SLP (1 << 13) 21330fdf1140b8d1ce93f3821d986fa165552023440lgao 21430fdf1140b8d1ce93f3821d986fa165552023440lgao// 21530fdf1140b8d1ce93f3821d986fa165552023440lgao// Firmware ACPI Control Structure 21630fdf1140b8d1ce93f3821d986fa165552023440lgao// 21730fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 21830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Signature; 21930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Length; 22030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 HardwareSignature; 22130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 FirmwareWakingVector; 22230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 GlobalLock; 22330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Flags; 22430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 XFirmwareWakingVector; 22530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Version; 22630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved[31]; 22730fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_FIRMWARE_ACPI_CONTROL_STRUCTURE; 22830fdf1140b8d1ce93f3821d986fa165552023440lgao 22930fdf1140b8d1ce93f3821d986fa165552023440lgao// 23030fdf1140b8d1ce93f3821d986fa165552023440lgao// FACS Version (as defined in ACPI 2.0 spec.) 23130fdf1140b8d1ce93f3821d986fa165552023440lgao// 23230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_FIRMWARE_ACPI_CONTROL_STRUCTURE_VERSION 0x01 23330fdf1140b8d1ce93f3821d986fa165552023440lgao 23430fdf1140b8d1ce93f3821d986fa165552023440lgao// 23530fdf1140b8d1ce93f3821d986fa165552023440lgao// Firmware Control Structure Feature Flags 23630fdf1140b8d1ce93f3821d986fa165552023440lgao// All other bits are reserved and must be set to 0. 23730fdf1140b8d1ce93f3821d986fa165552023440lgao// 23830fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_S4BIOS_F (1 << 0) 23930fdf1140b8d1ce93f3821d986fa165552023440lgao 24030fdf1140b8d1ce93f3821d986fa165552023440lgao// 24130fdf1140b8d1ce93f3821d986fa165552023440lgao// Multiple APIC Description Table header definition. The rest of the table 24230fdf1140b8d1ce93f3821d986fa165552023440lgao// must be defined in a platform specific manner. 24330fdf1140b8d1ce93f3821d986fa165552023440lgao// 24430fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 24530fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_DESCRIPTION_HEADER Header; 24630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 LocalApicAddress; 24730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Flags; 24830fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_MULTIPLE_APIC_DESCRIPTION_TABLE_HEADER; 24930fdf1140b8d1ce93f3821d986fa165552023440lgao 25030fdf1140b8d1ce93f3821d986fa165552023440lgao// 25130fdf1140b8d1ce93f3821d986fa165552023440lgao// MADT Revision (as defined in ACPI 2.0 spec.) 25230fdf1140b8d1ce93f3821d986fa165552023440lgao// 25330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_MULTIPLE_APIC_DESCRIPTION_TABLE_REVISION 0x01 25430fdf1140b8d1ce93f3821d986fa165552023440lgao 25530fdf1140b8d1ce93f3821d986fa165552023440lgao// 25630fdf1140b8d1ce93f3821d986fa165552023440lgao// Multiple APIC Flags 25730fdf1140b8d1ce93f3821d986fa165552023440lgao// All other bits are reserved and must be set to 0. 25830fdf1140b8d1ce93f3821d986fa165552023440lgao// 25930fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PCAT_COMPAT (1 << 0) 26030fdf1140b8d1ce93f3821d986fa165552023440lgao 26130fdf1140b8d1ce93f3821d986fa165552023440lgao// 26230fdf1140b8d1ce93f3821d986fa165552023440lgao// Multiple APIC Description Table APIC structure types 26330fdf1140b8d1ce93f3821d986fa165552023440lgao// All other values between 0x09 an 0xFF are reserved and 26430fdf1140b8d1ce93f3821d986fa165552023440lgao// will be ignored by OSPM. 26530fdf1140b8d1ce93f3821d986fa165552023440lgao// 26630fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PROCESSOR_LOCAL_APIC 0x00 26730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_IO_APIC 0x01 26830fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_INTERRUPT_SOURCE_OVERRIDE 0x02 26930fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_NON_MASKABLE_INTERRUPT_SOURCE 0x03 27030fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_LOCAL_APIC_NMI 0x04 27130fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_LOCAL_APIC_ADDRESS_OVERRIDE 0x05 27230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_IO_SAPIC 0x06 27330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PROCESSOR_LOCAL_SAPIC 0x07 27430fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PLATFORM_INTERRUPT_SOURCES 0x08 27530fdf1140b8d1ce93f3821d986fa165552023440lgao 27630fdf1140b8d1ce93f3821d986fa165552023440lgao// 27730fdf1140b8d1ce93f3821d986fa165552023440lgao// APIC Structure Definitions 27830fdf1140b8d1ce93f3821d986fa165552023440lgao// 27930fdf1140b8d1ce93f3821d986fa165552023440lgao// 28030fdf1140b8d1ce93f3821d986fa165552023440lgao// Processor Local APIC Structure Definition 28130fdf1140b8d1ce93f3821d986fa165552023440lgao// 28230fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 28330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 28430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 28530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 AcpiProcessorId; 28630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 ApicId; 28730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Flags; 28830fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_PROCESSOR_LOCAL_APIC_STRUCTURE; 28930fdf1140b8d1ce93f3821d986fa165552023440lgao 29030fdf1140b8d1ce93f3821d986fa165552023440lgao// 29130fdf1140b8d1ce93f3821d986fa165552023440lgao// Local APIC Flags. All other bits are reserved and must be 0. 29230fdf1140b8d1ce93f3821d986fa165552023440lgao// 29330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_LOCAL_APIC_ENABLED (1 << 0) 29430fdf1140b8d1ce93f3821d986fa165552023440lgao 29530fdf1140b8d1ce93f3821d986fa165552023440lgao// 29630fdf1140b8d1ce93f3821d986fa165552023440lgao// IO APIC Structure 29730fdf1140b8d1ce93f3821d986fa165552023440lgao// 29830fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 29930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 30030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 30130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 IoApicId; 30230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved; 30330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 IoApicAddress; 30430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 GlobalSystemInterruptBase; 30530fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_IO_APIC_STRUCTURE; 30630fdf1140b8d1ce93f3821d986fa165552023440lgao 30730fdf1140b8d1ce93f3821d986fa165552023440lgao// 30830fdf1140b8d1ce93f3821d986fa165552023440lgao// Interrupt Source Override Structure 30930fdf1140b8d1ce93f3821d986fa165552023440lgao// 31030fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 31130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 31230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 31330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Bus; 31430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Source; 31530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 GlobalSystemInterrupt; 31630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 Flags; 31730fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_INTERRUPT_SOURCE_OVERRIDE_STRUCTURE; 31830fdf1140b8d1ce93f3821d986fa165552023440lgao 31930fdf1140b8d1ce93f3821d986fa165552023440lgao// 32030fdf1140b8d1ce93f3821d986fa165552023440lgao// Non-Maskable Interrupt Source Structure 32130fdf1140b8d1ce93f3821d986fa165552023440lgao// 32230fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 32330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 32430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 32530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 Flags; 32630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 GlobalSystemInterrupt; 32730fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_NON_MASKABLE_INTERRUPT_SOURCE_STRUCTURE; 32830fdf1140b8d1ce93f3821d986fa165552023440lgao 32930fdf1140b8d1ce93f3821d986fa165552023440lgao// 33030fdf1140b8d1ce93f3821d986fa165552023440lgao// Local APIC NMI Structure 33130fdf1140b8d1ce93f3821d986fa165552023440lgao// 33230fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 33330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 33430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 33530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 AcpiProcessorId; 33630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 Flags; 33730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 LocalApicLint; 33830fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_LOCAL_APIC_NMI_STRUCTURE; 33930fdf1140b8d1ce93f3821d986fa165552023440lgao 34030fdf1140b8d1ce93f3821d986fa165552023440lgao// 34130fdf1140b8d1ce93f3821d986fa165552023440lgao// Local APIC Address Override Structure 34230fdf1140b8d1ce93f3821d986fa165552023440lgao// 34330fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 34430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 34530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 34630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 Reserved; 34730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 LocalApicAddress; 34830fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_LOCAL_APIC_ADDRESS_OVERRIDE_STRUCTURE; 34930fdf1140b8d1ce93f3821d986fa165552023440lgao 35030fdf1140b8d1ce93f3821d986fa165552023440lgao// 35130fdf1140b8d1ce93f3821d986fa165552023440lgao// IO SAPIC Structure 35230fdf1140b8d1ce93f3821d986fa165552023440lgao// 35330fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 35430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 35530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 35630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 IoApicId; 35730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved; 35830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 GlobalSystemInterruptBase; 35930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT64 IoSapicAddress; 36030fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_IO_SAPIC_STRUCTURE; 36130fdf1140b8d1ce93f3821d986fa165552023440lgao 36230fdf1140b8d1ce93f3821d986fa165552023440lgao// 36330fdf1140b8d1ce93f3821d986fa165552023440lgao// Local SAPIC Structure 36430fdf1140b8d1ce93f3821d986fa165552023440lgao// 36530fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 36630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 36730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 36830fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 AcpiProcessorId; 36930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 LocalSapicId; 37030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 LocalSapicEid; 37130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Reserved[3]; 37230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Flags; 37330fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_PROCESSOR_LOCAL_SAPIC_STRUCTURE; 37430fdf1140b8d1ce93f3821d986fa165552023440lgao 37530fdf1140b8d1ce93f3821d986fa165552023440lgao// 37630fdf1140b8d1ce93f3821d986fa165552023440lgao// Platform Interrupt Sources Structure 37730fdf1140b8d1ce93f3821d986fa165552023440lgao// 37830fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 37930fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Type; 38030fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 Length; 38130fdf1140b8d1ce93f3821d986fa165552023440lgao UINT16 Flags; 38230fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 InterruptType; 38330fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 ProcessorId; 38430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 ProcessorEid; 38530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 IoSapicVector; 38630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 GlobalSystemInterrupt; 38730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Reserved; 38830fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_PLATFORM_INTERRUPT_SOURCES_STRUCTURE; 38930fdf1140b8d1ce93f3821d986fa165552023440lgao 39030fdf1140b8d1ce93f3821d986fa165552023440lgao// 39130fdf1140b8d1ce93f3821d986fa165552023440lgao// Smart Battery Description Table (SBST) 39230fdf1140b8d1ce93f3821d986fa165552023440lgao// 39330fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 39430fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_DESCRIPTION_HEADER Header; 39530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 WarningEnergyLevel; 39630fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 LowEnergyLevel; 39730fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 CriticalEnergyLevel; 39830fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_SMART_BATTERY_DESCRIPTION_TABLE; 39930fdf1140b8d1ce93f3821d986fa165552023440lgao 40030fdf1140b8d1ce93f3821d986fa165552023440lgao// 40130fdf1140b8d1ce93f3821d986fa165552023440lgao// SBST Version (as defined in ACPI 2.0 spec.) 40230fdf1140b8d1ce93f3821d986fa165552023440lgao// 40330fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SMART_BATTERY_DESCRIPTION_TABLE_REVISION 0x01 40430fdf1140b8d1ce93f3821d986fa165552023440lgao 40530fdf1140b8d1ce93f3821d986fa165552023440lgao// 40630fdf1140b8d1ce93f3821d986fa165552023440lgao// Embedded Controller Boot Resources Table (ECDT) 40730fdf1140b8d1ce93f3821d986fa165552023440lgao// The table is followed by a null terminated ASCII string that contains 40830fdf1140b8d1ce93f3821d986fa165552023440lgao// a fully qualified reference to the name space object. 40930fdf1140b8d1ce93f3821d986fa165552023440lgao// 41030fdf1140b8d1ce93f3821d986fa165552023440lgaotypedef struct { 41130fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_DESCRIPTION_HEADER Header; 41230fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE EcControl; 41330fdf1140b8d1ce93f3821d986fa165552023440lgao EFI_ACPI_2_0_GENERIC_ADDRESS_STRUCTURE EcData; 41430fdf1140b8d1ce93f3821d986fa165552023440lgao UINT32 Uid; 41530fdf1140b8d1ce93f3821d986fa165552023440lgao UINT8 GpeBit; 41630fdf1140b8d1ce93f3821d986fa165552023440lgao} EFI_ACPI_2_0_EMBEDDED_CONTROLLER_BOOT_RESOURCES_TABLE; 41730fdf1140b8d1ce93f3821d986fa165552023440lgao 41830fdf1140b8d1ce93f3821d986fa165552023440lgao// 41930fdf1140b8d1ce93f3821d986fa165552023440lgao// ECDT Version (as defined in ACPI 2.0 spec.) 42030fdf1140b8d1ce93f3821d986fa165552023440lgao// 42130fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_EMBEDDED_CONTROLLER_BOOT_RESOURCES_TABLE_REVISION 0x01 42230fdf1140b8d1ce93f3821d986fa165552023440lgao 42330fdf1140b8d1ce93f3821d986fa165552023440lgao// 42430fdf1140b8d1ce93f3821d986fa165552023440lgao// Known table signatures 42530fdf1140b8d1ce93f3821d986fa165552023440lgao// 42630fdf1140b8d1ce93f3821d986fa165552023440lgao// 42730fdf1140b8d1ce93f3821d986fa165552023440lgao// "RSD PTR " Root System Description Pointer 42830fdf1140b8d1ce93f3821d986fa165552023440lgao// 42930fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_POINTER_SIGNATURE 0x2052545020445352 43030fdf1140b8d1ce93f3821d986fa165552023440lgao 43130fdf1140b8d1ce93f3821d986fa165552023440lgao// 43230fdf1140b8d1ce93f3821d986fa165552023440lgao// "SPIC" Multiple SAPIC Description Table 43330fdf1140b8d1ce93f3821d986fa165552023440lgao// 43430fdf1140b8d1ce93f3821d986fa165552023440lgao// BUGBUG: Don't know where this came from except SR870BN4 uses it. 43530fdf1140b8d1ce93f3821d986fa165552023440lgao// #define EFI_ACPI_2_0_MULTIPLE_SAPIC_DESCRIPTION_TABLE_SIGNATURE 0x43495053 43630fdf1140b8d1ce93f3821d986fa165552023440lgao// 43730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_MULTIPLE_SAPIC_DESCRIPTION_TABLE_SIGNATURE 0x43495041 43830fdf1140b8d1ce93f3821d986fa165552023440lgao 43930fdf1140b8d1ce93f3821d986fa165552023440lgao// 44030fdf1140b8d1ce93f3821d986fa165552023440lgao// "BOOT" MS Simple Boot Spec 44130fdf1140b8d1ce93f3821d986fa165552023440lgao// 44230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SIMPLE_BOOT_FLAG_TABLE_SIGNATURE 0x544F4F42 44330fdf1140b8d1ce93f3821d986fa165552023440lgao 44430fdf1140b8d1ce93f3821d986fa165552023440lgao// 44530fdf1140b8d1ce93f3821d986fa165552023440lgao// "DBGP" MS Bebug Port Spec 44630fdf1140b8d1ce93f3821d986fa165552023440lgao// 44730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_DEBUG_PORT_TABLE_SIGNATURE 0x50474244 44830fdf1140b8d1ce93f3821d986fa165552023440lgao 44930fdf1140b8d1ce93f3821d986fa165552023440lgao// 45030fdf1140b8d1ce93f3821d986fa165552023440lgao// "DSDT" Differentiated System Description Table 45130fdf1140b8d1ce93f3821d986fa165552023440lgao// 45230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_DIFFERENTIATED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE 0x54445344 45330fdf1140b8d1ce93f3821d986fa165552023440lgao 45430fdf1140b8d1ce93f3821d986fa165552023440lgao// 45530fdf1140b8d1ce93f3821d986fa165552023440lgao// "ECDT" Embedded Controller Boot Resources Table 45630fdf1140b8d1ce93f3821d986fa165552023440lgao// 45730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_EMBEDDED_CONTROLLER_BOOT_RESOURCES_TABLE_SIGNATURE 0x54444345 45830fdf1140b8d1ce93f3821d986fa165552023440lgao 45930fdf1140b8d1ce93f3821d986fa165552023440lgao// 46030fdf1140b8d1ce93f3821d986fa165552023440lgao// "ETDT" Event Timer Description Table 46130fdf1140b8d1ce93f3821d986fa165552023440lgao// 46230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_EVENT_TIMER_DESCRIPTION_TABLE_SIGNATURE 0x54445445 46330fdf1140b8d1ce93f3821d986fa165552023440lgao 46430fdf1140b8d1ce93f3821d986fa165552023440lgao// 46530fdf1140b8d1ce93f3821d986fa165552023440lgao// "FACS" Firmware ACPI Control Structure 46630fdf1140b8d1ce93f3821d986fa165552023440lgao// 46730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_FIRMWARE_ACPI_CONTROL_STRUCTURE_SIGNATURE 0x53434146 46830fdf1140b8d1ce93f3821d986fa165552023440lgao 46930fdf1140b8d1ce93f3821d986fa165552023440lgao// 47030fdf1140b8d1ce93f3821d986fa165552023440lgao// "FACP" Fixed ACPI Description Table 47130fdf1140b8d1ce93f3821d986fa165552023440lgao// 47230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE 0x50434146 47330fdf1140b8d1ce93f3821d986fa165552023440lgao 47430fdf1140b8d1ce93f3821d986fa165552023440lgao// 47530fdf1140b8d1ce93f3821d986fa165552023440lgao// "APIC" Multiple APIC Description Table 47630fdf1140b8d1ce93f3821d986fa165552023440lgao// 47730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_MULTIPLE_APIC_DESCRIPTION_TABLE_SIGNATURE 0x43495041 47830fdf1140b8d1ce93f3821d986fa165552023440lgao 47930fdf1140b8d1ce93f3821d986fa165552023440lgao// 48030fdf1140b8d1ce93f3821d986fa165552023440lgao// "PSDT" Persistent System Description Table 48130fdf1140b8d1ce93f3821d986fa165552023440lgao// 48230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_PERSISTENT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE 0x54445350 48330fdf1140b8d1ce93f3821d986fa165552023440lgao 48430fdf1140b8d1ce93f3821d986fa165552023440lgao// 48530fdf1140b8d1ce93f3821d986fa165552023440lgao// "RSDT" Root System Description Table 48630fdf1140b8d1ce93f3821d986fa165552023440lgao// 48730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_ROOT_SYSTEM_DESCRIPTION_TABLE_SIGNATURE 0x54445352 48830fdf1140b8d1ce93f3821d986fa165552023440lgao 48930fdf1140b8d1ce93f3821d986fa165552023440lgao// 49030fdf1140b8d1ce93f3821d986fa165552023440lgao// "SBST" Smart Battery Specification Table 49130fdf1140b8d1ce93f3821d986fa165552023440lgao// 49230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SMART_BATTERY_SPECIFICATION_TABLE_SIGNATURE 0x54534253 49330fdf1140b8d1ce93f3821d986fa165552023440lgao 49430fdf1140b8d1ce93f3821d986fa165552023440lgao// 49530fdf1140b8d1ce93f3821d986fa165552023440lgao// "SLIT" System Locality Information Table 49630fdf1140b8d1ce93f3821d986fa165552023440lgao// 49730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SYSTEM_LOCALITY_INFORMATION_TABLE_SIGNATURE 0x54494C53 49830fdf1140b8d1ce93f3821d986fa165552023440lgao 49930fdf1140b8d1ce93f3821d986fa165552023440lgao// 50030fdf1140b8d1ce93f3821d986fa165552023440lgao// "SPCR" Serial Port Concole Redirection Table 50130fdf1140b8d1ce93f3821d986fa165552023440lgao// 50230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_SIGNATURE 0x52435053 50330fdf1140b8d1ce93f3821d986fa165552023440lgao 50430fdf1140b8d1ce93f3821d986fa165552023440lgao// 50530fdf1140b8d1ce93f3821d986fa165552023440lgao// "SRAT" Static Resource Affinity Table 50630fdf1140b8d1ce93f3821d986fa165552023440lgao// 50730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_STATIC_RESOURCE_AFFINITY_TABLE_SIGNATURE 0x54415253 50830fdf1140b8d1ce93f3821d986fa165552023440lgao 50930fdf1140b8d1ce93f3821d986fa165552023440lgao// 51030fdf1140b8d1ce93f3821d986fa165552023440lgao// "SSDT" Secondary System Description Table 51130fdf1140b8d1ce93f3821d986fa165552023440lgao// 51230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SECONDARY_SYSTEM_DESCRIPTION_TABLE_SIGNATURE 0x54445353 51330fdf1140b8d1ce93f3821d986fa165552023440lgao 51430fdf1140b8d1ce93f3821d986fa165552023440lgao// 51530fdf1140b8d1ce93f3821d986fa165552023440lgao// "SPMI" Server Platform Management Interface Table 51630fdf1140b8d1ce93f3821d986fa165552023440lgao// 51730fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_SERVER_PLATFORM_MANAGEMENT_INTERFACE_SIGNATURE 0x494D5053 51830fdf1140b8d1ce93f3821d986fa165552023440lgao 51930fdf1140b8d1ce93f3821d986fa165552023440lgao// 52030fdf1140b8d1ce93f3821d986fa165552023440lgao// "XSDT" Extended System Description Table 52130fdf1140b8d1ce93f3821d986fa165552023440lgao// 52230fdf1140b8d1ce93f3821d986fa165552023440lgao#define EFI_ACPI_2_0_EXTENDED_SYSTEM_DESCRIPTION_TABLE_SIGNATURE 0x54445358 52330fdf1140b8d1ce93f3821d986fa165552023440lgao 52430fdf1140b8d1ce93f3821d986fa165552023440lgao#pragma pack() 52530fdf1140b8d1ce93f3821d986fa165552023440lgao 52630fdf1140b8d1ce93f3821d986fa165552023440lgao#endif 527