RD-1 AE (Kronos) Platform ========================= Some of the features of the RD-1 AE platform referenced in TF-A include: - Neoverse-V3AE, Arm9.2-A application processor (64-bit mode) - A GICv4-compatible GIC-720AE Further information on RD1-AE is available at `rd1ae`_ Boot Sequence ------------- The boot process starts from RSE (Runtime Security Engine) that loads the Application Processor (AP) BL2 image and signals the System Control Processor (SCP) to power up the AP. The AP then runs AP BL2 The primary compute boot flow follows the following steps: 1. AP BL2: * Performs the actions described in the `Trusted Board Boot (TBB)`_ document. * Copies the AP BL31 image from Secure Flash to Secure SRAM * Copies the AP BL32 (OP-TEE) image from Secure Flash to Secure DRAM * Copies the AP BL33 (U-Boot) image from Secure Flash to Normal DRAM * Transfers the execution to AP BL31 2. AP BL31: * Initializes Trusted Firmware-A Services * Transfers the execution to AP BL32 and then transfers the execution to AP BL33 * During runtime, acts as the Secure Monitor, handling SMC calls, and context switching between secure and non-secure worlds. 3. AP BL32: * Initializes OP-TEE environment * Initializes Secure Partitions * Transfers the execution back to AP BL31 * During runtime, it facilitates secure communication between the normal world environment (e.g. Linux) and the Trusted Execution Environment. Build Procedure (TF-A only) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Obtain `Arm toolchain`_ and set the CROSS_COMPILE environment variable to point to the toolchain folder. - Build TF-A: .. code:: shell make \ PLAT=rd1ae \ MBEDTLS_DIR= \ ARCH=aarch64 \ CREATE_KEYS=1 \ GENERATE_COT=1 \ TRUSTED_BOARD_BOOT=1 \ COT=tbbr \ ARM_ROTPK_LOCATION=devel_rsa \ ROT_KEY=plat/arm/board/common/rotpk/arm_rotprivk_rsa.pem \ BL32= \ SPD=spmd \ SPMD_SPM_AT_SEL2=0 \ BL33= \ *Copyright (c) 2024, Arm Limited. All rights reserved.* .. _Arm Toolchain: https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/downloads .. _rd1ae: https://developer.arm.com/Tools%20and%20Software/Arm%20Reference%20Design-1%20AE .. _Trusted Board Boot (TBB): https://trustedfirmware-a.readthedocs.io/en/latest/design/trusted-board-boot.html