aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorManish Pandey <manish.pandey2@arm.com>2021-02-02 12:15:50 +0000
committerTrustedFirmware Code Review <review@review.trustedfirmware.org>2021-02-02 12:15:50 +0000
commit477e28de58830f99a29c02a77bc94f8cc987c694 (patch)
treed40bf9e88044eb6d3b1243b5dc2c6de8a11655ca
parent6803d9894596e5981564a9350a0febe7ef6e3e0a (diff)
parentff46a41dc27a2bb9813842c918eca295c18f070b (diff)
downloadplatform_external_arm-trusted-firmware-477e28de58830f99a29c02a77bc94f8cc987c694.tar.gz
platform_external_arm-trusted-firmware-477e28de58830f99a29c02a77bc94f8cc987c694.tar.bz2
platform_external_arm-trusted-firmware-477e28de58830f99a29c02a77bc94f8cc987c694.zip
Merge changes from topic "marvell-armada-docs" into integration
* changes: docs: marvell: Replace ESPRESSObin-Ultra TF-A build example by full example how to build production release of Marvell firmware image docs: marvell: Fix description of flash-image.bin image docs: marvell: Add information into CLOCKSPRESET option how to identify CPU frequency docs: marvell: Reformat DDR_TOPOLOGY option and mention EspressoBin-Ultra board docs: marvell: Move Supported Marvell platforms to PLAT build option
-rw-r--r--docs/plat/marvell/armada/build.rst72
1 files changed, 46 insertions, 26 deletions
diff --git a/docs/plat/marvell/armada/build.rst b/docs/plat/marvell/armada/build.rst
index ae67ab0b0..e55ce3c09 100644
--- a/docs/plat/marvell/armada/build.rst
+++ b/docs/plat/marvell/armada/build.rst
@@ -51,6 +51,18 @@ Install ARM 32-bit cross compiler, which is required for building WTMI image for
There are several build options:
+- PLAT
+
+ Supported Marvell platforms are:
+
+ - a3700 - A3720 DB, EspressoBin and Turris MOX
+ - a70x0
+ - a70x0_amc - AMC board
+ - a80x0
+ - a80x0_mcbin - MacchiatoBin
+ - a80x0_puzzle - IEI Puzzle-M801
+ - t9130 - CN913x
+
- DEBUG
Default is without debug information (=0). in order to enable it use ``DEBUG=1``.
@@ -139,15 +151,15 @@ There are several build options:
For Armada37x0 only, the DDR topology map index/name, default is 0.
Supported Options:
- - 0 - DDR3 1CS: DB-88F3720-DDR3-Modular (512MB); EspressoBIN (512MB)
- - 1 - DDR4 1CS: DB-88F3720-DDR4-Modular (512MB)
- - 2 - DDR3 2CS: EspressoBIN V3-V5 (1GB 2CS)
- - 3 - DDR4 2CS: DB-88F3720-DDR4-Modular (4GB)
- - 4 - DDR3 1CS: DB-88F3720-DDR3-Modular (1GB); EspressoBIN V3-V5 (1GB 1CS)
- - 5 - DDR4 1CS: EspressoBin V7 (1GB)
- - 6 - DDR4 2CS: EspressoBin V7 (2GB)
- - 7 - DDR3 2CS: EspressoBin V3-V5 (2GB)
- - CUST - CUSTOMER: Customer board, DDR3 1CS 512MB
+ - 0 - DDR3 1CS 512MB (DB-88F3720-DDR3-Modular, EspressoBin V3-V5)
+ - 1 - DDR4 1CS 512MB (DB-88F3720-DDR4-Modular)
+ - 2 - DDR3 2CS 1GB (EspressoBin V3-V5)
+ - 3 - DDR4 2CS 4GB (DB-88F3720-DDR4-Modular)
+ - 4 - DDR3 1CS 1GB (DB-88F3720-DDR3-Modular, EspressoBin V3-V5)
+ - 5 - DDR4 1CS 1GB (EspressoBin V7, EspressoBin-Ultra)
+ - 6 - DDR4 2CS 2GB (EspressoBin V7)
+ - 7 - DDR3 2CS 2GB (EspressoBin V3-V5)
+ - CUST - CUSTOMER BOARD (Customer board settings)
- CLOCKSPRESET
@@ -159,6 +171,13 @@ There are several build options:
- CPU_1000_DDR_800 - CPU at 1000 MHz, DDR at 800 MHz
- CPU_1200_DDR_750 - CPU at 1200 MHz, DDR at 750 MHz
+ Look at Armada37x0 chip package marking on board to identify correct CPU frequency.
+ The last line on package marking (next line after the 88F37x0 line) should contain:
+
+ - C080 or I080 - chip with 800 MHz CPU - use ``CLOCKSPRESET=CPU_800_DDR_800``
+ - C100 or I100 - chip with 1000 MHz CPU - use ``CLOCKSPRESET=CPU_1000_DDR_800``
+ - C120 - chip with 1200 MHz CPU - use ``CLOCKSPRESET=CPU_1200_DDR_750``
+
- BOOTDEV
For Armada37x0 only, the flash boot device, default is ``SPINOR``.
@@ -254,24 +273,24 @@ To build just TF-A without WTMI image (useful for A3720 Turris MOX board), run f
> make USE_COHERENT_MEM=0 PLAT=a3700 CM3_SYSTEM_RESET=1 BL33=/path/to/u-boot.bin \
CROSS_COMPILE=aarch64-linux-gnu- mrvl_bootimage
-You can build TF-A for the Globalscale ESPRESSObin-Ultra board (DDR4, 1 GB) by running the following command:
+Here is full example how to build production release of Marvell firmware image (concatenated
+binary of Marvell secure firmware, TF-A and U-Boot) for EspressoBin board (PLAT=a3700) with
+1GHz CPU (CLOCKSPRESET=CPU_1000_DDR_800) and 1GB DDR4 RAM (DDR_TOPOLOGY=5):
.. code:: shell
- > make DEBUG=1 USE_COHERENT_MEM=0 LOG_LEVEL=20 CLOCKSPRESET=CPU_1200_DDR_750 \
- MARVELL_SECURE_BOOT=0 DDR_TOPOLOGY=5 BOOTDEV=SPINOR PARTNUM=0 PLAT=a3700 \
- MV_DDR_PATH=/path/to/mv-ddr-marvell/ WTP=/path/to/A3700-utils-marvell/ \
- CRYPTOPP_PATH=/path/to/cryptopp/ BL33=/path/to/u-boot.bin \
- all fip mrvl_bootimage mrvl_flash
+ > git clone https://review.trustedfirmware.org/TF-A/trusted-firmware-a
+ > git clone https://gitlab.denx.de/u-boot/u-boot.git
+ > git clone https://github.com/weidai11/cryptopp.git
+ > git clone https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git -b master
+ > git clone https://github.com/MarvellEmbeddedProcessors/A3700-utils-marvell.git -b master
+ > make -C u-boot CROSS_COMPILE=aarch64-linux-gnu- mvebu_espressobin-88f3720_defconfig u-boot.bin
+ > make -C trusted-firmware-a CROSS_COMPILE=aarch64-linux-gnu- CROSS_CM3=arm-linux-gnueabi- \
+ USE_COHERENT_MEM=0 PLAT=a3700 CLOCKSPRESET=CPU_1000_DDR_800 DDR_TOPOLOGY=5 \
+ MV_DDR_PATH=$PWD/mv-ddr-marvell/ WTP=$PWD/A3700-utils-marvell/ CRYPTOPP_PATH=$PWD/cryptopp/ \
+ BL33=$PWD/u-boot/u-boot.bin mrvl_flash
-Supported MARVELL_PLATFORM are:
- - a3700 (for both A3720 DB and EspressoBin)
- - a70x0
- - a70x0_amc (for AMC board)
- - a80x0
- - a80x0_mcbin (for MacchiatoBin)
- - a80x0_puzzle (for IEI Puzzle-M801)
- - t9130 (OcteonTX2 CN913x)
+Produced Marvell firmware flash image: ``trusted-firmware-a/build/a3700/release/flash-image.bin``
Special Build Flags
--------------------
@@ -295,14 +314,15 @@ Build output
------------
Marvell's TF-A compilation generates 8 files:
- - ble.bin - BLe image
+ - ble.bin - BLe image (not available for Armada37x0)
- bl1.bin - BL1 image
- bl2.bin - BL2 image
- bl31.bin - BL31 image
- fip.bin - FIP image (contains BL2, BL31 & BL33 (U-Boot) images)
- boot-image.bin - TF-A image (contains BL1 and FIP images)
- - flash-image.bin - Image which contains boot-image.bin and SPL image.
- Should be placed on the boot flash/device.
+ - flash-image.bin - Flashable Marvell firmware image. For Armada37x0 it
+ contains TIM, WTMI and boot-image.bin images. For other platforms it contains
+ BLe and boot-image.bin images. Should be placed on the boot flash/device.
- uart-images.tgz.bin - GZIPed TAR archive which contains Armada37x0 images
for booting via UART. Could be loaded via Marvell's WtpDownload tool from
A3700-utils-marvell repository.