Browse Source

Marvell/SolidRun: Rework Readme.md files

This patch reworks Readme.md files of Marvell and SolidRun
platforms as follows:
* Add supported features list.
* Leave minmal EDK2 build command.
* Add 'NOTE' box about INCLUDE_TFTP_COMMAND build flag.
* Move full firmware image build/burn howtos to external wiki pages.
* Add links and update paragraphs.

Signed-off-by: Marcin Wojtas <mw@semihalf.com>
Reviewed-by: Sunny Wang <sunny.wang@arm.com>
Grzegorz Bernacki 2 years ago
parent
commit
c06b98a171

+ 38 - 66
Platform/Marvell/Cn913xDb/Readme.md

@@ -5,93 +5,65 @@
 
 This is a port of 64-bit TianoCore EDK II firmware for the Marvell CN913x Development Board.
 
-# Building the firmware
-
-## Prepare toolchain (for cross-compilation only):
-
-1. Download the toolchain:
-
-   ```
-   wget https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz
-   ```
+# Supported features
 
-1. After extracting, setup the path and compiler prefix to GCC5\_AARCH64\_PREFIX variable:
+Features supported in EDK2:
 
-   ```
-   export GCC5_AARCH64_PREFIX=<toolchain_path>/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
-   ```
+* 1x PCIE root complex
+* Networking:
+  * 3x 10 GbE via SFP+
+  * 2x 1 GbE RGMII via RJ45
+* 5x USB 2.0/3.0
+* 3x SATA
+* 2x uSD
+* 1x eMMC
+* RTC
+* SPI flash & memory-mapped variable storage access
+* I2C
+* GPIO
 
-## Prepare prerequisites
+Hardware description:
 
-1. Create a new folder (directory) on your local development machine
-   for use as your workspace. This example uses `/work/git/tianocore`, modify as
-   appropriate for your needs.
+* ACPI (default)
+* Device Tree
 
-   ```
-   $ export WORKSPACE=/work/git/tianocore
-   $ mkdir -p $WORKSPACE
-   $ cd $WORKSPACE
-   ```
+Others:
 
-1. Clone the Trusted Firmware repository:
+* Signed capsule update
+* X64 option ROM emulator
 
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git
-   ```
-1. Clone repository for auxiliary firmware on the SoC co-processors and checkout to binaries-marvell-armada-SDK10.0.1.0:
-
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://github.com/MarvellEmbeddedProcessors/binaries-marvell.git
-   $ cd binaries-marvell/
-   $ git checkout -b binaries-marvell-armada-SDK10.0.1.0 origin/binaries-marvell-armada-SDK10.0.1.0
-   ```
-1. Clone the DDR training code from:
+# Building the firmware
 
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git
-   ```
 ## Prepare EDKII environment:
 
-Please follow instructions from "Obtaining source code" and "Manual building" from the top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-platforms#readme).
+Please follow instructions from [Obtaining source code](https://github.com/tianocore/edk2-platforms#obtaining-source-code)
+and [Manual building](https://github.com/tianocore/edk2-platforms#manual-building) from the
+top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-platforms#readme).
 
 ## Build EDKII:
 
-1. Use below build command:
+Use below build command:
 
-   ```
-   $ cd ${WORKSPACE}
-   $ build -a AARCH64 -t GCC5 -b RELEASE -D CN9132 -D INCLUDE_TFTP_COMMAND -D CAPSULE_ENABLE -p Platform/Marvell/Cn913xDb/Cn913xDbA.dsc
-   ```
+  ```
+  $ build -a AARCH64 -t GCC5 -b RELEASE -D CN9132 -D CAPSULE_ENABLE -D X64EMU_ENABLE -p Platform/Marvell/Cn913xDb/Cn913xDbA.dsc
+  ```
 
-## Build the final firmware image:
+---
+**NOTE**
 
-1. Set BL33 variable to path to EDK II output binary:
+'-D INCLUDE_TFTP_COMMAND' is optional and can be added in order to enable `tftp` command in UEFI Shell.
 
-   ```
-   $ export BL33=${WORKSPACE}/Build/Cn9132DbA-AARCH64/RELEASE_GCC5/FV/ARMADA_EFI.fd
-   ```
-1. Export SCP_BL2 variable:
+---
 
-   ```
-   $ export SCP_BL2=${WORKSKPACE}/binaries-marvell/mrvl_scp_bl2.img
-   ```
-1. Export compiler variables (for cross-compilation only):
+## Build the final firmware image:
 
-   ```
-   $ export ARCH=arm64
-   $ export CROSS_COMPILE=<toolchain_path>/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
-   ```
-1. Build the image:
+In addition to EDKII binary, the complete firmware image comprises the TF-A and other components.
+A complete build instruction can be found at [wiki page](https://github.com/Semihalf/edk2-platforms/wiki/Build_firmware).
 
-   ```
-   $ cd ${WORKSPACE}/trusted-firmware-a/
-   $ make LOG_LEVEL=20 MV_DDR_PATH=${WORKSPACE}/mv-ddr-marvell CP_NUM=3 PLAT=t9130 all fip mrvl_flash
+## Burning the firmware
 
-   ```
-The firmware image `flash-image.bin` can be found in `build/t9130/release/` directory.
+Please follow instruction at [wiki page](https://github.com/Semihalf/edk2-platforms/wiki/Burning_firmware)
+to burn image to desired boot device.
 
 # ARM System Ready certification.
 

+ 44 - 69
Platform/SolidRun/Armada80x0McBin/Readme.md

@@ -3,94 +3,69 @@
 
 # Summary
 
-This is a port of 64-bit TianoCore EDK II firmware for the SolidRun MacchiatoBin platform based on the Marvell ARMADA 8040 SoC.
+This is a port of 64-bit TianoCore EDK II firmware for the [SolidRun MacchiatoBin Double Shot](https://solidrun.atlassian.net/wiki/spaces/developer/pages/286655749/MACCHIATObin+Single+Double+Shot+Quick+Start+Guide)
+platform based on the Marvell ARMADA 8040 SoC.
 
-# Building the firmware
+# Supported features
 
-## Prepare toolchain (for cross-compilation only):
+Features supported in EDK2:
 
-1. Download the toolchain:
+* 1x PCIE x4
+* Networking:
+  * 2x 10 GbE via SFP+ / RJ45
+  * 1x 2500 Base-X via SFP+
+  * 1x 1 GbE SGMII via RJ45
+* 1x USB 3.0
+* 2x USB 2.0
+* 3x SATA
+* 1x uSD
+* 1x eMMC
+* RTC
+* SPI flash & memory-mapped variable storage access
+* GPIO
 
-   ```
-   wget https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz
-   ```
+Hardware description:
 
-1. After extracting, setup the path and compiler prefix to GCC5\_AARCH64\_PREFIX variable:
+* ACPI (default)
+* Device Tree
 
-   ```
-   export GCC5_AARCH64_PREFIX=<toolchain_path>/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
-   ```
+Others:
 
-## Prepare prerequisites
+* Signed capsule update
+* X64 option ROM emulator
 
-1. Create a new folder (directory) on your local development machine
-   for use as your workspace. This example uses `/work/git/tianocore`, modify as
-   appropriate for your needs.
+# Building the firmware
 
-   ```
-   $ export WORKSPACE=/work/git/tianocore
-   $ mkdir -p $WORKSPACE
-   $ cd $WORKSPACE
-   ```
+## Prepare EDKII environment:
 
-1. Clone the Trusted Firmware repository:
+Please follow instructions from [Obtaining source code](https://github.com/tianocore/edk2-platforms#obtaining-source-code)
+and [Manual building](https://github.com/tianocore/edk2-platforms#manual-building) from the
+top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-platforms#readme).
 
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git
-   ```
-1. Clone repository for auxiliary firmware on the SoC co-processors and checkout to binaries-marvell-armada-SDK10.0.1.0:
+## Build EDKII:
 
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://github.com/MarvellEmbeddedProcessors/binaries-marvell.git
-   $ cd binaries-marvell/
-   $ git checkout -b binaries-marvell-armada-SDK10.0.1.0 origin/binaries-marvell-armada-SDK10.0.1.0
-   ```
-1. Clone the DDR training code from:
+Use below build command:
 
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git
-   ```
-## Prepare EDKII environment:
+  ```
+  $ build -a AARCH64 -t GCC5 -b RELEASE -D X64EMU_ENABLE -p Platform/SolidRun/Armada80x0McBin/Armada80x0McBin.dsc
+  ```
 
-Please follow instructions from "Obtaining source code" and "Manual building" from the top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-platforms#readme).
+---
+**NOTE**
 
-## Build EDKII:
-
-1. Use below build command:
+'-D INCLUDE_TFTP_COMMAND' is optional and can be added in order to enable `tftp` command in UEFI Shell.
 
-   ```
-   $ cd ${WORKSPACE}
-   $ build -a AARCH64 -t GCC5 -b RELEASE -D INCLUDE_TFTP_COMMAND -D X64EMU_ENABLE -p Platform/SolidRun/Armada80x0McBin/Armada80x0McBin.dsc
-   ```
+---
 
 ## Build the final firmware image:
 
-1. Set BL33 variable to path to EDK II output binary:
-
-   ```
-   $ export BL33=${WORKSPACE}/Build/Armada80x0McBin-AARCH64/RELEASE_GCC5/FV/ARMADA_EFI.fd
-   ```
-1. Export SCP_BL2 variable:
-
-   ```
-   $ export SCP_BL2=${WORKSKPACE}/binaries-marvell/mrvl_scp_bl2.img
-   ```
-1. Export compiler variables (for cross-compilation only):
-
-   ```
-   $ export ARCH=arm64
-   $ export CROSS_COMPILE=<toolchain_path>/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
-   ```
-1. Build the image:
-
-   ```
-   $ cd ${WORKSPACE}/trusted-firmware-a/
-   $ make LOG_LEVEL=20 MV_DDR_PATH=${WORKSPACE}/mv-ddr-marvell PLAT=a80x0_mcbin all fip mrvl_flash
-   ```
-The firmware image `flash-image.bin` can be found in `build/a80x0_mcbin/release/` directory.
+In addition to EDKII binary, the complete firmware image comprises the TF-A and other components.
+A complete build instruction can be found at [wiki page](https://github.com/Semihalf/edk2-platforms/wiki/Build_firmware).
+
+## Burning the firmware
+
+Please follow instruction at [wiki page](https://github.com/Semihalf/edk2-platforms/wiki/Burning_firmware)
+to burn image to desired boot device.
 
 # ARM System Ready certification.
 

+ 42 - 67
Platform/SolidRun/Cn913xCEx7Eval/Readme.md

@@ -3,95 +3,70 @@
 
 # Summary
 
-This is a port of 64-bit TianoCore EDK II firmware for the SolidRun CN913x CEx7 Evaluation Board.
+This is a port of 64-bit TianoCore EDK II firmware for the [SolidRun CN913x CEx7 Evaluation Board](https://solidrun.atlassian.net/wiki/spaces/developer/pages/197493948/CN9132+COM+EVK+Quick+Start+Guide).
 
-# Building the firmware
-
-## Prepare toolchain (for cross-compilation only):
-
-1. Download the toolchain:
-
-   ```
-   wget https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz
-   ```
+# Supported features
 
-1. After extracting, setup the path and compiler prefix to GCC5\_AARCH64\_PREFIX variable:
+Features supported in EDK2:
 
-   ```
-   export GCC5_AARCH64_PREFIX=<toolchain_path>/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
-   ```
+* 1x PCIE x4 + 6x PCIE x1
+* Networking:
+  * 1x 10 GbE via SFP+
+  * 2x 5 GbE via RJ45
+  * 1x 2500 Base-X via quad 1 Gbps switch
+  * 1x 1 GbE RGMII via RJ45
+* 2x USB 3.0
+* 4x USB 2.0
+* 2x SATA
+* 1x uSD
+* 1x eMMC
+* RTC
+* SPI flash & memory-mapped variable storage access
+* I2C
+* GPIO
 
-## Prepare prerequisites
+Hardware description:
 
-1. Create a new folder (directory) on your local development machine
-   for use as your workspace. This example uses `/work/git/tianocore`, modify as
-   appropriate for your needs.
+* ACPI (default)
+* Device Tree
 
-   ```
-   $ export WORKSPACE=/work/git/tianocore
-   $ mkdir -p $WORKSPACE
-   $ cd $WORKSPACE
-   ```
+Others:
 
-1. Clone the Trusted Firmware repository:
+* Signed capsule update
+* X64 option ROM emulator
 
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git
-   ```
-1. Clone repository for auxiliary firmware on the SoC co-processors and checkout to binaries-marvell-armada-SDK10.0.1.0:
-
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://github.com/MarvellEmbeddedProcessors/binaries-marvell.git
-   $ cd binaries-marvell/
-   $ git checkout -b binaries-marvell-armada-SDK10.0.1.0 origin/binaries-marvell-armada-SDK10.0.1.0
-   ```
-1. Clone the DDR training code from:
+# Building the firmware
 
-   ```
-   $ cd ${WORKSPACE}
-   $ git clone https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git
-   ```
 ## Prepare EDKII environment:
 
-Please follow instructions from "Obtaining source code" and "Manual building" from the top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-platforms#readme).
+Please follow instructions from [Obtaining source code](https://github.com/tianocore/edk2-platforms#obtaining-source-code)
+and [Manual building](https://github.com/tianocore/edk2-platforms#manual-building) from the
+top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-platforms#readme).
 
 ## Build EDKII:
 
-1. Use below build command:
+Use below build command:
 
-   ```
-   $ cd ${WORKSPACE}
-   $ build -a AARCH64 -t GCC5 -b RELEASE -D INCLUDE_TFTP_COMMAND -D CAPSULE_ENABLE -D X64EMU_ENABLE -p Platform/SolidRun/Cn913xCEx7Eval/Cn913xCEx7Eval.dsc
-   ```
+  ```
+  build -a AARCH64 -t GCC5 -b RELEASE -D CAPSULE_ENABLE -D X64EMU_ENABLE -p Platform/SolidRun/Cn913xCEx7Eval/Cn913xCEx7Eval.dsc
+  ```
 
-## Build the final firmware image:
+---
+**NOTE**
 
-1. Set BL33 variable to path to EDK II output binary:
+'-D INCLUDE_TFTP_COMMAND' is optional and can be added in order to enable `tftp` command in UEFI Shell.
 
-   ```
-   $ export BL33=${WORKSPACE}/Build/Cn913xCEx7Eval-AARCH64/RELEASE_GCC5/FV/ARMADA_EFI.fd
-   ```
-1. Export SCP_BL2 variable:
+---
 
-   ```
-   $ export SCP_BL2=${WORKSKPACE}/binaries-marvell/mrvl_scp_bl2.img
-   ```
-1. Export compiler variables (for cross-compilation only):
+## Build the final firmware image:
 
-   ```
-   $ export ARCH=arm64
-   $ export CROSS_COMPILE=<toolchain_path>/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
-   ```
-1. Build the image:
+In addition to EDKII binary, the complete firmware image comprises the TF-A and other components.
+A complete build instruction can be found at [wiki page](https://github.com/Semihalf/edk2-platforms/wiki/Build_firmware).
 
-   ```
-   $ cd ${WORKSPACE}/trusted-firmware-a/
-   $ make LOG_LEVEL=20 MV_DDR_PATH=${WORKSPACE}/mv-ddr-marvell CP_NUM=3 PLAT=t9130_cex7_eval all fip mrvl_flash
+## Burning the firmware
 
-   ```
-The firmware image `flash-image.bin` can be found in `build/t9130_cex7_eval/release/` directory.
+Please follow instruction at [wiki page](https://github.com/Semihalf/edk2-platforms/wiki/Burning_firmware)
+to burn image to desired boot device.
 
 # ARM System Ready certification.