RNX-RZG2UL-OSM ARM Trusted Firmware

From Ronetix's Wiki
Jump to navigation Jump to search


Overview

Trusted Firmware-A (TF-A) is a reference implementation of secure world software for Arm A-Profile architectures (Armv8-A and Armv7-A), including an Exception Level 3 (EL3) Secure Monitor. It provides a suitable starting point for productization of secure world boot and runtime firmware, in either the AArch32 or AArch64 execution states.

Building ARM Truster Firmware for RNX-RZG2UL-OSM

This U-BOOT is based on https://github.com/renesas-rz/renesas-u-boot-cip, branch

Set up the cross-compiler and CPU architecture

$ export ARCH=arm64
$ export CROSS_COMPILE=/opt/cross/aarch64-ronetix-linux-11.1/bin/aarch64-ronetix-linux-gnu-

Cross-compiler can be downloaded from here: http://download.ronetix.at/toolchains/crosstool-ng

Clone the latest revision

$ git clone https://github.com/ronetix/arm-trusted-firmware.git
$ cd arm-trusted-firmware
$ git checkout remotes/origin/v2.9/rz -b v2.9/rz

Build

$ make PLAT=g2ul BOARD=g2ul_smarc SOC_TYPE=1 SPI_FLASH=AT25QL128A
$ make fiptool

Build Results

File Name Description
build/g2ul/release/bl2.bin BL2 bootloader
build/g2ul/release/bl31.bin BL3 bootloader
tools/fiptool/fiptool FIP tool

Add boot parameters to bl2.bin

In order to boot bl2.bin, the Renesas RZ/G2UL internal bootloaders needs a boot parameters block. The boot parameters block is 512 bytes long, and the bl2.bin is located immediately after it.

$ tools/renesas/bootparameters/bootparameters.sh build/g2ul/release/bl2.bin

The result is bl2_bp.bin, which should be programmed at address 0x0 in the QSPI Flash.

See also