u-boot/doc/board/armltd/vexpress64.rst
Peter Hoyes 8d78a6b674 vexpress64: Add ARMv8R-64 board variant
The ARMv8-R64 architecture introduces optional VMSA (paging based MMU)
support in the EL1/0 translation regime, which makes that part mostly
compatible to ARMv8-A.

Add a new board variant to describe the "BASE-R64" FVP model, which
inherits a lot from the existing v8-A FVP support. One major difference
is that the memory map in "inverted": DRAM starts at 0x0, MMIO is at
2GB [1].

 * Create new TARGET_VEXPRESS64_BASER_FVP target, sharing most of the
   exising configuration.
 * Implement inverted memory map in vexpress_aemv8.h
 * Create vexpress_aemv8r defconfig
 * Provide an MMU memory map for the BASER_FVP
 * Update vexpress64 documentation

At the moment the boot-wrapper is the only supported secure firmware. As
there is no official DT for the board yet, we rely on it being supplied
by the boot-wrapper into U-Boot, so use OF_HAS_PRIOR_STAGE, and go with
a dummy DT for now.

[1] https://developer.arm.com/documentation/100964/1114/Base-Platform/Base---memory/BaseR-Platform-memory-map

Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
[Andre: rebase and add Linux kernel header]
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
[trini: Add MAINTAINERS entry for Peter]
2022-04-01 15:03:03 -04:00

52 lines
No EOL
1.6 KiB
ReStructuredText

.. SPDX-License-Identifier: GPL-2.0
Arm Versatile Express
=====================
The vexpress_* board configuration supports the following platforms:
* FVP_Base_RevC-2xAEMvA
* FVP_BaseR_AEMv8R
* Juno development board
Fixed Virtual Platforms
-----------------------
The Fixed Virtual Platforms (FVP) are complete simulations of an Arm system,
including processor, memory and peripherals. They are set out in a "programmer's
view", which gives a comprehensive model on which to build and test software.
The supported FVPs are available free of charge and can be downloaded from the
Arm developer site [1]_ (user registration might be required).
Supported features:
* GICv3
* Generic timer
* PL011 UART
The default configuration assumes that U-Boot is bootstrapped using a suitable
bootloader, such as Trusted Firmware-A [4]_. The u-boot binary can be passed
into the TF-A build: ``make PLAT=<platform> all fip BL33=u-boot.bin``
The FVPs can be debugged using Arm Development Studio [2]_.
Juno
----
Juno is an Arm development board with the following features:
* Arm Cortex-A72/A57 and Arm Cortex-A53 in a "big.LITTLE" configuration
* A PCIe Gen2.0 bus with 4 lanes
* 8GB of DRAM
* GICv2
More details can be found in the board documentation [3]_.
References
----------
.. [1] https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms
.. [2] https://developer.arm.com/tools-and-software/embedded/arm-development-studio
.. [3] https://developer.arm.com/tools-and-software/development-boards/juno-development-board
.. [4] https://trustedfirmware-a.readthedocs.io/