1/** @file
2
3  Fixed ACPI Description Table (FADT)
4
5  Copyright (c) 2012 - 2014, ARM Ltd. All rights reserved.<BR>
6  Copyright (c) 2014 - 2016, AMD Inc. All rights reserved.<BR>
7
8  SPDX-License-Identifier: BSD-2-Clause-Patent
9
10**/
11/**
12
13  Derived from:
14   ArmPlatformPkg/ArmJunoPkg/AcpiTables/Fadt.aslc
15
16**/
17
18#include "AcpiPlatform.h"
19
20#define FADT_FLAGS          ( EFI_ACPI_5_1_HW_REDUCED_ACPI |           \
21                              EFI_ACPI_5_1_LOW_POWER_S0_IDLE_CAPABLE | \
22                              EFI_ACPI_5_1_HEADLESS )
23
24#pragma pack(push, 1)
25
26STATIC EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE AcpiFadt = {
27    AMD_ACPI_HEADER (EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_SIGNATURE,
28                     EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE,
29                     EFI_ACPI_5_1_FIXED_ACPI_DESCRIPTION_TABLE_REVISION),
30  0,                                                                        // UINT32     FirmwareCtrl
31  0,                                                                        // UINT32     Dsdt
32  EFI_ACPI_RESERVED_BYTE,                                                   // UINT8      Reserved0
33  EFI_ACPI_5_1_PM_PROFILE_ENTERPRISE_SERVER,                                // UINT8      PreferredPmProfile
34  0,                                                                        // UINT16     SciInt
35  0,                                                                        // UINT32     SmiCmd
36  0,                                                                        // UINT8      AcpiEnable
37  0,                                                                        // UINT8      AcpiDisable
38  0,                                                                        // UINT8      S4BiosReq
39  0,                                                                        // UINT8      PstateCnt
40  0,                                                                        // UINT32     Pm1aEvtBlk
41  0,                                                                        // UINT32     Pm1bEvtBlk
42  0,                                                                        // UINT32     Pm1aCntBlk
43  0,                                                                        // UINT32     Pm1bCntBlk
44  0,                                                                        // UINT32     Pm2CntBlk
45  0,                                                                        // UINT32     PmTmrBlk
46  0,                                                                        // UINT32     Gpe0Blk
47  0,                                                                        // UINT32     Gpe1Blk
48  0,                                                                        // UINT8      Pm1EvtLen
49  0,                                                                        // UINT8      Pm1CntLen
50  0,                                                                        // UINT8      Pm2CntLen
51  0,                                                                        // UINT8      PmTmrLen
52  0,                                                                        // UINT8      Gpe0BlkLen
53  0,                                                                        // UINT8      Gpe1BlkLen
54  0,                                                                        // UINT8      Gpe1Base
55  0,                                                                        // UINT8      CstCnt
56  0,                                                                        // UINT16     PLvl2Lat
57  0,                                                                        // UINT16     PLvl3Lat
58  0,                                                                        // UINT16     FlushSize
59  0,                                                                        // UINT16     FlushStride
60  0,                                                                        // UINT8      DutyOffset
61  0,                                                                        // UINT8      DutyWidth
62  0,                                                                        // UINT8      DayAlrm
63  0,                                                                        // UINT8      MonAlrm
64  0,                                                                        // UINT8      Century
65  0,                                                                        // UINT16     IaPcBootArch
66  0,                                                                        // UINT8      Reserved1
67  FADT_FLAGS,                                                               // UINT32     Flags
68  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  ResetReg
69  0,                                                                        // UINT8      ResetValue
70  EFI_ACPI_5_1_ARM_PSCI_COMPLIANT,                                          // UINT16     ArmBootArch
71  1,                                                                        // UINT8      MinorVersion
72  0,                                                                        // UINT64     XFirmwareCtrl
73  0,                                                                        // UINT64     XDsdt
74  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XPm1aEvtBlk
75  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XPm1bEvtBlk
76  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XPm1aCntBlk
77  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XPm1bCntBlk
78  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XPm2CntBlk
79  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XPmTmrBlk
80  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XGpe0Blk
81  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  XGpe1Blk
82  NULL_GAS,                                                                 // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  SleepControlReg
83  NULL_GAS                                                                  // EFI_ACPI_5_1_GENERIC_ADDRESS_STRUCTURE  SleepStatusReg
84};
85
86#pragma pack(pop)
87
88VOID* CONST ReferenceAcpiTable = &AcpiFadt;
89