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