Home | History | Annotate | Download | only in Common
      1 /** @file
      2   This library provides support for various platform-specific DXE drivers.
      3 
      4   Copyright (c) 2014 - 2015, AMD Inc. All rights reserved.<BR>
      5 
      6   This program and the accompanying materials
      7   are licensed and made available under the terms and conditions of the BSD License
      8   which accompanies this distribution.  The full text of the license may be found at
      9   http://opensource.org/licenses/bsd-license.php
     10 
     11   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     12   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     13 
     14 **/
     15 
     16 #ifndef _AMDSTYX_ACPI_LIB_H_
     17 #define _AMDSTYX_ACPI_LIB_H_
     18 
     19 #include <IndustryStandard/Acpi.h>
     20 
     21 EFI_ACPI_DESCRIPTION_HEADER *FadtTable (void);
     22 EFI_ACPI_DESCRIPTION_HEADER *FacsTable (void);
     23 EFI_ACPI_DESCRIPTION_HEADER *MadtHeader (void);
     24 EFI_ACPI_DESCRIPTION_HEADER *GtdtHeader (void);
     25 EFI_ACPI_DESCRIPTION_HEADER *DsdtHeader (void);
     26 EFI_ACPI_DESCRIPTION_HEADER *McfgHeader (void);
     27 EFI_ACPI_DESCRIPTION_HEADER *Dbg2Header (void);
     28 EFI_ACPI_DESCRIPTION_HEADER *SpcrHeader (void);
     29 EFI_ACPI_DESCRIPTION_HEADER *CsrtHeader (void);
     30 
     31 #define EFI_ACPI_AMD_OEM_ID_ARRAY        {'A','M','D','I','N','C'}
     32 #define EFI_ACPI_AMD_OEM_TABLE_ID        SIGNATURE_64('S','E','A','T','T','L','E',' ')
     33 #define EFI_ACPI_AMD_OEM_REVISION        0
     34 #define EFI_ACPI_AMD_CREATOR_ID          SIGNATURE_32('A','M','D',' ')
     35 #define EFI_ACPI_AMD_CREATOR_REVISION    0
     36 
     37 /**
     38  * A macro to initialize the common header part of EFI ACPI tables
     39  * as defined by EFI_ACPI_DESCRIPTION_HEADER structure.
     40  **/
     41 #define AMD_ACPI_HEADER(sign, type, rev) {                      \
     42   sign,                           /* UINT32  Signature */       \
     43   sizeof (type),                  /* UINT32  Length */          \
     44   rev,                            /* UINT8   Revision */        \
     45   0,                              /* UINT8   Checksum */        \
     46   EFI_ACPI_AMD_OEM_ID_ARRAY,      /* UINT8   OemId[6] */        \
     47   EFI_ACPI_AMD_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
     48   EFI_ACPI_AMD_OEM_REVISION,      /* UINT32  OemRevision */     \
     49   EFI_ACPI_AMD_CREATOR_ID,        /* UINT32  CreatorId */       \
     50   EFI_ACPI_AMD_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
     51   }
     52 
     53 #define NULL_GAS               {EFI_ACPI_5_1_SYSTEM_MEMORY,  0, 0, EFI_ACPI_5_1_UNDEFINED, 0L}
     54 #define AMD_GAS8(address)      {EFI_ACPI_5_1_SYSTEM_MEMORY,  8, 0, EFI_ACPI_5_1_BYTE,      address}
     55 #define AMD_GAS16(address)     {EFI_ACPI_5_1_SYSTEM_MEMORY, 16, 0, EFI_ACPI_5_1_WORD,      address}
     56 #define AMD_GAS32(address)     {EFI_ACPI_5_1_SYSTEM_MEMORY, 32, 0, EFI_ACPI_5_1_DWORD,     address}
     57 #define AMD_GAS64(address)     {EFI_ACPI_5_1_SYSTEM_MEMORY, 64, 0, EFI_ACPI_5_1_QWORD,     address}
     58 #define AMD_GASN(address)      AMD_GAS32(address)
     59 
     60 #endif // _AMDSTYX_ACPI_LIB_H_
     61 
     62