## @file
#  Handle TPM 2.0 physical presence requests from OS.
#
#  This library will handle TPM 2.0 physical presence request from OS.
#
#  Caution: This module requires additional review when modified.
#  This driver will have external input - variable.
#  This external input must be validated carefully to avoid security issue.
#
# Copyright (c) 2015 - 2020, Intel Corporation. All rights reserved.<BR>
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = StandaloneMmTcg2PhysicalPresenceLib
  FILE_GUID                      = 75E3D07B-689C-4F42-A8A0-46AFAE868A6F
  MODULE_TYPE                    = MM_STANDALONE
  PI_SPECIFICATION_VERSION       = 0x00010032
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = Tcg2PhysicalPresenceLib|MM_STANDALONE
  CONSTRUCTOR                    = Tcg2PhysicalPresenceLibStandaloneMmConstructor

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 EBC
#

[Sources]
  StandaloneMmTcg2PhysicalPresenceLib.c
  MmTcg2PhysicalPresenceLibCommon.c
  MmTcg2PhysicalPresenceLibCommon.h

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  SecurityPkg/SecurityPkg.dec

[LibraryClasses]
  DebugLib
  Tcg2PpVendorLib
  MmServicesTableLib
  BaseMemoryLib

[Guids]
  ## SOMETIMES_PRODUCES ## Variable:L"PhysicalPresence"
  ## SOMETIMES_CONSUMES ## Variable:L"PhysicalPresence"
  ## SOMETIMES_CONSUMES ## Variable:L"PhysicalPresenceFlags"
  gEfiTcg2PhysicalPresenceGuid

[Protocols]
  gEfiSmmVariableProtocolGuid                                       ## CONSUMES

[Pcd]
  gEfiSecurityPkgTokenSpaceGuid.PcdTcgPhysicalPresenceInterfaceVer  ## CONSUMES
  gEfiSecurityPkgTokenSpaceGuid.PcdTcg2PhysicalPresenceFlags        ## SOMETIMES_CONSUMES

[Depex]
  gEfiSmmVariableProtocolGuid
