## @file
# Component INF file for the Intel VTd PMR PEIM.
#
# This driver initializes VTd engine based upon EDKII_VTD_INFO_PPI
# and provide DMA protection in PEI.
#
# Copyright (c) 2017 - 2019, Intel Corporation. All rights reserved.<BR>
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION     = 0x00010017
  BASE_NAME       = IntelVTdPmrPei
  MODULE_UNI_FILE = IntelVTdPmrPei.uni
  FILE_GUID       = F906769F-4AED-4A0D-8C7C-FF21B9D1051A
  MODULE_TYPE     = PEIM
  VERSION_STRING  = 1.0
  ENTRY_POINT     = IntelVTdPmrInitialize

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  IntelSiliconPkg/IntelSiliconPkg.dec

[Sources]
  IntelVTdPmrPei.c
  IntelVTdPmrPei.h
  IntelVTdPmr.c
  DmarTable.c
  VtdReg.c

[LibraryClasses]
  DebugLib
  BaseMemoryLib
  BaseLib
  PeimEntryPoint
  PeiServicesLib
  HobLib
  IoLib
  CacheMaintenanceLib

[Guids]
  gVtdPmrInfoDataHobGuid              ## CONSUMES

[Ppis]
  gEdkiiIoMmuPpiGuid                  ## PRODUCES
  gEdkiiVTdInfoPpiGuid                ## CONSUMES
  gEfiPeiMemoryDiscoveredPpiGuid      ## CONSUMES
  gEfiEndOfPeiSignalPpiGuid           ## CONSUMES

[Pcd]
  gIntelSiliconPkgTokenSpaceGuid.PcdVTdPolicyPropertyMask   ## CONSUMES
  gIntelSiliconPkgTokenSpaceGuid.PcdVTdPeiDmaBufferSize     ## CONSUMES
  gIntelSiliconPkgTokenSpaceGuid.PcdVTdPeiDmaBufferSizeS3   ## CONSUMES

[Depex]
  gEfiPeiMasterBootModePpiGuid AND
  gEdkiiVTdInfoPpiGuid

[UserExtensions.TianoCore."ExtraFiles"]
  IntelVTdPmrPeiExtra.uni

