blob: 9535005380489570176ac178cdf1381ce5320610 [file] [log] [blame]
Sandrine Bailleuxc5407692024-01-23 15:30:48 +01001Fixed Virtual Platform (FVP) Support
2------------------------------------
3
Boyan Karatotevfb3bd292025-03-31 11:41:37 +01004An |FVP| provides a complete simulation of an Arm system. This is a generic term
5used for all kinds of vastly different and incompatible systems. One category of
6these systems are the ``FVP_Base`` family of FVPs. These are entirely virtual
7platforms, largely used for early feature development. They offer a large
8degrees of customisation but share a lot of similarities. The ``fvp`` platform
9in TF-A supports these platforms only. Despite the generic name, other FVPs (eg
10FVP_TC4) have their own dedicated TF-A platforms and will not work with this one.
11
12Please refer to each FVP's documentation for a detailed description of the model
13parameter options.
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010014
15The latest version of the AArch64 build of TF-A has been tested on the following
16Arm FVPs without shifted affinities, and that do not support threaded CPU cores
17(64-bit host machine only).
18
19.. note::
Govindraj Raja74207a12025-02-25 10:29:58 -060020 The FVP models used are version 11.28 Build 23.
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010021
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010022- ``FVP_Base_AEMvA-AEMvA``
Manish V Badarkhe5699f842024-11-19 20:28:13 +000023- ``FVP_Base_RevC-2xAEMvA``
Govindraj Raja74207a12025-02-25 10:29:58 -060024- ``FVP_Base_Cortex-A32``
25- ``FVP_Base_Cortex-A35``
26- ``FVP_Base_Cortex-A53``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010027- ``FVP_Base_Cortex-A55``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010028- ``FVP_Base_Cortex-A57x1-A53x1``
29- ``FVP_Base_Cortex-A57x2-A53x4``
Govindraj Raja74207a12025-02-25 10:29:58 -060030- ``FVP_Base_Cortex-A57``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010031- ``FVP_Base_Cortex-A57x4-A53x4``
Govindraj Raja74207a12025-02-25 10:29:58 -060032- ``FVP_Base_Cortex-A65``
33- ``FVP_Base_Cortex-A65AE``
34- ``FVP_Base_Cortex-A72``
35- ``FVP_Base_Cortex-A73``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010036- ``FVP_Base_Cortex-A73x4-A53x4``
37- ``FVP_Base_Cortex-A75``
38- ``FVP_Base_Cortex-A76``
39- ``FVP_Base_Cortex-A76AE``
40- ``FVP_Base_Cortex-A77``
41- ``FVP_Base_Cortex-A78``
42- ``FVP_Base_Cortex-A78AE``
43- ``FVP_Base_Cortex-A78C``
Govindraj Raja74207a12025-02-25 10:29:58 -060044- ``FVP_Base_Cortex-A710``
Govindraj Rajae28ea932024-06-26 16:04:10 -050045- ``FVP_Base_Cortex-X2``
Govindraj Raja74207a12025-02-25 10:29:58 -060046- ``FVP_Base_Cortex-X4``
47- ``FVP_Base_Cortex-X925``
48- ``FVP_Base_Neoverse-E1``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010049- ``FVP_Base_Neoverse-N1``
Govindraj Rajae28ea932024-06-26 16:04:10 -050050- ``FVP_Base_Neoverse-N2``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010051- ``FVP_Base_Neoverse-V1``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010052
53The latest version of the AArch32 build of TF-A has been tested on the
54following Arm FVPs without shifted affinities, and that do not support threaded
55CPU cores (64-bit host machine only).
56
57- ``FVP_Base_AEMvA``
58- ``FVP_Base_AEMvA-AEMvA``
Govindraj Raja74207a12025-02-25 10:29:58 -060059- ``FVP_Base_Cortex-A32``
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010060
61.. note::
62 The ``FVP_Base_RevC-2xAEMv8A`` FVP only supports shifted affinities, which
63 is not compatible with legacy GIC configurations. Therefore this FVP does not
64 support these legacy GIC configurations.
65
Boyan Karatotevfb3bd292025-03-31 11:41:37 +010066The *Foundation* and *Base* FVPs can be downloaded free of charge. See the
67`Arm's website`_ for download options of all FVPs.
Sandrine Bailleuxc5407692024-01-23 15:30:48 +010068
69.. note::
70 The build numbers quoted above are those reported by launching the FVP
71 with the ``--version`` parameter.
72
73.. note::
74 Linaro provides a ramdisk image in prebuilt FVP configurations and full
75 file systems that can be downloaded separately. To run an FVP with a virtio
76 file system image an additional FVP configuration option
77 ``-C bp.virtioblockdevice.image_path="<path-to>/<file-system-image>`` can be
78 used.
79
80.. note::
81 The software will not work on Version 1.0 of the Foundation FVP.
82 The commands below would report an ``unhandled argument`` error in this case.
83
84.. note::
85 FVPs can be launched with ``--cadi-server`` option such that a
86 CADI-compliant debugger (for example, Arm DS-5) can connect to and control
87 its execution.
88
89.. warning::
90 Since FVP model Version 11.0 Build 11.0.34 and Version 8.5 Build 0.8.5202
91 the internal synchronisation timings changed compared to older versions of
92 the models. The models can be launched with ``-Q 100`` option if they are
93 required to match the run time characteristics of the older versions.
94
95All the above platforms have been tested with `Linaro Release 20.01`_.
96
97--------------
98
Govindraj Raja74207a12025-02-25 10:29:58 -060099*Copyright (c) 2019-2025, Arm Limited. All rights reserved.*
Sandrine Bailleuxc5407692024-01-23 15:30:48 +0100100
Boyan Karatotevfb3bd292025-03-31 11:41:37 +0100101.. _Arm's website: https://developer.arm.com/products/system-design/fixed-virtual-platforms
Sandrine Bailleuxc5407692024-01-23 15:30:48 +0100102.. _Linaro Release 20.01: http://releases.linaro.org/members/arm/platforms/20.01