| Running Tests |
| ============= |
| |
| Refer to the `Juno and FVP platform documentation`_ in the `TF-A documentation`. |
| The same instructions mostly apply to running the TF-A Tests on those two |
| platforms. The difference is that the following images are not needed here: |
| |
| - Normal World bootloader. The TFTF replaces it in the boot flow; |
| |
| - Linux Kernel; |
| |
| - Device tree; |
| |
| - Filesystem. |
| |
| In other words, only the following software images are needed: |
| |
| - ``BL1`` firmware image; |
| |
| - ``FIP`` image containing the following images: |
| |
| - ``BL2``; |
| - ``SCP_BL2`` if required by the platform (e.g. Juno); |
| - ``BL31``; |
| - ``BL32`` (optional); |
| - ``tftf.bin`` (standing as the BL33 image). |
| |
| Running Manual Tests on FVP |
| --------------------------- |
| |
| The manual tests rely on storing state in non-volatile memory (NVM) across |
| reboot. On FVP the NVM is not persistent across reboots, so the following |
| flag must be used to write the NVM to a file when the model exits. |
| |
| :: |
| |
| -C bp.flashloader0.fnameWrite=[filename] |
| |
| To ensure the model exits on shutdown the following flag must be used: |
| |
| :: |
| |
| -C bp.ve_sysregs.exit_on_shutdown=1 |
| |
| After the model has been shutdown, this file must be fed back in to continue |
| the test. Note this flash file includes the FIP image, so the original fip.bin |
| does not need to be passed in. The following flag is used: |
| |
| :: |
| |
| -C bp.flashloader0.fname=[filename] |
| |
| Running Firmware Update (FWU) Tests |
| ----------------------------------- |
| |
| As previously mentioned in :ref:`build_putting_together`, there are a |
| couple of extra images involved when running the FWU tests. They need to be |
| loaded at the right addresses, which depend on the platform. |
| |
| On FVP |
| ^^^^^^ |
| |
| In addition to the usual BL1 and FIP images, the following extra images must be |
| loaded: |
| |
| - ``NS_BL1U`` image at address ``0x0BEB8000`` (i.e. NS_BL1U_BASE macro in TF-A) |
| - ``FWU_FIP`` image at address ``0x08400000`` (i.e. NS_BL2U_BASE macro in TF-A) |
| - ``Backup FIP`` image at address ``0x09000000`` (i.e. FIP_BKP_ADDRESS macro in |
| TF-A tests). |
| |
| An example script is provided in ``scripts/run_fwu_fvp.sh``. |
| |
| On Juno |
| ^^^^^^^ |
| |
| The same set of extra images and load addresses apply for Juno as for FVP. |
| |
| The new images must be programmed in flash memory by adding some entries in the |
| ``SITE1/HBI0262x/images.txt`` configuration file on the Juno SD card (where |
| ``x`` depends on the revision of the Juno board). Refer to the `Juno Getting |
| Started Guide`_, section 2.3 "Flash memory programming" for more |
| information. Users should ensure these do not overlap with any other entries in |
| the file. |
| |
| Addresses in this file are expressed as an offset from the base address of the |
| flash (that is, ``0x08000000``). |
| |
| :: |
| |
| NOR10UPDATE: AUTO ; Image Update:NONE/AUTO/FORCE |
| NOR10ADDRESS: 0x00400000 ; Image Flash Address |
| NOR10FILE: \SOFTWARE\fwu_fip.bin ; Image File Name |
| NOR10LOAD: 00000000 ; Image Load Address |
| NOR10ENTRY: 00000000 ; Image Entry Point |
| |
| NOR11UPDATE: AUTO ; Image Update:NONE/AUTO/FORCE |
| NOR11ADDRESS: 0x03EB8000 ; Image Flash Address |
| NOR11FILE: \SOFTWARE\ns_bl1u.bin ; Image File Name |
| NOR11LOAD: 00000000 ; Image Load Address |
| NOR11ENTRY: 00000000 ; Image Load Address |
| |
| NOR12UPDATE: AUTO ; Image Update:NONE/AUTO/FORCE |
| NOR12ADDRESS: 0x01000000 ; Image Flash Address |
| NOR12FILE: \SOFTWARE\backup_fip.bin ; Image File Name |
| NOR12LOAD: 00000000 ; Image Load Address |
| NOR12ENTRY: 00000000 ; Image Entry Point |
| |
| -------------- |
| |
| *Copyright (c) 2019, Arm Limited. All rights reserved.* |
| |
| .. _Juno Getting Started Guide: http://infocenter.arm.com/help/topic/com.arm.doc.dui0928e/DUI0928E_juno_arm_development_platform_gsg.pdf |
| .. _Juno and FVP platform documentation: https://trustedfirmware-a.readthedocs.io/en/latest/plat/ |
| .. _TF-A documentation: https://trustedfirmware-a.readthedocs.org |