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, 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
57[Guids]
58  gTcgEventEntryHobGuid                                                ## PRODUCES               ## HOB
59  gTpmErrorHobGuid                                                     ## SOMETIMES_PRODUCES     ## HOB
60  gMeasuredFvHobGuid                                                   ## PRODUCES               ## HOB
61  gTcgEvent2EntryHobGuid                                               ## PRODUCES               ## HOB
62  gEfiTpmDeviceInstanceNoneGuid                                        ## SOMETIMES_PRODUCES     ## GUID       # TPM device identifier
63  gEfiTpmDeviceInstanceTpm12Guid                                       ## SOMETIMES_PRODUCES     ## GUID       # TPM device identifier
64
65[Ppis]
66  gEfiPeiFirmwareVolumeInfoPpiGuid                                     ## SOMETIMES_CONSUMES     ## NOTIFY
67  gEfiPeiFirmwareVolumeInfo2PpiGuid                                    ## SOMETIMES_CONSUMES     ## NOTIFY
68  gEfiPeiFirmwareVolumeInfoMeasurementExcludedPpiGuid                  ## SOMETIMES_CONSUMES
69  gPeiTpmInitializedPpiGuid                                            ## SOMETIMES_PRODUCES
70  gPeiTpmInitializationDonePpiGuid                                     ## PRODUCES
71  gEfiEndOfPeiSignalPpiGuid                                            ## SOMETIMES_CONSUMES     ## NOTIFY
72
73[Pcd]
74  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString              ## SOMETIMES_CONSUMES
75  gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid                     ## CONSUMES
76  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2InitializationPolicy            ## CONSUMES
77  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2SelfTestPolicy                  ## SOMETIMES_CONSUMES
78  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2ScrtmPolicy                     ## CONSUMES
79  gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported              ## CONSUMES
80  gEfiSecurityPkgTokenSpaceGuid.PcdStatusCodeSubClassTpmDevice         ## SOMETIMES_CONSUMES
81  ## SOMETIMES_CONSUMES
82  ## SOMETIMES_PRODUCES
83  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2HashMask
84
85[Depex]
86  gEfiPeiMasterBootModePpiGuid AND
87  gEfiPeiReadOnlyVariable2PpiGuid AND
88  gEfiTpmDeviceSelectedGuid
89
90[UserExtensions.TianoCore."ExtraFiles"]
91  Tcg2PeiExtra.uni
92