## @file # Provides ACPI methods for TPM 2.0 support # # Spec Compliance Info: # "TCG ACPI Specification Version 1.2 Revision 8" # "Physical Presence Interface Specification Version 1.30 Revision 00.52" # along with # "Errata Version 0.4 for TCG PC Client Platform Physical Presence Interface Specification" # "Platform Reset Attack Mitigation Specification Version 1.00" # TPM2.0 ACPI device object # "TCG PC Client Platform Firmware Profile Specification for TPM Family 2.0 Level 00 Revision 1.03 v51" # along with # "Errata for PC Client Specific Platform Firmware Profile Specification Version 1.0 Revision 1.03" # # This driver implements TPM 2.0 definition block in ACPI table and # registers SMI callback functions for Tcg2 physical presence and # MemoryClear to handle the requests from ACPI method. # # Caution: This module requires additional review when modified. # This driver will have external input - variable and ACPINvs data in SMM mode. # This external input must be validated carefully to avoid security issue. # # Copyright (c) 2015 - 2019, Intel Corporation. All rights reserved.
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: BSD-2-Clause-Patent # ## [Defines] INF_VERSION = 0x00010005 BASE_NAME = Tcg2Smm MODULE_UNI_FILE = Tcg2Smm.uni FILE_GUID = 44A20657-10B8-4049-A148-ACD8812AF257 MODULE_TYPE = DXE_SMM_DRIVER PI_SPECIFICATION_VERSION = 0x0001000A VERSION_STRING = 1.0 ENTRY_POINT = InitializeTcgSmm [Sources] Tcg2Smm.h Tcg2Smm.c Tcg2TraditionalMm.c [Packages] MdePkg/MdePkg.dec MdeModulePkg/MdeModulePkg.dec SecurityPkg/SecurityPkg.dec [LibraryClasses] BaseLib BaseMemoryLib UefiDriverEntryPoint MmServicesTableLib UefiBootServicesTableLib DebugLib DxeServicesLib TpmMeasurementLib Tpm2CommandLib Tcg2PhysicalPresenceLib PcdLib SmmMemLib [Guids] ## SOMETIMES_PRODUCES ## Variable:L"MemoryOverwriteRequestControl" ## SOMETIMES_CONSUMES ## Variable:L"MemoryOverwriteRequestControl" gEfiMemoryOverwriteControlDataGuid gEfiTpmDeviceInstanceTpm20DtpmGuid ## PRODUCES ## GUID # TPM device identifier gTcg2MmSwSmiRegisteredGuid ## PRODUCES gTpmNvsMmGuid ## CONSUMES [Protocols] gEfiSmmSwDispatch2ProtocolGuid ## CONSUMES gEfiSmmVariableProtocolGuid ## CONSUMES gEfiMmReadyToLockProtocolGuid ## CONSUMES [Pcd] gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid ## CONSUMES [Depex] gEfiSmmSwDispatch2ProtocolGuid AND gEfiSmmVariableProtocolGuid AND gEfiTcg2ProtocolGuid [UserExtensions.TianoCore."ExtraFiles"] Tcg2SmmExtra.uni