ARM BASE RevC AEMv8A Fixed Virtual Platforms¶
Overview¶
This board configuration will use ARM Fixed Virtual Platforms(FVP) to emulate a generic Armv8-A 64-bit hardware platform.
This configuration provides support for a generic Armv8-A 64-bit CPU and these devices:
GICv3 interrupt controller
ARM architected (Generic) timer
PL011 UART controller
Hardware¶
Supported Features¶
The following hardware features are supported:
Interface |
Controller |
Driver/Component |
---|---|---|
GICv3 |
on-chip |
interrupt controller |
PL011 UART |
on-chip |
serial port |
ARM GENERIC TIMER |
on-chip |
system clock |
The kernel currently does not support other hardware features on this platform.
Devices¶
System Clock¶
This board configuration uses a system clock frequency of 100 MHz.
Serial Port¶
This board configuration uses a single serial communication channel with the UART0.
Known Problems or Limitations¶
Programming and Debugging¶
Use this configuration to build basic Zephyr applications and kernel tests in the ARM FVP emulated environment, for example, with the Synchronization Sample:
# From the root of the zephyr repository
west build -b fvp_base_revc_2xaemv8a samples/synchronization
This will build an image with the synchronization sample app.
To run with FVP, ARMFVP_BIN_PATH must be set before running:
e.g. export ARMFVP_BIN_PATH=<path/to/fvp/dir>
Running Zephyr at EL1NS¶
In order to run Zephyr as EL1NS with CONFIG_ARMV8_A_NS
, you’ll need a proper
Trusted Firmware loaded in the FVP model.
The ARM TF-A for FVP can be used to run Zephyr as preloaded BL33 payload.
Checkout and Build the TF-A:
git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git --depth 1
cd trusted-firmware-a/
make PLAT=fvp PRELOADED_BL33_BASE="0x88000000" all fip
then export the ARMFVP_BL1_FILE` and ``ARMFVP_FIP_FILE
environment variables:
export ARMFVP_BL1_FILE=<path/to/tfa-a/build/fvp/release/bl1.bin>
export ARMFVP_FIP_FILE=<path/to/tfa-a/build/fvp/release/fip.bin>
Debugging¶
Refer to the detailed overview about Application Debugging.
Networking¶
References¶
(ID070919) Arm® Architecture Reference Manual - Armv8, for Armv8-A architecture profile
AArch64 Exception and Interrupt Handling
https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms