## @file
# Instance of PCI Express Library using the 256 MB PCI Express MMIO window.
#
# PCI Express Library that uses the 256 MB PCI Express MMIO window to perform
# PCI Configuration cycles. Layers on top of an I/O Library instance.
#
# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.
# Portions copyright (c) 2016, American Megatrends, Inc. All rights reserved.
#
# This program and the accompanying materials
# are licensed and made available under the terms and conditions of the BSD License
# which accompanies this distribution. The full text of the license may be found at
# http://opensource.org/licenses/bsd-license.php.
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
#
##

[Defines]
 INF_VERSION = 0x00010005
 BASE_NAME = SmmPciExpressLib
 FILE_GUID = 00D24382-8231-4B18-A4F0-2D94D8FE2E81
 MODULE_TYPE = DXE_SMM_DRIVER
 VERSION_STRING = 1.0
 LIBRARY_CLASS = PciExpressLib|DXE_SMM_DRIVER SMM_CORE
 CONSTRUCTOR = SmmPciExpressLibConstructor

[Sources]
 PciExpressLib.c

[Packages]
 MdePkg/MdePkg.dec

[LibraryClasses]
 BaseLib
 PcdLib
 DebugLib
 IoLib

[Pcd]
 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress ## CONSUMES
