]>
Commit | Line | Data |
---|---|---|
3399d5be OM |
1 | /** @file\r |
2 | * Fixed ACPI Description Table (FADT)\r | |
3 | *\r | |
4 | * Copyright (c) 2012 - 2014, ARM Limited. All rights reserved.\r | |
5 | *\r | |
6 | * This program and the accompanying materials\r | |
7 | * are licensed and made available under the terms and conditions of the BSD License\r | |
8 | * which accompanies this distribution. The full text of the license may be found at\r | |
9 | * http://opensource.org/licenses/bsd-license.php\r | |
10 | *\r | |
11 | * THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r | |
12 | * WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r | |
13 | *\r | |
14 | **/\r | |
15 | \r | |
16 | #include "ArmPlatform.h"\r | |
17 | #include <Library/AcpiLib.h>\r | |
18 | #include <IndustryStandard/Acpi.h>\r | |
19 | \r | |
2596e61a | 20 | #ifdef ARM_JUNO_ACPI_5_0\r |
3399d5be OM |
21 | EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE Fadt = {\r |
22 | ARM_ACPI_HEADER (\r | |
23 | EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,\r | |
24 | EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE,\r | |
25 | EFI_ACPI_5_0_FIXED_ACPI_DESCRIPTION_TABLE_REVISION\r | |
26 | ),\r | |
2596e61a OM |
27 | #else\r |
28 | EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE Fadt = {\r | |
29 | ARM_ACPI_HEADER (\r | |
30 | EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,\r | |
31 | EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE,\r | |
32 | EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_REVISION\r | |
33 | ),\r | |
34 | #endif\r | |
3399d5be OM |
35 | 0, // UINT32 FirmwareCtrl\r |
36 | 0, // UINT32 Dsdt\r | |
37 | EFI_ACPI_RESERVED_BYTE, // UINT8 Reserved0\r | |
38 | EFI_ACPI_5_0_PM_PROFILE_UNSPECIFIED, // UINT8 PreferredPmProfile\r | |
39 | 0, // UINT16 SciInt\r | |
40 | 0, // UINT32 SmiCmd\r | |
41 | 0, // UINT8 AcpiEnable\r | |
42 | 0, // UINT8 AcpiDisable\r | |
43 | 0, // UINT8 S4BiosReq\r | |
44 | 0, // UINT8 PstateCnt\r | |
45 | 0, // UINT32 Pm1aEvtBlk\r | |
46 | 0, // UINT32 Pm1bEvtBlk\r | |
47 | 0, // UINT32 Pm1aCntBlk\r | |
48 | 0, // UINT32 Pm1bCntBlk\r | |
49 | 0, // UINT32 Pm2CntBlk\r | |
50 | 0, // UINT32 PmTmrBlk\r | |
51 | 0, // UINT32 Gpe0Blk\r | |
52 | 0, // UINT32 Gpe1Blk\r | |
53 | 0, // UINT8 Pm1EvtLen\r | |
54 | 0, // UINT8 Pm1CntLen\r | |
55 | 0, // UINT8 Pm2CntLen\r | |
56 | 0, // UINT8 PmTmrLen\r | |
57 | 0, // UINT8 Gpe0BlkLen\r | |
58 | 0, // UINT8 Gpe1BlkLen\r | |
59 | 0, // UINT8 Gpe1Base\r | |
60 | 0, // UINT8 CstCnt\r | |
61 | 0, // UINT16 PLvl2Lat\r | |
62 | 0, // UINT16 PLvl3Lat\r | |
63 | 0, // UINT16 FlushSize\r | |
64 | 0, // UINT16 FlushStride\r | |
65 | 0, // UINT8 DutyOffset\r | |
66 | 0, // UINT8 DutyWidth\r | |
67 | 0, // UINT8 DayAlrm\r | |
68 | 0, // UINT8 MonAlrm\r | |
69 | 0, // UINT8 Century\r | |
70 | 0, // UINT16 IaPcBootArch\r | |
71 | 0, // UINT8 Reserved1\r | |
72 | EFI_ACPI_5_0_HW_REDUCED_ACPI | EFI_ACPI_5_0_LOW_POWER_S0_IDLE_CAPABLE, // UINT32 Flags\r | |
73 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE ResetReg\r | |
74 | 0, // UINT8 ResetValue\r | |
2596e61a | 75 | #if ARM_JUNO_ACPI_5_0\r |
3399d5be | 76 | {EFI_ACPI_RESERVED_BYTE,EFI_ACPI_RESERVED_BYTE,EFI_ACPI_RESERVED_BYTE}, // UINT8 Reserved2[3]\r |
2596e61a OM |
77 | #else\r |
78 | EFI_ACPI_5_1_ARM_PSCI_COMPLIANT, // UINT16 ArmBootArchFlags\r | |
79 | EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_MINOR_REVISION, // UINT8 MinorRevision\r | |
80 | #endif\r | |
3399d5be OM |
81 | 0, // UINT64 XFirmwareCtrl\r |
82 | 0, // UINT64 XDsdt\r | |
83 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XPm1aEvtBlk\r | |
84 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XPm1bEvtBlk\r | |
85 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XPm1aCntBlk\r | |
86 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XPm1bCntBlk\r | |
87 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XPm2CntBlk\r | |
88 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XPmTmrBlk\r | |
89 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XGpe0Blk\r | |
90 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE XGpe1Blk\r | |
91 | NULL_GAS, // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE SleepControlReg\r | |
92 | NULL_GAS // EFI_ACPI_5_0_GENERIC_ADDRESS_STRUCTURE SleepStatusReg\r | |
93 | };\r | |
94 | \r | |
9bdf791f AB |
95 | //\r |
96 | // Reference the table being generated to prevent the optimizer from removing the\r | |
97 | // data structure from the executable\r | |
98 | //\r | |
99 | VOID* CONST ReferenceAcpiTable = &Fadt;\r |