7.3.2.1. Fixed Virtual Platform (FVP) Support

An FVP provides a complete simulation of an Arm system. This is a generic term used for all kinds of vastly different and incompatible systems. One category of these systems are the FVP_Base family of FVPs. These are entirely virtual platforms, largely used for early feature development. They offer a large degrees of customisation but share a lot of similarities. The fvp platform in TF-A supports these platforms only. Despite the generic name, other FVPs (eg FVP_TC4) have their own dedicated TF-A platforms and will not work with this one.

Please refer to each FVP’s documentation for a detailed description of the model parameter options.

The latest version of the AArch64 build of TF-A has been tested on the following Arm FVPs without shifted affinities, and that do not support threaded CPU cores (64-bit host machine only).

Note

The FVP models used are version 11.28 Build 23.

  • FVP_Base_AEMvA-AEMvA

  • FVP_Base_RevC-2xAEMvA

  • FVP_Base_Cortex-A32

  • FVP_Base_Cortex-A35

  • FVP_Base_Cortex-A53

  • FVP_Base_Cortex-A55

  • FVP_Base_Cortex-A57x1-A53x1

  • FVP_Base_Cortex-A57x2-A53x4

  • FVP_Base_Cortex-A57

  • FVP_Base_Cortex-A57x4-A53x4

  • FVP_Base_Cortex-A65

  • FVP_Base_Cortex-A65AE

  • FVP_Base_Cortex-A72

  • FVP_Base_Cortex-A73

  • FVP_Base_Cortex-A73x4-A53x4

  • FVP_Base_Cortex-A75

  • FVP_Base_Cortex-A76

  • FVP_Base_Cortex-A76AE

  • FVP_Base_Cortex-A77

  • FVP_Base_Cortex-A78

  • FVP_Base_Cortex-A78AE

  • FVP_Base_Cortex-A78C

  • FVP_Base_Cortex-A710

  • FVP_Base_Cortex-X2

  • FVP_Base_Cortex-X4

  • FVP_Base_Cortex-X925

  • FVP_Base_Neoverse-E1

  • FVP_Base_Neoverse-N1

  • FVP_Base_Neoverse-N2

  • FVP_Base_Neoverse-V1

The latest version of the AArch32 build of TF-A has been tested on the following Arm FVPs without shifted affinities, and that do not support threaded CPU cores (64-bit host machine only).

  • FVP_Base_AEMvA

  • FVP_Base_AEMvA-AEMvA

  • FVP_Base_Cortex-A32

Note

The FVP_Base_RevC-2xAEMv8A FVP only supports shifted affinities, which is not compatible with legacy GIC configurations. Therefore this FVP does not support these legacy GIC configurations.

The Foundation and Base FVPs can be downloaded free of charge. See the Arm’s website for download options of all FVPs.

Note

The build numbers quoted above are those reported by launching the FVP with the --version parameter.

Note

Linaro provides a ramdisk image in prebuilt FVP configurations and full file systems that can be downloaded separately. To run an FVP with a virtio file system image an additional FVP configuration option -C bp.virtioblockdevice.image_path="<path-to>/<file-system-image> can be used.

Note

The software will not work on Version 1.0 of the Foundation FVP. The commands below would report an unhandled argument error in this case.

Note

FVPs can be launched with --cadi-server option such that a CADI-compliant debugger (for example, Arm DS-5) can connect to and control its execution.

Warning

Since FVP model Version 11.0 Build 11.0.34 and Version 8.5 Build 0.8.5202 the internal synchronisation timings changed compared to older versions of the models. The models can be launched with -Q 100 option if they are required to match the run time characteristics of the older versions.

All the above platforms have been tested with Linaro Release 20.01.


Copyright (c) 2019-2025, Arm Limited. All rights reserved.