Skip to content

Commit 30c5dc8

Browse files
committed
QemuQ35Pkg: Wire up OneCrypto binary drivers
Update QemuQ35Pkg DSC and FDF to use OneCrypto binary drivers instead of autogenerated shared crypto include files. Map BaseCryptLib to BaseCryptLibOnOneCrypto for DXE and StandaloneMM phases, and include OneCrypto loader and binary drivers in the FDF. Signed-off-by: Doug Flick <dougflick@microsoft.com>
1 parent f2ad587 commit 30c5dc8

3 files changed

Lines changed: 41 additions & 9 deletions

File tree

Platforms/QemuQ35Pkg/QemuQ35Pkg.fdf

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -502,8 +502,14 @@ INF MsGraphicsPkg/PrintScreenLogger/PrintScreenLogger.inf
502502
INF SecurityPkg/Hash2DxeCrypto/Hash2DxeCrypto.inf
503503
INF MsCorePkg/AcpiRGRT/AcpiRgrt.inf
504504

505-
!include $(SHARED_CRYPTO_PATH)/Driver/Bin/CryptoDriver.DXE.inc.fdf
506-
!include $(SHARED_CRYPTO_PATH)/Driver/Bin/CryptoDriver.STANDALONEMM_MMSUPV.inc.fdf
505+
#
506+
# OneCrypto Drivers
507+
#
508+
!if $(ARCH) == X64
509+
INF $(ONE_CRYPTO_PATH)/$(TARGET)/X64/OneCryptoBin/OneCryptoBinSupvMm.inf
510+
INF $(ONE_CRYPTO_PATH)/$(TARGET)/X64/OneCryptoLoaders/OneCryptoLoaderDxe.inf
511+
INF $(ONE_CRYPTO_PATH)/$(TARGET)/X64/OneCryptoLoaders/OneCryptoLoaderSupvMm.inf
512+
!endif
507513

508514
!if $(BUILD_UNIT_TESTS) == TRUE
509515
# INF UefiTestingPkg/FunctionalSystemTests/SmmPagingProtectionsTest/Smm/SmmPagingProtectionsTestStandaloneMm.inf # NOT YET SUPPORTED

Platforms/QemuQ35Pkg/QemuQ35PkgCommon.dsc.inc

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -384,6 +384,8 @@
384384
OemMfciLib |OemPkg/Library/OemMfciLib/OemMfciLibPei.inf
385385
ConfigKnobShimLib |SetupDataPkg/Library/ConfigKnobShimLib/ConfigKnobShimPeiLib/ConfigKnobShimPeiLib.inf
386386
PolicyLib |PolicyServicePkg/Library/PeiPolicyLib/PeiPolicyLib.inf
387+
BaseCryptLib |CryptoPkg/Library/BaseCryptLibOnProtocolPpi/PeiCryptLib.inf
388+
TlsLib |CryptoPkg/Library/BaseCryptLibOnProtocolPpi/PeiCryptLib.inf
387389
SmmRelocationLib |QemuQ35Pkg/Library/SmmRelocationLib/SmmRelocationLib.inf
388390
!if $(TPM_ENABLE) == TRUE
389391
Tpm12DeviceLib |SecurityPkg/Library/Tpm12DeviceLibDTpm/Tpm12DeviceLibDTpm.inf
@@ -419,6 +421,8 @@
419421
PciLib |QemuQ35Pkg/Library/DxePciLibI440FxQ35/DxePciLibI440FxQ35.inf
420422

421423
OemMfciLib |OemPkg/Library/OemMfciLib/OemMfciLibDxe.inf
424+
BaseCryptLib|CryptoPkg/Library/BaseCryptLibOnOneCrypto/DxeCryptLib.inf
425+
TlsLib|CryptoPkg/Library/BaseCryptLibOnOneCrypto/DxeCryptLib.inf
422426

423427
[LibraryClasses.common.DXE_CORE]
424428
HobLib |MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
@@ -437,6 +441,8 @@
437441
UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
438442
CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibFmp/DxeRuntimeCapsuleLib.inf
439443
VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePolicyLibRuntimeDxe.inf
444+
BaseCryptLib|CryptoPkg/Library/BaseCryptLibOnProtocolPpi/RuntimeDxeCryptLib.inf
445+
TlsLib|CryptoPkg/Library/BaseCryptLibOnProtocolPpi/RuntimeDxeCryptLib.inf
440446

441447
[LibraryClasses.common.UEFI_DRIVER, LibraryClasses.common.DXE_DRIVER]
442448
UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
@@ -527,6 +533,8 @@
527533
IoLib|MmSupervisorPkg/Library/BaseIoLibIntrinsicSysCall/BaseIoLibIntrinsic.inf
528534
SysCallLib|MmSupervisorPkg/Library/SysCallLib/SysCallLib.inf
529535
CpuLib|MmSupervisorPkg/Library/BaseCpuLibSysCall/BaseCpuLib.inf
536+
BaseCryptLib|CryptoPkg/Library/BaseCryptLibOnOneCrypto/StandaloneMmCryptLib.inf
537+
TlsLib|CryptoPkg/Library/BaseCryptLibOnOneCrypto/StandaloneMmCryptLib.inf
530538

531539
!if $(PERF_TRACE_ENABLE) == TRUE
532540
PerformanceLib|MdeModulePkg/Library/SmmPerformanceLib/StandaloneMmPerformanceLib.inf
@@ -882,15 +890,27 @@
882890
#
883891
################################################################################
884892
[Components]
885-
!include $(SHARED_CRYPTO_PATH)/Driver/Bin/CryptoDriver.inc.dsc
893+
QemuQ35Pkg/Library/PeiFvMeasurementExclusionLib/PeiFvMeasurementExclusionLib.inf
886894
887-
QemuQ35Pkg/Library/PeiFvMeasurementExclusionLib/PeiFvMeasurementExclusionLib.inf
888-
889-
QemuQ35Pkg/Library/ResetSystemLib/BaseResetSystemLib.inf
890-
QemuQ35Pkg/Library/ResetSystemLib/DxeResetSystemLib.inf
891-
QemuQ35Pkg/Library/ResetSystemLib/StandaloneMmResetSystemLib.inf
895+
QemuQ35Pkg/Library/ResetSystemLib/BaseResetSystemLib.inf
896+
QemuQ35Pkg/Library/ResetSystemLib/DxeResetSystemLib.inf
897+
QemuQ35Pkg/Library/ResetSystemLib/StandaloneMmResetSystemLib.inf
892898
893899
[Components.X64]
900+
901+
$(ONE_CRYPTO_PATH)/$(TARGET)/X64/OneCryptoLoaders/OneCryptoLoaderDxe.inf {
902+
<PcdsPatchableInModule>
903+
gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8040004F
904+
}
905+
$(ONE_CRYPTO_PATH)/$(TARGET)/X64/OneCryptoLoaders/OneCryptoLoaderSupvMm.inf {
906+
<PcdsPatchableInModule>
907+
gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8040004F
908+
}
909+
$(ONE_CRYPTO_PATH)/$(TARGET)/X64/OneCryptoBin/OneCryptoBinSupvMm.inf {
910+
<PcdsPatchableInModule>
911+
gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8040004F
912+
}
913+
894914
#########################################
895915
# DXE Phase modules
896916
#########################################
@@ -1234,7 +1254,7 @@ QemuQ35Pkg/Library/ResetSystemLib/StandaloneMmResetSystemLib.inf
12341254
## Where-Object {(Select-String -InputObject $_ -Pattern "MODULE_TYPE\s*=\s*UEFI_APPLICATION")} | ^
12351255
## ForEach-Object {$path = $_.FullName -replace '\\','/'; Write-Output $path}
12361256
!if $(BUILD_UNIT_TESTS) == TRUE
1237-
1257+
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/BaseCryptLibUnitTestApp.inf
12381258
AdvLoggerPkg/UnitTests/LineParser/LineParserTestApp.inf
12391259
DfciPkg/UnitTests/DeviceIdTest/DeviceIdTestApp.inf
12401260
# DfciPkg/UnitTests/DfciVarLockAudit/UEFI/DfciVarLockAuditTestApp.inf # DOESN'T PRODUCE OUTPUT

Platforms/QemuQ35Pkg/QemuQ35PkgIA32X64.dsc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,12 @@
3434

3535
!include QemuQ35Pkg/QemuQ35PkgCommon.dsc.inc
3636

37+
[LibraryClasses.X64.PEIM, LibraryClasses.X64.PEI_CORE]
38+
# For now PEI will continue to use BaseCryptLibOnProtocolPpi instead of
39+
# BaseCryptLibOnOneCrypto
40+
BaseCryptLib|CryptoPkg/Library/BaseCryptLibOnProtocolPpi/PeiCryptLib.inf
41+
TlsLib|CryptoPkg/Library/BaseCryptLibOnProtocolPpi/PeiCryptLib.inf
42+
3743
[Components.IA32]
3844
!include QemuQ35Pkg/QemuQ35PkgCommonPei.dsc.inc
3945

0 commit comments

Comments
 (0)