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