Home | History | Annotate | Download | only in IndustryStandard
      1 /** @file
      2   ACPI memory mapped configuration space access table definition, defined at
      3   in the PCI Firmware Specification, version 3.0 draft version 0.5.
      4   Specification is available at http://www.pcisig.com.
      5 
      6   Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
      7 
      8   This program and the accompanying materials are licensed and made available
      9   under the terms and conditions of the BSD License which accompanies this
     10   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 **/
     17 
     18 #ifndef _MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_H_
     19 #define _MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_H_
     20 
     21 //
     22 // Ensure proper structure formats
     23 //
     24 #pragma pack(1)
     25 //
     26 // Memory Mapped Configuration Space Access Table (MCFG)
     27 // This table is a basic description table header followed by
     28 // a number of base address allocation structures.
     29 //
     30 typedef struct {
     31   UINT64  BaseAddress;
     32   UINT16  PciSegmentGroupNumber;
     33   UINT8   StartBusNumber;
     34   UINT8   EndBusNumber;
     35   UINT32  Reserved;
     36 } EFI_ACPI_MEMORY_MAPPED_ENHANCED_CONFIGURATION_SPACE_BASE_ADDRESS_ALLOCATION_STRUCTURE;
     37 
     38 //
     39 // MCFG Revision (defined in spec)
     40 //
     41 #define EFI_ACPI_MEMORY_MAPPED_CONFIGURATION_SPACE_ACCESS_TABLE_REVISION  0x01
     42 
     43 #pragma pack()
     44 
     45 #endif
     46