wolfBoot/config/examples/aarch64_efi.config

33 lines
1.4 KiB
Plaintext

# AArch64 UEFI application - wolfBoot as a UEFI app (the AArch64 sibling of the
# x86_64_efi target). Validated on the NVIDIA Jetson Orin Nano (Tegra234).
#
# wolfBoot builds as an AArch64 UEFI application (wolfboot.efi) launched by the
# platform UEFI firmware. It reads kernel.img/update.img from the EFI Simple
# File System, verifies them, and boots via UEFI LoadImage/StartImage.
# Modeled on config/examples/x86_64_efi.config.
#
# Prerequisite: build gnu-efi for AArch64 first (one-time):
# ./tools/scripts/build-gnu-efi-aarch64.sh
# then: cp config/examples/aarch64_efi.config .config && make
#
# Crypto starts on ED25519/SHA256 (matches the proven x86 EFI target) to
# de-risk the first build. Switch to ECC384/SHA384 once the port builds and
# runs: set SIGN?=ECC384, HASH?=SHA384, SPMATH=1 (pulls in SP math objects).
ARCH=AARCH64
TARGET=aarch64_efi
WOLFBOOT_SMALL_STACK=1
SIGN?=ED25519
HASH?=SHA256
DEBUG=1
SPMATH=0
# required for keytools
WOLFBOOT_SECTOR_SIZE?=0x1000
WOLFBOOT_NO_PARTITIONS=1
# Measured boot: extend the verified kernel into the platform firmware TPM via
# EFI_TCG2_PROTOCOL (PCR MEASURED_PCR_A) before handoff, using the firmware's
# own TPM stack -- no wolfTPM transport. Best-effort: skips cleanly if the
# firmware exposes no TCG2/TPM. Validated on the NVIDIA Orin Nano fTPM
# (TPM present, SHA-256 + SHA-384 PCR banks).
MEASURED_BOOT_TCG2=1
MEASURED_PCR_A?=9