]> git.proxmox.com Git - mirror_edk2.git/blob - SecurityPkg/SecurityPkg.dsc
Add TPM2 support defined in trusted computing group.
[mirror_edk2.git] / SecurityPkg / SecurityPkg.dsc
1 ## @file
2 # Security Module Package for All Architectures.
3 #
4 # Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
5 # This program and the accompanying materials
6 # are licensed and made available under the terms and conditions of the BSD License
7 # which accompanies this distribution. The full text of the license may be found at
8 # http://opensource.org/licenses/bsd-license.php
9 #
10 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 #
13 ##
14
15 [Defines]
16 PLATFORM_NAME = SecurityPkg
17 PLATFORM_GUID = B2C4614D-AE76-47ba-B876-5988BFED064F
18 PLATFORM_VERSION = 0.95
19 DSC_SPECIFICATION = 0x00010005
20 OUTPUT_DIRECTORY = Build/SecurityPkg
21 SUPPORTED_ARCHITECTURES = IA32|IPF|X64|EBC
22 BUILD_TARGETS = DEBUG|RELEASE
23 SKUID_IDENTIFIER = DEFAULT
24
25 [LibraryClasses]
26 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
27 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
28 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
29 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
30 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
31 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
32 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
33 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
34 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
35 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
36
37 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
38 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
39 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
40 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
41 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
42 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
43 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
44 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
45 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
46 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
47 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
48 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
49 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
50 IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
51 OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
52 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
53 TpmCommLib|SecurityPkg/Library/TpmCommLib/TpmCommLib.inf
54 PlatformSecureLib|SecurityPkg/Library/PlatformSecureLibNull/PlatformSecureLibNull.inf
55 TcgPhysicalPresenceLib|SecurityPkg/Library/DxeTcgPhysicalPresenceLib/DxeTcgPhysicalPresenceLib.inf
56 TpmMeasurementLib|SecurityPkg/Library/DxeTpmMeasurementLib/DxeTpmMeasurementLib.inf
57 Tpm12CommandLib|SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
58 Tpm2CommandLib|SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf
59 Tcg2PhysicalPresenceLib|SecurityPkg/Library/DxeTcg2PhysicalPresenceLib/DxeTcg2PhysicalPresenceLib.inf
60 TrEEPhysicalPresenceLib|SecurityPkg/Library/DxeTrEEPhysicalPresenceLib/DxeTrEEPhysicalPresenceLib.inf
61 TcgPpVendorLib|SecurityPkg/Library/TcgPpVendorLibNull/TcgPpVendorLibNull.inf
62 Tcg2PpVendorLib|SecurityPkg/Library/Tcg2PpVendorLibNull/Tcg2PpVendorLibNull.inf
63 TrEEPpVendorLib|SecurityPkg/Library/TrEEPpVendorLibNull/TrEEPpVendorLibNull.inf
64
65 [LibraryClasses.common.PEIM]
66 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
67 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
68 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
69 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
70 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
71 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf
72 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterPei.inf
73 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
74 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
75 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf
76 Tcg2PhysicalPresenceLib|SecurityPkg/Library/PeiTcg2PhysicalPresenceLib/PeiTcg2PhysicalPresenceLib.inf
77
78 [LibraryClasses.common.DXE_DRIVER]
79 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
80 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
81 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
82 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
83 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
84 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
85
86 [LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.DXE_RUNTIME_DRIVER, LibraryClasses.common.DXE_SAL_DRIVER,]
87 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
88 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
89 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
90 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
91 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
92
93 [LibraryClasses.common.DXE_RUNTIME_DRIVER]
94 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
95 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf
96 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
97 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
98 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
99
100 [LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.UEFI_APPLICATION]
101 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
102 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
103 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
104 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
105
106 [LibraryClasses.IPF.DXE_SAL_DRIVER]
107 ExtendedSalLib|MdePkg/Library/DxeRuntimeExtendedSalLib/DxeRuntimeExtendedSalLib.inf
108 BaseCryptLib|CryptoPkg/Library/BaseCryptLibRuntimeCryptProtocol/BaseCryptLibRuntimeCryptProtocol.inf
109 HashLib|SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
110 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
111 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
112
113 [LibraryClasses.common.DXE_SMM_DRIVER]
114 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
115 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
116 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
117 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
118 SmmMemLib|MdePkg/Library/SmmMemLib/SmmMemLib.inf
119 BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf
120 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
121 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
122 Tcg2PhysicalPresenceLib|SecurityPkg/Library/SmmTcg2PhysicalPresenceLib/SmmTcg2PhysicalPresenceLib.inf
123
124 [PcdsDynamicDefault.common.DEFAULT]
125 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid|{0xb6, 0xe5, 0x01, 0x8b, 0x19, 0x4f, 0xe8, 0x46, 0xab, 0x93, 0x1c, 0x53, 0x67, 0x1b, 0x90, 0xcc}
126 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2InitializationPolicy|1
127 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2SelfTestPolicy|1
128 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2ScrtmPolicy|1
129 gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy|1
130 gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy|1
131 gEfiSecurityPkgTokenSpaceGuid.PcdTpm2HashMask|3
132 gEfiSecurityPkgTokenSpaceGuid.PcdTcg2HashAlgorithmBitmap|3
133
134 [Components]
135 SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.inf
136 #SecurityPkg/Library/DxeDeferImageLoadLib/DxeDeferImageLoadLib.inf
137 SecurityPkg/Library/DxeImageAuthenticationStatusLib/DxeImageAuthenticationStatusLib.inf
138 #SecurityPkg/UserIdentification/UserIdentifyManagerDxe/UserIdentifyManagerDxe.inf
139 #SecurityPkg/UserIdentification/UserProfileManagerDxe/UserProfileManagerDxe.inf
140
141 #
142 # Application
143 #
144 SecurityPkg/Application/RngTest/RngTest.inf
145
146 #
147 # TPM
148 #
149 SecurityPkg/Library/DxeTpmMeasureBootLib/DxeTpmMeasureBootLib.inf
150 SecurityPkg/Library/TpmCommLib/TpmCommLib.inf
151 SecurityPkg/Library/DxeTcgPhysicalPresenceLib/DxeTcgPhysicalPresenceLib.inf
152 SecurityPkg/Library/Tpm12CommandLib/Tpm12CommandLib.inf
153 SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
154 SecurityPkg/Library/Tpm12DeviceLibTcg/Tpm12DeviceLibTcg.inf
155
156 SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf
157 SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf
158
159 #
160 # TPM2
161 #
162 SecurityPkg/Library/DxeTpm2MeasureBootLib/DxeTpm2MeasureBootLib.inf
163 SecurityPkg/Library/DxeTcg2PhysicalPresenceLib/DxeTcg2PhysicalPresenceLib.inf
164 SecurityPkg/Library/PeiTcg2PhysicalPresenceLib/PeiTcg2PhysicalPresenceLib.inf
165 #
166 # TrEE - to be deprecated
167 #
168 SecurityPkg/Library/DxeTrEEPhysicalPresenceLib/DxeTrEEPhysicalPresenceLib.inf
169
170 SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterDxe.inf
171 SecurityPkg/Library/HashLibBaseCryptoRouter/HashLibBaseCryptoRouterPei.inf
172
173 SecurityPkg/Library/Tpm2CommandLib/Tpm2CommandLib.inf
174 SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
175 #
176 # TrEE - to be deprecated
177 #
178 SecurityPkg/Library/Tpm2DeviceLibTrEE/Tpm2DeviceLibTrEE.inf
179 SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf
180 SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2InstanceLibDTpm.inf
181 SecurityPkg/Library/Tpm2DeviceLibRouter/Tpm2DeviceLibRouterDxe.inf
182 SecurityPkg/Library/Tpm2DeviceLibRouter/Tpm2DeviceLibRouterPei.inf
183
184 SecurityPkg/Library/HashLibTpm2/HashLibTpm2.inf
185
186 #
187 # Other
188 #
189 SecurityPkg/Library/DxeRsa2048Sha256GuidedSectionExtractLib/DxeRsa2048Sha256GuidedSectionExtractLib.inf
190 SecurityPkg/Library/PeiRsa2048Sha256GuidedSectionExtractLib/PeiRsa2048Sha256GuidedSectionExtractLib.inf
191
192 SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf
193
194 [Components.IA32, Components.X64, Components.IPF]
195 # SecurityPkg/UserIdentification/PwdCredentialProviderDxe/PwdCredentialProviderDxe.inf
196 # SecurityPkg/UserIdentification/UsbCredentialProviderDxe/UsbCredentialProviderDxe.inf
197 SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf
198
199 #
200 # TPM
201 #
202 SecurityPkg/Tcg/TcgPei/TcgPei.inf
203 SecurityPkg/Tcg/TcgDxe/TcgDxe.inf
204 SecurityPkg/Tcg/TcgConfigDxe/TcgConfigDxe.inf {
205 <LibraryClasses>
206 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
207 }
208
209 #
210 # TPM2
211 #
212 SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
213 SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
214
215 SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigPei.inf {
216 <LibraryClasses>
217 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
218 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf
219 }
220 SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.inf {
221 <LibraryClasses>
222 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibRouter/Tpm2DeviceLibRouterPei.inf
223 NULL|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2InstanceLibDTpm.inf
224 NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
225 NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
226 }
227
228 SecurityPkg/Tcg/Tcg2Dxe/Tcg2Dxe.inf {
229 <LibraryClasses>
230 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibRouter/Tpm2DeviceLibRouterDxe.inf
231 NULL|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2InstanceLibDTpm.inf
232 NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
233 NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
234 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
235 }
236 SecurityPkg/Tcg/Tcg2Config/Tcg2ConfigDxe.inf {
237 <LibraryClasses>
238 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTcg2/Tpm2DeviceLibTcg2.inf
239 }
240
241 #
242 # TrEE - to be deprecated
243 #
244 SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf {
245 <LibraryClasses>
246 Tpm12DeviceLib|SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
247 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2DeviceLibDTpm.inf
248 }
249 SecurityPkg/Tcg/TrEEPei/TrEEPei.inf {
250 <LibraryClasses>
251 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibRouter/Tpm2DeviceLibRouterPei.inf
252 NULL|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2InstanceLibDTpm.inf
253 NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
254 NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
255 }
256
257 SecurityPkg/Tcg/TrEEDxe/TrEEDxe.inf {
258 <LibraryClasses>
259 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibRouter/Tpm2DeviceLibRouterDxe.inf
260 NULL|SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2InstanceLibDTpm.inf
261 NULL|SecurityPkg/Library/HashInstanceLibSha1/HashInstanceLibSha1.inf
262 NULL|SecurityPkg/Library/HashInstanceLibSha256/HashInstanceLibSha256.inf
263 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
264 }
265 SecurityPkg/Tcg/TrEEConfig/TrEEConfigDxe.inf {
266 <LibraryClasses>
267 Tpm2DeviceLib|SecurityPkg/Library/Tpm2DeviceLibTrEE/Tpm2DeviceLibTrEE.inf
268 }
269
270 #
271 # Hash2
272 #
273 SecurityPkg/Hash2DxeCrypto/Hash2DxeCrypto.inf
274
275 #
276 # PKCS7 Verification
277 #
278 SecurityPkg/Pkcs7Verify/Pkcs7VerifyDxe/Pkcs7VerifyDxe.inf
279
280 [Components.IA32, Components.X64]
281
282 SecurityPkg/Tcg/MemoryOverwriteRequestControlLock/TcgMorLockSmm.inf
283 SecurityPkg/Tcg/TcgSmm/TcgSmm.inf
284 SecurityPkg/Tcg/Tcg2Smm/Tcg2Smm.inf
285 SecurityPkg/Library/SmmTcg2PhysicalPresenceLib/SmmTcg2PhysicalPresenceLib.inf
286 #
287 # TrEE - to be deprecated
288 #
289 SecurityPkg/Tcg/TrEESmm/TrEESmm.inf
290 #
291 # Random Number Generator
292 #
293 SecurityPkg/RandomNumberGenerator/RngDxe/RngDxe.inf
294
295 [Components.IPF]
296 SecurityPkg/VariableAuthenticated/EsalVariableDxeSal/EsalVariableDxeSal.inf
297
298 [BuildOptions]
299 MSFT:*_*_IA32_DLINK_FLAGS = /ALIGN:256
300 INTEL:*_*_IA32_DLINK_FLAGS = /ALIGN:256
301