## @file
# Set TPM device type - supports TPM 2.0 only
#
# In SecurityPkg, this module initializes the TPM device type based on a UEFI
# variable and/or hardware detection. In OvmfPkg, the module only performs TPM
# hardware detection.
#
# Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
# Copyright (C) 2018, Red Hat, Inc.
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = Tcg2ConfigPei
  FILE_GUID                      = BF7F2B0C-9F2F-4889-AB5C-12460022BE87
  MODULE_TYPE                    = PEIM
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = Tcg2ConfigPeimEntryPoint

[Sources]
  Tcg2ConfigPeim.c
  Tpm12Support.h
  Tpm12SupportNull.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  OvmfPkg/OvmfPkg.dec
  SecurityPkg/SecurityPkg.dec

[LibraryClasses]
  PeimEntryPoint
  DebugLib
  PeiServicesLib
  Tpm2DeviceLib

[Guids]
  gEfiTpmDeviceSelectedGuid           ## PRODUCES ## GUID # Used as a PPI GUID
  gEfiTpmDeviceInstanceTpm20DtpmGuid  ## SOMETIMES_CONSUMES
  gEfiTpmDeviceInstanceTpm12Guid      ## SOMETIMES_CONSUMES

[Ppis]
  gPeiTpmInitializationDonePpiGuid    ## SOMETIMES_PRODUCES

[Pcd]
  gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid                 ## PRODUCES

[Depex.IA32, Depex.X64]
  gOvmfTpmMmioAccessiblePpiGuid

[Depex.ARM, Depex.AARCH64]
  gOvmfTpmDiscoveredPpiGuid
