Home | History | Annotate | Download | only in Include
      1 /*++
      2 
      3   Copyright (c) 2004  - 2014, Intel Corporation. All rights reserved.<BR>
      4 
      5   This program and the accompanying materials are licensed and made available under
      7   the terms and conditions of the BSD License that accompanies this distribution.
      9   The full text of the license may be found at
     11   http://opensource.org/licenses/bsd-license.php.
     13 
     15   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     17   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     19 
     21 
     23 Module Name:
     24 
     25   McfgTable.h
     26 
     27 Abstract:
     28 
     29   ACPI Memory mapped configuration space base address Description Table
     30   definition, based on PCI Firmware Specification Revision 3.0 final draft,
     31   downloadable at http://www.pcisig.com/home
     32 
     33 **/
     34 
     35 #ifndef _MCFG_TABLE_H_
     36 #define _MCFG_TABLE_H_
     37 
     38 //
     39 // Include files
     40 //
     41 #include <PiDxe.h>
     42 
     43 //
     44 // Ensure proper structure formats
     45 //
     46 #pragma pack(1)
     47 
     48 //
     49 // MCFG Revision (defined in spec)
     50 //
     51 #define EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_BASE_ADDRESS_TABLE_REVISION  0x01
     52 
     53 //
     54 // MCFG Structure Definitions
     55 //
     56 //
     57 // Memory Mapped Enhanced Configuration Base Address Allocation
     58 // Structure Definition
     59 //
     60 typedef struct {
     61   UINT64  BaseAddress;
     62   UINT16  PciSegmentGroupNumber;
     63   UINT8   StartBusNumber;
     64   UINT8   EndBusNumber;
     65   UINT32  Reserved;
     66 } EFI_ACPI_MEMORY_MAPPED_ENHANCED_CONFIGURATION_BASE_ADDRESS_STRUCTURE;
     67 
     68 //
     69 // MCFG Table header definition.  The rest of the table
     70 // must be defined in a platform specific manner.
     71 //
     72 typedef struct {
     73   EFI_ACPI_DESCRIPTION_HEADER Header;
     74   UINT64                      Reserved;
     75 } EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_BASE_ADDRESS_TABLE_HEADER;
     76 
     77 #pragma pack()
     78 
     79 #endif // _MCFG_TABLE_H
     80