arm-trusted-firmware/docs/plat/arm/fvp/fvp-build-options.rst
Sandrine Bailleux c540769349 docs(fvp): restructure FVP platform documentation
The Arm FVP documentation has grown organically over the years. As a
result, it has become a big document, which can be difficult to digest.

Also, the organization of some of the sections does not make sense. In
particular, all "Running on the ... FVP" sections live under a section
named "Booting a preloaded kernel image (Base FVP)". To illustrate this,
here is the current table of contents:

  Arm Fixed Virtual Platforms (FVP)
    Fixed Virtual Platform (FVP) Support
    Arm FVP Platform Specific Build Options
    Booting Firmware Update images
    Booting an EL3 payload
    Booting a preloaded kernel image (Base FVP)
      Obtaining the Flattened Device Treesp
      Running on the Foundation FVP with reset to BL1 entrypoint
      Running on the AEMv8 Base FVP with reset to BL1 entrypoint
      Running on the AEMv8 Base FVP (AArch32) with reset to BL1 entrypoint
      Running on the Cortex-A57-A53 Base FVP with reset to BL1 entrypoint
      Running on the Cortex-A32 Base FVP (AArch32) with reset to BL1 entrypoint
      Running on the AEMv8 Base FVP with reset to BL31 entrypoint
      Running on the AEMv8 Base FVP (AArch32) with reset to SP_MIN entrypoint
      Running on the Cortex-A57-A53 Base FVP with reset to BL31 entrypoint
      Running on the Cortex-A32 Base FVP (AArch32) with reset to SP_MIN entrypoint

This patch breaks down this document in sub-documents, which are now
included from the index file. The table of contents (ToC) reflects the
new documents hierarchy. The depth of the ToC has been reduced to
simplify the index page. Here is what it looks like now:

  Arm Fixed Virtual Platforms (FVP)
    Fixed Virtual Platform (FVP) Support
    Arm FVP Platform Specific Build Options
    Running on the Foundation FVP
    Running on the AEMv8 Base FVP
    Running on the Cortex-A57-A53 Base FVP
    Running on the Cortex-A32 Base FVP (AArch32)
    Booting Firmware Update images
    Booting an EL3 payload
    Booting a preloaded kernel image (Base FVP)

Apart from moving information around in separate files, this patch also
makes the following minor changes to the contents:

 - Add a brief introduction about FVPs in the index page.
 - Change some of the titles names for conciseness.

Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Icb650e0ec2c7a86ccd6e7eea4e16a84c41442c96
2024-04-22 08:54:30 +01:00

51 lines
2.4 KiB
ReStructuredText

.. _build_options_arm_fvp_platform:
Arm FVP Platform Specific Build Options
---------------------------------------
- ``FVP_CLUSTER_COUNT`` : Configures the cluster count to be used to
build the topology tree within TF-A. By default TF-A is configured for dual
cluster topology and this option can be used to override the default value.
- ``FVP_INTERCONNECT_DRIVER``: Selects the interconnect driver to be built. The
default interconnect driver depends on the value of ``FVP_CLUSTER_COUNT`` as
explained in the options below:
- ``FVP_CCI`` : The CCI driver is selected. This is the default
if 0 < ``FVP_CLUSTER_COUNT`` <= 2.
- ``FVP_CCN`` : The CCN driver is selected. This is the default
if ``FVP_CLUSTER_COUNT`` > 2.
- ``FVP_MAX_CPUS_PER_CLUSTER``: Sets the maximum number of CPUs implemented in
a single cluster. This option defaults to 4.
- ``FVP_MAX_PE_PER_CPU``: Sets the maximum number of PEs implemented on any CPU
in the system. This option defaults to 1. Note that the build option
``ARM_PLAT_MT`` doesn't have any effect on FVP platforms.
- ``FVP_USE_GIC_DRIVER`` : Selects the GIC driver to be built. Options:
- ``FVP_GICV2`` : The GICv2 only driver is selected
- ``FVP_GICV3`` : The GICv3 only driver is selected (default option)
- ``FVP_HW_CONFIG_DTS`` : Specify the path to the DTS file to be compiled
to DTB and packaged in FIP as the HW_CONFIG. See :ref:`Firmware Design` for
details on HW_CONFIG. By default, this is initialized to a sensible DTS
file in ``fdts/`` folder depending on other build options. But some cases,
like shifted affinity format for MPIDR, cannot be detected at build time
and this option is needed to specify the appropriate DTS file.
- ``FVP_HW_CONFIG`` : Specify the path to the HW_CONFIG blob to be packaged in
FIP. See :ref:`Firmware Design` for details on HW_CONFIG. This option is
similar to the ``FVP_HW_CONFIG_DTS`` option, but it directly specifies the
HW_CONFIG blob instead of the DTS file. This option is useful to override
the default HW_CONFIG selected by the build system.
- ``FVP_GICR_REGION_PROTECTION``: Mark the redistributor pages of
inactive/fused CPU cores as read-only. The default value of this option
is ``0``, which means the redistributor pages of all CPU cores are marked
as read and write.
--------------
*Copyright (c) 2019-2024, Arm Limited. All rights reserved.*