Skip to content

Commit

Permalink
CryptoBinPkg: Add AARCH64 CryptoRuntimeDxe (#73)
Browse files Browse the repository at this point in the history
## Description

Closes #69 

Adds the AARCH64 build for CryptoRuntimeDxe. The crypto generation
script already publishes build files for AARCH64 Runtime DXE
binaries.

## How This Was Tested

- Build each flavor of the AARCH64 driver on GCC.
- Verify the file is in the assembled NuGet package.
- Ensure the driver is in the generated crypto scripts.
- The GetVariable() implementation on an AARCH64 platform was modified
  to call Sha256HashAll(). From the OS, a GetVariable() call was imitated through
  Get-UEFIVariable (powershell). The Sha256HashAll() return status was pushed
  into another NVRAM variable, and it was read through another UefiVariable call
  to verify the status.

## Integration Instructions

`RUNTIMEDXE_CRYPTO_ARCH` and `RUNTIMEDXE_CRYPTO_SERVICES` should be set
in platform DSC files for the `AARCH64` architecture and the selected
flavor to have the binary included in the platform build.

Signed-off-by: Michael Kubacki <[email protected]>
  • Loading branch information
makubacki authored Mar 19, 2024
1 parent 0422f42 commit 6df30ba
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions CryptoBinPkg/CryptoBinPkg.dsc
Original file line number Diff line number Diff line change
Expand Up @@ -203,11 +203,6 @@
FILE_GUID = $(SMM_CRYPTO_DRIVER_FILE_GUID)
}

CryptoBinPkg/Driver/CryptoRuntimeDxe.inf {
<Defines>
FILE_GUID = $(RUNTIMEDXE_CRYPTO_DRIVER_FILE_GUID)
}

[Components.IA32, Components.X64, Components.AARCH64]
CryptoBinPkg/Driver/CryptoPei.inf {
<Defines>
Expand All @@ -219,6 +214,11 @@
FILE_GUID = $(DXE_CRYPTO_DRIVER_FILE_GUID)
}

CryptoBinPkg/Driver/CryptoRuntimeDxe.inf {
<Defines>
FILE_GUID = $(RUNTIMEDXE_CRYPTO_DRIVER_FILE_GUID)
}

[Components.AARCH64, Components.X64]
# Note: MmSupervisorPkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf has instructions
# that are not supported in 32-bit. Only 64-bit is practically needed, so only build for 64-bit here.
Expand Down

0 comments on commit 6df30ba

Please sign in to comment.