]> git.proxmox.com Git - mirror_edk2.git/blame - SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf
SecurityPkg Tcg2Dxe: Add Variable Arch protocol dependency
[mirror_edk2.git] / SecurityPkg / Tcg / Tcg2Dxe / Tcg2Dxe.inf
CommitLineData
1abfa4ce
JY
1## @file\r
2# Produces Tcg2 protocol and measure boot environment\r
6d92ae11
ZC
3#\r
4# Spec Compliance Info:\r
3cc9af5c 5# "TCG PC Client Platform Firmware Profile Specification for TPM Family 2.0 Level 00 Revision 1.03 v51"\r
6d92ae11 6# along with\r
3cc9af5c 7# "Errata for PC Client Specific Platform Firmware Profile Specification Version 1.0 Revision 1.03"\r
6d92ae11 8# "TCG EFI Protocol Specification" "Family 2.0" "Level 00 Revision 00.13"\r
b909b8b9
ZC
9# along with\r
10# "Errata Version 0.5 for TCG EFI Protocol Specification"\r
6d92ae11 11#\r
1abfa4ce
JY
12# This module will produce Tcg2 protocol and measure boot environment.\r
13#\r
14# Caution: This module requires additional review when modified.\r
15# This driver will have external input - PE/COFF image.\r
16# This external input must be validated carefully to avoid security issue like\r
17# buffer overflow, integer overflow.\r
18#\r
b909b8b9 19# Copyright (c) 2015 - 2019, Intel Corporation. All rights reserved.<BR>\r
289b714b 20# SPDX-License-Identifier: BSD-2-Clause-Patent\r
1abfa4ce
JY
21#\r
22##\r
23\r
24[Defines]\r
25 INF_VERSION = 0x00010005\r
26 BASE_NAME = Tcg2Dxe\r
27 MODULE_UNI_FILE = Tcg2Dxe.uni\r
28 FILE_GUID = FDFF263D-5F68-4591-87BA-B768F445A9AF\r
29 MODULE_TYPE = DXE_DRIVER\r
30 VERSION_STRING = 1.0\r
31 ENTRY_POINT = DriverEntry\r
32\r
33#\r
34# The following information is for reference only and not required by the build tools.\r
35#\r
4cecd19a 36# VALID_ARCHITECTURES = IA32 X64\r
1abfa4ce
JY
37#\r
38\r
39[Sources]\r
40 Tcg2Dxe.c\r
41 MeasureBootPeCoff.c\r
42\r
43[Packages]\r
44 MdePkg/MdePkg.dec\r
45 MdeModulePkg/MdeModulePkg.dec\r
46 SecurityPkg/SecurityPkg.dec\r
47 CryptoPkg/CryptoPkg.dec\r
48\r
49[LibraryClasses]\r
50 MemoryAllocationLib\r
51 BaseLib\r
52 UefiBootServicesTableLib\r
53 HobLib\r
54 UefiDriverEntryPoint\r
55 UefiRuntimeServicesTableLib\r
56 BaseMemoryLib\r
57 DebugLib\r
58 Tpm2CommandLib\r
59 PrintLib\r
60 UefiLib\r
61 Tpm2DeviceLib\r
62 HashLib\r
63 PerformanceLib\r
64 ReportStatusCodeLib\r
65 Tcg2PhysicalPresenceLib\r
5a8eae95 66 PeCoffLib\r
1abfa4ce
JY
67\r
68[Guids]\r
1abfa4ce
JY
69 ## SOMETIMES_CONSUMES ## Variable:L"SecureBoot"\r
70 ## SOMETIMES_CONSUMES ## Variable:L"PK"\r
71 ## SOMETIMES_CONSUMES ## Variable:L"KEK"\r
72 ## SOMETIMES_CONSUMES ## Variable:L"BootXXXX"\r
73 gEfiGlobalVariableGuid\r
74\r
75 ## SOMETIMES_CONSUMES ## Variable:L"db"\r
76 ## SOMETIMES_CONSUMES ## Variable:L"dbx"\r
77 gEfiImageSecurityDatabaseGuid\r
b3548d32 78\r
1abfa4ce
JY
79 gTcgEventEntryHobGuid ## SOMETIMES_CONSUMES ## HOB\r
80 gTpmErrorHobGuid ## SOMETIMES_CONSUMES ## HOB\r
81 gEfiEventExitBootServicesGuid ## CONSUMES ## Event\r
82 gEventExitBootServicesFailedGuid ## SOMETIMES_CONSUMES ## Event\r
83 gEfiTpmDeviceInstanceNoneGuid ## SOMETIMES_CONSUMES ## GUID # TPM device identifier\r
84 gEfiTpmDeviceInstanceTpm12Guid ## SOMETIMES_CONSUMES ## GUID # TPM device identifier\r
85\r
86 gTcgEvent2EntryHobGuid ## SOMETIMES_CONSUMES ## HOB\r
18458db1 87 gTpm2StartupLocalityHobGuid ## SOMETIMES_CONSUMES ## HOB\r
1abfa4ce
JY
88\r
89[Protocols]\r
90 gEfiTcg2ProtocolGuid ## PRODUCES\r
91 gEfiTcg2FinalEventsTableGuid ## PRODUCES\r
1abfa4ce
JY
92 gEfiMpServiceProtocolGuid ## SOMETIMES_CONSUMES\r
93 gEfiVariableWriteArchProtocolGuid ## NOTIFY\r
9d5dfe9d 94 gEfiResetNotificationProtocolGuid ## CONSUMES\r
1abfa4ce
JY
95\r
96[Pcd]\r
97 gEfiSecurityPkgTokenSpaceGuid.PcdTpmPlatformClass ## SOMETIMES_CONSUMES\r
98 gEfiSecurityPkgTokenSpaceGuid.PcdFirmwareDebuggerInitialized ## SOMETIMES_CONSUMES\r
99 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid ## CONSUMES\r
1abfa4ce
JY
100 gEfiSecurityPkgTokenSpaceGuid.PcdStatusCodeSubClassTpmDevice ## SOMETIMES_CONSUMES\r
101 gEfiSecurityPkgTokenSpaceGuid.PcdTcg2HashAlgorithmBitmap ## CONSUMES\r
102 gEfiSecurityPkgTokenSpaceGuid.PcdTcg2NumberOfPCRBanks ## CONSUMES\r
91e914f5
CZ
103 gEfiSecurityPkgTokenSpaceGuid.PcdTcgLogAreaMinLen ## CONSUMES\r
104 gEfiSecurityPkgTokenSpaceGuid.PcdTcg2FinalLogAreaLen ## CONSUMES\r
a7e2d201
JY
105 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableRev ## CONSUMES\r
106 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLaml ## PRODUCES\r
107 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLasa ## PRODUCES\r
1abfa4ce
JY
108\r
109[Depex]\r
e026bb4c
LG
110 # According to PcdTpm2AcpiTableRev definition in SecurityPkg.dec\r
111 # This PCD should be configured at DynamicHii or DynamicHiiEx.\r
112 # So, this PCD read operation depends on GetVariable service.\r
113 # Add VariableArch protocol dependency to make sure PCD read works.\r
114 gEfiVariableArchProtocolGuid\r
1abfa4ce
JY
115\r
116[UserExtensions.TianoCore."ExtraFiles"]\r
117 Tcg2DxeExtra.uni\r