--- /dev/null
+## @file\r
+# Produces Tcg2 protocol and measure boot environment\r
+# This module will produce Tcg2 protocol and measure boot environment.\r
+#\r
+# Caution: This module requires additional review when modified.\r
+# This driver will have external input - PE/COFF image.\r
+# This external input must be validated carefully to avoid security issue like\r
+# buffer overflow, integer overflow.\r
+#\r
+# Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>\r
+# This program and the accompanying materials\r
+# are licensed and made available under the terms and conditions of the BSD License\r
+# which accompanies this distribution. The full text of the license may be found at\r
+# http://opensource.org/licenses/bsd-license.php\r
+# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+#\r
+##\r
+\r
+[Defines]\r
+ INF_VERSION = 0x00010005\r
+ BASE_NAME = Tcg2Dxe\r
+ MODULE_UNI_FILE = Tcg2Dxe.uni\r
+ FILE_GUID = FDFF263D-5F68-4591-87BA-B768F445A9AF\r
+ MODULE_TYPE = DXE_DRIVER\r
+ VERSION_STRING = 1.0\r
+ ENTRY_POINT = DriverEntry\r
+\r
+#\r
+# The following information is for reference only and not required by the build tools.\r
+#\r
+# VALID_ARCHITECTURES = IA32 X64 IPF\r
+#\r
+\r
+[Sources]\r
+ Tcg2Dxe.c\r
+ MeasureBootPeCoff.c\r
+\r
+[Packages]\r
+ MdePkg/MdePkg.dec\r
+ MdeModulePkg/MdeModulePkg.dec\r
+ SecurityPkg/SecurityPkg.dec\r
+ CryptoPkg/CryptoPkg.dec\r
+\r
+[LibraryClasses]\r
+ MemoryAllocationLib\r
+ BaseLib\r
+ UefiBootServicesTableLib\r
+ HobLib\r
+ UefiDriverEntryPoint\r
+ UefiRuntimeServicesTableLib\r
+ BaseMemoryLib\r
+ DebugLib\r
+ Tpm2CommandLib\r
+ PrintLib\r
+ UefiLib\r
+ Tpm2DeviceLib\r
+ HashLib\r
+ PerformanceLib\r
+ ReportStatusCodeLib\r
+ Tcg2PhysicalPresenceLib\r
+\r
+[Guids]\r
+ ## SOMETIMES_CONSUMES ## SystemTable # Smbios Table\r
+ ## SOMETIMES_CONSUMES ## GUID # Handoff Table for measurement.\r
+ gEfiSmbiosTableGuid\r
+ \r
+ ## SOMETIMES_CONSUMES ## Variable:L"SecureBoot"\r
+ ## SOMETIMES_CONSUMES ## Variable:L"PK"\r
+ ## SOMETIMES_CONSUMES ## Variable:L"KEK"\r
+ ## SOMETIMES_CONSUMES ## Variable:L"BootXXXX"\r
+ gEfiGlobalVariableGuid\r
+\r
+ ## SOMETIMES_CONSUMES ## Variable:L"db"\r
+ ## SOMETIMES_CONSUMES ## Variable:L"dbx"\r
+ gEfiImageSecurityDatabaseGuid\r
+ \r
+ gTcgEventEntryHobGuid ## SOMETIMES_CONSUMES ## HOB\r
+ gTpmErrorHobGuid ## SOMETIMES_CONSUMES ## HOB\r
+ gEfiEventExitBootServicesGuid ## CONSUMES ## Event\r
+ gEventExitBootServicesFailedGuid ## SOMETIMES_CONSUMES ## Event\r
+ gEfiTpmDeviceInstanceNoneGuid ## SOMETIMES_CONSUMES ## GUID # TPM device identifier\r
+ gEfiTpmDeviceInstanceTpm12Guid ## SOMETIMES_CONSUMES ## GUID # TPM device identifier\r
+\r
+ gTcgEvent2EntryHobGuid ## SOMETIMES_CONSUMES ## HOB\r
+\r
+[Protocols]\r
+ gEfiTcg2ProtocolGuid ## PRODUCES\r
+ gEfiTcg2FinalEventsTableGuid ## PRODUCES\r
+ gEfiAcpiTableProtocolGuid ## NOTIFY\r
+ gEfiMpServiceProtocolGuid ## SOMETIMES_CONSUMES\r
+ gEfiVariableWriteArchProtocolGuid ## NOTIFY\r
+\r
+[Pcd]\r
+ gEfiSecurityPkgTokenSpaceGuid.PcdTpmPlatformClass ## SOMETIMES_CONSUMES\r
+ gEfiSecurityPkgTokenSpaceGuid.PcdFirmwareDebuggerInitialized ## SOMETIMES_CONSUMES\r
+ gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid ## CONSUMES\r
+ gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemId ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemTableId ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultOemRevision ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorId ## SOMETIMES_CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdAcpiDefaultCreatorRevision ## SOMETIMES_CONSUMES\r
+ gEfiSecurityPkgTokenSpaceGuid.PcdStatusCodeSubClassTpmDevice ## SOMETIMES_CONSUMES\r
+ gEfiSecurityPkgTokenSpaceGuid.PcdTcg2HashAlgorithmBitmap ## CONSUMES\r
+ gEfiSecurityPkgTokenSpaceGuid.PcdTcg2NumberOfPCRBanks ## CONSUMES\r
+\r
+[Depex]\r
+ TRUE\r
+\r
+[UserExtensions.TianoCore."ExtraFiles"]\r
+ Tcg2DxeExtra.uni\r