1## @file
2#  Initializes TPM 2.0 device and measure FVs in PEI phase
3#
4#  This module will initialize TPM device, measure reported FVs and BIOS version.
5#
6# Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.<BR>
7# This program and the accompanying materials
8# are licensed and made available under the terms and conditions of the BSD License
9# which accompanies this distribution. The full text of the license may be found at
10# http://opensource.org/licenses/bsd-license.php
11# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13#
14##
15
16[Defines]
17  INF_VERSION                    = 0x00010005
18  BASE_NAME                      = Tcg2Pei
19  MODULE_UNI_FILE                = Tcg2Pei.uni
20  FILE_GUID                      = A0C98B77-CBA5-4BB8-993B-4AF6CE33ECE4
21  MODULE_TYPE                    = PEIM
22  VERSION_STRING                 = 1.0
23  ENTRY_POINT                    = PeimEntryMA
24
25#
26# The following information is for reference only and not required by the build tools.
27#
28#  VALID_ARCHITECTURES           = IA32 X64 IPF EBC
29#
30# [BootMode]
31#   S3_RESUME                 ## SOMETIMES_CONSUMES
32#
33
34[Sources]
35  Tcg2Pei.c
36
37[Packages]
38  MdePkg/MdePkg.dec
39  MdeModulePkg/MdeModulePkg.dec
40  SecurityPkg/SecurityPkg.dec
41
42[LibraryClasses]
43  HobLib
44  PeimEntryPoint
45  PeiServicesLib
46  BaseMemoryLib
47  DebugLib
48  Tpm2CommandLib
49  PeiServicesTablePointerLib
50  Tpm2DeviceLib
51  HashLib
52  PerformanceLib
53  MemoryAllocationLib
54  ReportStatusCodeLib
55  Tcg2PhysicalPresenceLib
56  ResetSystemLib
57
58[Guids]
59  gTcgEventEntryHobGuid                                                ## PRODUCES               ## HOB
60  gTpmErrorHobGuid                                                     ## SOMETIMES_PRODUCES     ## HOB
61  gMeasuredFvHobGuid                                                   ## PRODUCES               ## HOB
62  gTcgEvent2EntryHobGuid                                               ## PRODUCES               ## HOB
63  gEfiTpmDeviceInstanceNoneGuid                                        ## SOMETIMES_PRODUCES     ## GUID       # TPM device identifier
64  gEfiTpmDeviceInstanceTpm12Guid                                       ## SOMETIMES_PRODUCES     ## GUID       # TPM device identifier
65
66[Ppis]
67  gEfiPeiFirmwareVolumeInfoPpiGuid                                     ## SOMETIMES_CONSUMES     ## NOTIFY
68  gEfiPeiFirmwareVolumeInfo2PpiGuid                                    ## SOMETIMES_CONSUMES     ## NOTIFY
69  gEfiPeiFirmwareVolumeInfoMeasurementExcludedPpiGuid                  ## SOMETIMES_CONSUMES
70  gPeiTpmInitializedPpiGuid                                            ## SOMETIMES_PRODUCES
71  gPeiTpmInitializationDonePpiGuid                                     ## PRODUCES
72  gEfiEndOfPeiSignalPpiGuid                                            ## SOMETIMES_CONSUMES     ## NOTIFY
73
74[Pcd]
75  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString              ## SOMETIMES_CONSUMES
76  gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid                     ## CONSUMES
77  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2InitializationPolicy            ## CONSUMES
78  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2SelfTestPolicy                  ## SOMETIMES_CONSUMES
79  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2ScrtmPolicy                     ## CONSUMES
80  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported              ## CONSUMES
81  gEfiSecurityPkgTokenSpaceGuid.PcdStatusCodeSubClassTpmDevice         ## SOMETIMES_CONSUMES
82  ## SOMETIMES_CONSUMES
83  ## SOMETIMES_PRODUCES
84  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2HashMask
85
86[Depex]
87  gEfiPeiMasterBootModePpiGuid AND
88  gEfiPeiReadOnlyVariable2PpiGuid AND
89  gEfiTpmDeviceSelectedGuid
90
91[UserExtensions.TianoCore."ExtraFiles"]
92  Tcg2PeiExtra.uni
93