]> git.proxmox.com Git - mirror_edk2.git/commit
CryptoPkg: Add EDK II Crypto Protocols/PPIs/PCDs
authorMichael D Kinney <michael.d.kinney@intel.com>
Thu, 7 Nov 2019 10:29:16 +0000 (02:29 -0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Fri, 7 Feb 2020 16:32:13 +0000 (16:32 +0000)
commit3b0e04305b2559da8deec7e1acba2d9e9902b80e
tree68b4d135581568b68765328a148d4cb5b3d580bc
parent668621362fa4f0ca87fda5b9abba4fc49bac291b
CryptoPkg: Add EDK II Crypto Protocols/PPIs/PCDs

https://bugzilla.tianocore.org/show_bug.cgi?id=2420

Based on the following package with changes to merge into
CryptoPkg.

https://github.com/microsoft/mu_plus/tree/dev/201908/SharedCryptoPkg

Add the EDK II Crypto Protocol, EDK II SMM Crypto Protocol
and EDK II Crypto PPI that provide the same services as the
BaseCryptLib.  One additional GetVersion() services is provided
to support backward compatible extensions to these new
Protocols/PPIs if new services are added to BaseCryptLib in the
future.  The EDK II Crypto Protocols/PPIs are located in a
private directory so they are only available CryptoPkg components.

In order to optimize the size of modules that produce the
EDK II Crypto Protocols/PPIs define a FixedAtBuild PCD
gEfiCryptoPkgTokenSpaceGuid.PcdCryptoServiceFamilyEnable.
This PCD is type VOID* and is associated with the structure
PCD_CRYPTO_SERVICE_FAMILY_ENABLE.  This structure contains
bitfields and unions that allow a platform DSC files to
enable/disable entire families of services or enable/disable
individual services in the produced EDK II Crypto
Protocols/PPIs.

Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Xiaoyu Lu <xiaoyux.lu@intel.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
CryptoPkg/CryptoPkg.dec
CryptoPkg/CryptoPkg.uni
CryptoPkg/Include/Pcd/PcdCryptoServiceFamilyEnable.h [new file with mode: 0644]
CryptoPkg/Private/Ppi/Crypto.h [new file with mode: 0644]
CryptoPkg/Private/Protocol/Crypto.h [new file with mode: 0644]
CryptoPkg/Private/Protocol/SmmCrypto.h [new file with mode: 0644]