mirror of https://github.com/wolfSSL/wolfBoot.git
89 lines
2.4 KiB
Plaintext
89 lines
2.4 KiB
Plaintext
# wolfBoot configuration for AMD ZynqMP ZCU102 - FSBL REPLACEMENT (SD boot)
|
|
# Zynq UltraScale+ MPSoC ZU9EG - Quad-core ARM Cortex-A53
|
|
#
|
|
# Same FSBL-replacement role as config/examples/zynqmp_fsbl.config, but the
|
|
# BootROM loads wolfBoot from BOOT.BIN on the SD card FAT partition, and
|
|
# wolfBoot reads the downstream images from MBR partitions on the same card.
|
|
#
|
|
# Boot flow: BootROM -> wolfBoot (OCM/EL3) -> psu_init -> verify+load
|
|
# BL31 + kernel + DTB (from SD) -> BL31 -> Linux
|
|
#
|
|
# Supply the board psu_init_gpl.c/.h at build time (see zynqmp_fsbl.config).
|
|
# Build: make ZYNQMP_FSBL=1 ZYNQMP_PSU_INIT_DIR=/path/to/board
|
|
# Package: tools/scripts/zcu102/zynqmp_wolfboot_fsbl.bif
|
|
|
|
ARCH?=AARCH64
|
|
TARGET?=zynq
|
|
|
|
ZYNQMP_FSBL?=1
|
|
ZYNQMP_PSU_INIT_DIR?=hal/board/zynqmp
|
|
|
|
# BootROM enters the [bootloader] partition at EL3.
|
|
CFLAGS_EXTRA+=-DEL3_SECURE=1
|
|
|
|
WOLFBOOT_VERSION?=0
|
|
|
|
SIGN?=RSA4096
|
|
HASH?=SHA3
|
|
IMAGE_HEADER_SIZE?=1024
|
|
|
|
NO_ARM_ASM?=0
|
|
HW_SHA3?=0
|
|
|
|
DEBUG?=0
|
|
DEBUG_SYMBOLS=1
|
|
DEBUG_UART=1
|
|
CFLAGS_EXTRA+=-DDEBUG_ZYNQ=1
|
|
|
|
# SD card support - use SDHCI driver (SD1 external slot on ZCU102)
|
|
DISK_SDCARD?=1
|
|
DISK_EMMC?=0
|
|
CFLAGS_EXTRA+=-DSDHCI_FORCE_CARD_DETECT
|
|
|
|
# No QSPI in the SD configuration
|
|
EXT_FLASH?=0
|
|
NO_XIP=1
|
|
|
|
ELF?=1
|
|
GZIP?=1
|
|
|
|
VTOR?=1
|
|
CORTEX_M0?=0
|
|
NO_ASM?=0
|
|
ALLOW_DOWNGRADE?=0
|
|
NVM_FLASH_WRITEONCE?=0
|
|
V?=0
|
|
SPMATH?=1
|
|
RAM_CODE?=0
|
|
DUALBANK_SWAP?=0
|
|
PKA?=0
|
|
WOLFTPM?=0
|
|
|
|
USE_GCC=1
|
|
CROSS_COMPILE=aarch64-none-elf-
|
|
|
|
# MBR partition layout (same as zynqmp_sdcard.config):
|
|
# part[0]=boot (FAT32, BOOT.BIN), part[1]=OFP_A, part[2]=OFP_B, part[3]=rootfs
|
|
WOLFBOOT_NO_PARTITIONS=1
|
|
CFLAGS_EXTRA+=-DBOOT_PART_A=1
|
|
CFLAGS_EXTRA+=-DBOOT_PART_B=2
|
|
CFLAGS_EXTRA+=-DDISK_BLOCK_SIZE=0x80000
|
|
CFLAGS_EXTRA+=-DLINUX_BOOTARGS_ROOT=\"/dev/mmcblk0p4\"
|
|
|
|
# wolfBoot self-location (OCM). Must match ORIGIN in hal/zynqmp_ocm.ld.
|
|
WOLFBOOT_ORIGIN=0xFFFC0000
|
|
# Bound the RAM load of the (not-yet-authenticated) disk image. Required with
|
|
# WOLFBOOT_NO_PARTITIONS=1 (update_disk.c). 64MB comfortably fits the signed
|
|
# FIT (kernel+atf+fdt) at WOLFBOOT_LOAD_ADDRESS. NOTE: the SD FSBL boot path is
|
|
# not yet HW-validated (QSPI is); this config is build-tested only.
|
|
WOLFBOOT_RAMBOOT_MAX_SIZE=0x4000000
|
|
# Load Partition to RAM Address (DDR, after psu_init)
|
|
WOLFBOOT_LOAD_ADDRESS?=0x10000000
|
|
# DTS (Device Tree) load address
|
|
WOLFBOOT_LOAD_DTS_ADDRESS?=0x1000
|
|
|
|
# Required for test-app (even with WOLFBOOT_NO_PARTITIONS=1)
|
|
WOLFBOOT_PARTITION_BOOT_ADDRESS=0x80200000
|
|
WOLFBOOT_PARTITION_SIZE=0x4000000
|
|
WOLFBOOT_SECTOR_SIZE=0x1000
|