arm-trusted-firmware/plat/arm/board/arm_fpga
Oliver Swede 5cfe699f2b plat/arm/board/arm_fpga: Use preloaded BL33 alternative boot flow
This makes use of the PRELOADED_BL33_BASE flag to indicate to BL31 that
the BL33 payload (kernel) has already been loaded and resides in memory;
BL31 will then jump to the non-secure address.

For this port the BL33 payload is the Linux kernel, and in accordance
with the pre-kernel setup requirements (as specified in the `Booting
AArch64 Linux' documentation:
https://www.kernel.org/doc/Documentation/arm64/booting.txt),
this change also sets up the primary CPU's registers x0-x3 so they are
the expected values, which includes the address of the DTB at x0.

An external linker script is currently required to combine BL31, the
BL33 payload, and any other software images to create an ELF file that
can be uploaded to the FPGA board along with the bit file. It therefore
has dependencies on the value of PRELOADED_BL33_BASE (kernel base) and
the DTB base (plus any other relevant base addresses used to
distinguish the different ELF sections), both of which are set in this
patch.

Signed-off-by: Oliver Swede <oli.swede@arm.com>
Change-Id: If7ae8ee82d1e09fb05f553f6077ae13680dbf66b
2020-03-26 20:22:33 +00:00
..
aarch64 plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00
include plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00
fpga_bl31_setup.c plat/arm/board/arm_fpga: Use preloaded BL33 alternative boot flow 2020-03-26 20:22:33 +00:00
fpga_console.c plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00
fpga_def.h plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00
fpga_pm.c plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00
fpga_private.h plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00
fpga_topology.c plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00
platform.mk plat/arm/board/arm_fpga: Enable basic BL31 port for an FPGA image 2020-03-26 20:22:30 +00:00