1## @file 2# Provides ACPI metholds for TPM 2.0 support 3# 4# This driver implements TPM 2.0 definition block in ACPI table and 5# registers SMI callback functions for Tcg2 physical presence and 6# MemoryClear to handle the requests from ACPI method. 7# 8# Caution: This module requires additional review when modified. 9# This driver will have external input - variable and ACPINvs data in SMM mode. 10# This external input must be validated carefully to avoid security issue. 11# 12# Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR> 13# This program and the accompanying materials 14# are licensed and made available under the terms and conditions of the BSD License 15# which accompanies this distribution. The full text of the license may be found at 16# http://opensource.org/licenses/bsd-license.php 17# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 18# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 19# 20## 21 22[Defines] 23 INF_VERSION = 0x00010005 24 BASE_NAME = Tcg2Smm 25 MODULE_UNI_FILE = Tcg2Smm.uni 26 FILE_GUID = 44A20657-10B8-4049-A148-ACD8812AF257 27 MODULE_TYPE = DXE_SMM_DRIVER 28 PI_SPECIFICATION_VERSION = 0x0001000A 29 VERSION_STRING = 1.0 30 ENTRY_POINT = InitializeTcgSmm 31 32[Sources] 33 Tcg2Smm.h 34 Tcg2Smm.c 35 Tpm.asl 36 37[Packages] 38 MdePkg/MdePkg.dec 39 MdeModulePkg/MdeModulePkg.dec 40 SecurityPkg/SecurityPkg.dec 41 42[LibraryClasses] 43 BaseLib 44 BaseMemoryLib 45 UefiDriverEntryPoint 46 SmmServicesTableLib 47 UefiBootServicesTableLib 48 DebugLib 49 DxeServicesLib 50 TpmMeasurementLib 51 Tpm2CommandLib 52 Tcg2PhysicalPresenceLib 53 IoLib 54 55[Guids] 56 ## SOMETIMES_PRODUCES ## Variable:L"MemoryOverwriteRequestControl" 57 ## SOMETIMES_CONSUMES ## Variable:L"MemoryOverwriteRequestControl" 58 gEfiMemoryOverwriteControlDataGuid 59 60 gEfiTpmDeviceInstanceTpm20DtpmGuid ## PRODUCES ## GUID # TPM device identifier 61 62[Protocols] 63 gEfiSmmSwDispatch2ProtocolGuid ## CONSUMES 64 gEfiSmmVariableProtocolGuid ## CONSUMES 65 gEfiAcpiTableProtocolGuid ## CONSUMES 66 67[Pcd] 68 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid ## CONSUMES 69 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId ## SOMETIMES_CONSUMES 70 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId ## SOMETIMES_CONSUMES 71 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision ## SOMETIMES_CONSUMES 72 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId ## SOMETIMES_CONSUMES 73 gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision ## SOMETIMES_CONSUMES 74 gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress ## CONSUMES 75 gEfiSecurityPkgTokenSpaceGuid.PcdTcgPhysicalPresenceInterfaceVer ## CONSUMES 76 77[Depex] 78 gEfiAcpiTableProtocolGuid AND 79 gEfiSmmSwDispatch2ProtocolGuid AND 80 gEfiSmmVariableProtocolGuid 81 82[UserExtensions.TianoCore."ExtraFiles"] 83 Tcg2SmmExtra.uni 84