From 46a7b290e558e4cff62eec4b150658502f761fd3 Mon Sep 17 00:00:00 2001 From: Sudan Landge Date: Tue, 27 May 2025 15:46:00 +0100 Subject: [PATCH] doc: arm: MPS4 Corstone-320 Add documentation for MPS4 board. Signed-off-by: Sudan Landge --- boards/arm/mps4/doc/index.rst | 132 ++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 boards/arm/mps4/doc/index.rst diff --git a/boards/arm/mps4/doc/index.rst b/boards/arm/mps4/doc/index.rst new file mode 100644 index 00000000000..bee996f9913 --- /dev/null +++ b/boards/arm/mps4/doc/index.rst @@ -0,0 +1,132 @@ +.. zephyr:board:: mps4 + +Overview +******** + +The MPS4 board configuration is used by Zephyr applications that run +on the MPS4 board. + +`Corstone-320 FVP`_ is an Arm reference subsystem for +secure System on Chips containing an Armv8.1-M Cortex-M85 processor, +LCM, KMU and SAM IPs and, an Ethos-U85 neural network processor. +They are available free of charge for Linux and Windows systems. +The FVPs have been selected for simulation since they provide access to the +Ethos-U85 NPU, which is unavailable in QEMU or other simulation platforms. + + +Zephyr board options +==================== + +.. tabs:: + + .. tab:: MPS4 Corstone-320 (FVP) + + The MPS4 FVP is an SoC with Cortex-M85 architecture. Zephyr provides support + for building for both Secure and Non-Secure firmware. + + The BOARD options are summarized below: + + +-------------------------------+-----------------------------------------------+ + | BOARD | Description | + +===============================+===============================================+ + | ``mps4/corstone320/fvp`` | For building Secure (or Secure-only) firmware | + +-------------------------------+-----------------------------------------------+ + | ``mps4/corstone320/fvp/ns`` | For building Non-Secure firmware | + +-------------------------------+-----------------------------------------------+ + + FPGA Usage: + - N/A. + + FVP Usage: + - To run with the FVP, first set environment variable ``ARMFVP_BIN_PATH`` before using it. Then you can run it with ``west build -t run``. + + .. code-block:: bash + + export ARMFVP_BIN_PATH=/path/to/fvp/directory + west build -b {BOARD qualifier from table above} samples/hello_world -t run + + To run the Fixed Virtual Platform simulation tool you must download "FVP model + for the Corstone-320 MPS4" from Arm and install it on your host PC. This board + has been tested with version 11.27.25 (Sep 24 2024). + + QEMU Usage: + - N/A. + +.. note:: + + - Board qualifier must include the variant name as mentioned above. + ``mps4/corstone320`` without the variant name is not a valid qualifier. + - ``mps4/corstone320/fvp/ns`` variant needs latest upstream TF-M release since Zephyr's current + TF-M doesn't support Corstone-320 FVP yet. + +Hardware +******** + +No H/W available yet, only ARMFVP simulated board variants are supported for now. + +Supported Features +=================== + +.. zephyr:board-supported-hw:: + +Serial Port +=========== + +The MPS4 has six UARTs. The Zephyr console output by default, uses +UART0. + +Serial port 0 on the Debug USB interface is the MCC board control console. + +Serial port 1 on the Debug USB interface is connected to UART 0. + +Serial port 2 on the Debug USB interface is connected to UART 1. + +Serial port 3 on the Debug USB interface is connected to UART 2. + +.. Programming and Debugging: + +Programming and Debugging +************************* + +Flashing +======== + +- N/A since the only support available is FVP. + +Building an application with Corstone-320 +----------------------------------------- + +You can build applications in the usual way. Here is an example for +the :zephyr:code-sample:`hello_world` application with Corstone-320. + +.. zephyr-app-commands:: + :zephyr-app: samples/hello_world + :board: mps4/corstone320/fvp + :goals: run + +Run with FVP and you should see the following message: + +.. code-block:: console + + Hello World! mps4 + +For more details refer to: + - `Corstone SSE-320 Reference Guide`_ + - `Cortex M85 Generic User Guide`_ + - `Arm Corstone-320 Reference Package Technical Overview`_ + - `Arm MPS4 FPGA Prototyping Board Technical Reference Manual`_ + +.. _Corstone-320 FVP: + https://developer.arm.com/tools-and-software/open-source-software/arm-platforms-software/arm-ecosystem-fvps + +.. _Corstone SSE-320 Reference Guide: + https://developer.arm.com/documentation/109760/0000/ + +.. _Cortex M85 Generic User Guide: + https://developer.arm.com/documentation/101924/latest + +.. _Arm Corstone-320 Reference Package Technical Overview: + https://developer.arm.com/documentation/109761/0000/ + +.. _Arm MPS4 FPGA Prototyping Board Technical Reference Manual: + https://developer.arm.com/documentation/102577/0000/