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