Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 1 | Fixed Virtual Platform (FVP) Support |
| 2 | ------------------------------------ |
| 3 | |
Boyan Karatotev | fb3bd29 | 2025-03-31 11:41:37 +0100 | [diff] [blame] | 4 | An |FVP| provides a complete simulation of an Arm system. This is a generic term |
| 5 | used for all kinds of vastly different and incompatible systems. One category of |
| 6 | these systems are the ``FVP_Base`` family of FVPs. These are entirely virtual |
| 7 | platforms, largely used for early feature development. They offer a large |
| 8 | degrees of customisation but share a lot of similarities. The ``fvp`` platform |
| 9 | in TF-A supports these platforms only. Despite the generic name, other FVPs (eg |
| 10 | FVP_TC4) have their own dedicated TF-A platforms and will not work with this one. |
| 11 | |
| 12 | Please refer to each FVP's documentation for a detailed description of the model |
| 13 | parameter options. |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 14 | |
| 15 | The latest version of the AArch64 build of TF-A has been tested on the following |
| 16 | Arm FVPs without shifted affinities, and that do not support threaded CPU cores |
| 17 | (64-bit host machine only). |
| 18 | |
| 19 | .. note:: |
Govindraj Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 20 | The FVP models used are version 11.28 Build 23. |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 21 | |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 22 | - ``FVP_Base_AEMvA-AEMvA`` |
Manish V Badarkhe | 5699f84 | 2024-11-19 20:28:13 +0000 | [diff] [blame] | 23 | - ``FVP_Base_RevC-2xAEMvA`` |
Govindraj Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 24 | - ``FVP_Base_Cortex-A32`` |
| 25 | - ``FVP_Base_Cortex-A35`` |
| 26 | - ``FVP_Base_Cortex-A53`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 27 | - ``FVP_Base_Cortex-A55`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 28 | - ``FVP_Base_Cortex-A57x1-A53x1`` |
| 29 | - ``FVP_Base_Cortex-A57x2-A53x4`` |
Govindraj Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 30 | - ``FVP_Base_Cortex-A57`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 31 | - ``FVP_Base_Cortex-A57x4-A53x4`` |
Govindraj Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 32 | - ``FVP_Base_Cortex-A65`` |
| 33 | - ``FVP_Base_Cortex-A65AE`` |
| 34 | - ``FVP_Base_Cortex-A72`` |
| 35 | - ``FVP_Base_Cortex-A73`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 36 | - ``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 Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 44 | - ``FVP_Base_Cortex-A710`` |
Govindraj Raja | e28ea93 | 2024-06-26 16:04:10 -0500 | [diff] [blame] | 45 | - ``FVP_Base_Cortex-X2`` |
Govindraj Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 46 | - ``FVP_Base_Cortex-X4`` |
| 47 | - ``FVP_Base_Cortex-X925`` |
| 48 | - ``FVP_Base_Neoverse-E1`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 49 | - ``FVP_Base_Neoverse-N1`` |
Govindraj Raja | e28ea93 | 2024-06-26 16:04:10 -0500 | [diff] [blame] | 50 | - ``FVP_Base_Neoverse-N2`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 51 | - ``FVP_Base_Neoverse-V1`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 52 | |
| 53 | The latest version of the AArch32 build of TF-A has been tested on the |
| 54 | following Arm FVPs without shifted affinities, and that do not support threaded |
| 55 | CPU cores (64-bit host machine only). |
| 56 | |
| 57 | - ``FVP_Base_AEMvA`` |
| 58 | - ``FVP_Base_AEMvA-AEMvA`` |
Govindraj Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 59 | - ``FVP_Base_Cortex-A32`` |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 60 | |
| 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 Karatotev | fb3bd29 | 2025-03-31 11:41:37 +0100 | [diff] [blame] | 66 | The *Foundation* and *Base* FVPs can be downloaded free of charge. See the |
| 67 | `Arm's website`_ for download options of all FVPs. |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 68 | |
| 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 | |
| 95 | All the above platforms have been tested with `Linaro Release 20.01`_. |
| 96 | |
| 97 | -------------- |
| 98 | |
Govindraj Raja | 74207a1 | 2025-02-25 10:29:58 -0600 | [diff] [blame] | 99 | *Copyright (c) 2019-2025, Arm Limited. All rights reserved.* |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 100 | |
Boyan Karatotev | fb3bd29 | 2025-03-31 11:41:37 +0100 | [diff] [blame] | 101 | .. _Arm's website: https://developer.arm.com/products/system-design/fixed-virtual-platforms |
Sandrine Bailleux | c540769 | 2024-01-23 15:30:48 +0100 | [diff] [blame] | 102 | .. _Linaro Release 20.01: http://releases.linaro.org/members/arm/platforms/20.01 |