]> git.proxmox.com Git - mirror_edk2.git/commitdiff
UefiPayloadPkg: Add macro to support selection of CryptoDxe driver
authorPaytonX Hsieh <paytonx.hsieh@intel.com>
Fri, 22 Jul 2022 06:50:09 +0000 (14:50 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Mon, 25 Jul 2022 16:32:42 +0000 (16:32 +0000)
REF : https://bugzilla.tianocore.org/show_bug.cgi?id=4006

Add CRYPTO_PROTOCOL_SUPPORT to decide CryptoDxe built into UPL.efi
If CRYPTO_PROTOCOL_SUPPORT is true, BIOS will use crypto protocol
instead of building OpensslLib into drivers.

Reviewed-by: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: James Lu <james.lu@intel.com>
Reviewed-by: Gua Guo <gua.guo@intel.com>
Signed-off-by: PaytonX Hsieh <paytonx.hsieh@intel.com>
UefiPayloadPkg/UefiPayloadPkg.dsc
UefiPayloadPkg/UefiPayloadPkg.fdf

index 5e947526b7297ada57070afe1296ffe55f2c5650..862d440b16282f9bde1c55c74969f0bd51757db8 100644 (file)
@@ -39,6 +39,7 @@
   DEFINE ATA_ENABLE                   = TRUE\r
   DEFINE SD_ENABLE                    = TRUE\r
   DEFINE PS2_MOUSE_ENABLE             = TRUE\r
+  DEFINE CRYPTO_PROTOCOL_SUPPORT      = FALSE\r
   DEFINE SD_MMC_TIMEOUT               = 1000000\r
 \r
   #\r
   CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf\r
   SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf\r
   DxeHobListLib|UefiPayloadPkg/Library/DxeHobListLib/DxeHobListLib.inf\r
+!if $(CRYPTO_PROTOCOL_SUPPORT) == TRUE\r
   BaseCryptLib|CryptoPkg/Library/BaseCryptLibOnProtocolPpi/DxeCryptLib.inf\r
   TlsLib|CryptoPkg/Library/BaseCryptLibOnProtocolPpi/DxeCryptLib.inf\r
+!else\r
+  BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
+  TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf\r
+!endif\r
   IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
   OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
   RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf\r
   gUefiPayloadPkgTokenSpaceGuid.PcdBootManagerEscape|$(BOOT_MANAGER_ESCAPE)\r
   gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1800000\r
 \r
+!if $(CRYPTO_PROTOCOL_SUPPORT) == TRUE\r
   gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.HmacSha256.Family                        | PCD_CRYPTO_SERVICE_ENABLE_FAMILY\r
   gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Md5.Family                               | PCD_CRYPTO_SERVICE_ENABLE_FAMILY\r
   gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Pkcs.Family                              | PCD_CRYPTO_SERVICE_ENABLE_FAMILY\r
   gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.Tls.Family                               | PCD_CRYPTO_SERVICE_ENABLE_FAMILY\r
   gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.TlsSet.Family                            | PCD_CRYPTO_SERVICE_ENABLE_FAMILY\r
   gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.TlsGet.Family                            | PCD_CRYPTO_SERVICE_ENABLE_FAMILY\r
+!endif\r
 \r
 [PcdsPatchableInModule.X64]\r
   gPcAtChipsetPkgTokenSpaceGuid.PcdRtcIndexRegister|$(RTC_INDEX_REGISTER)\r
   #\r
   # Misc\r
   #\r
+!if $(CRYPTO_PROTOCOL_SUPPORT) == TRUE\r
   CryptoPkg/Driver/CryptoDxe.inf {\r
     <LibraryClasses>\r
       BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf\r
       TlsLib|CryptoPkg/Library/TlsLib/TlsLib.inf\r
   }\r
+!endif\r
 \r
   #------------------------------\r
   #  Build the shell\r
index 5c055e61b3d38f725e3548df85f1c28e3f95c340..afdd6447a7b34ee9000136484850feb21ff90889 100644 (file)
@@ -99,7 +99,9 @@ INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
 INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf\r
 INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf\r
 \r
+!if $(CRYPTO_PROTOCOL_SUPPORT) == TRUE\r
 INF CryptoPkg/Driver/CryptoDxe.inf\r
+!endif\r
 !if $(SECURITY_STUB_ENABLE) == TRUE\r
 INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf\r
 !endif\r