From: Grzegorz Bernacki <g...@semihalf.com>

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 <m...@semihalf.com>

---
In order to ease review/merge the patch is available in a public repository:
https://github.com/Semihalf/edk2-platforms/commits/marvell-howtos-upstream-r20220314

 Platform/Marvell/Cn913xDb/Readme.md         | 104 +++++++-----------
 Platform/SolidRun/Armada80x0McBin/Readme.md | 113 ++++++++------------
 Platform/SolidRun/Cn913xCEx7Eval/Readme.md  | 109 ++++++++-----------
 3 files changed, 124 insertions(+), 202 deletions(-)

diff --git a/Platform/Marvell/Cn913xDb/Readme.md 
b/Platform/Marvell/Cn913xDb/Readme.md
index ecdb78302b..0b2ab676f8 100644
--- a/Platform/Marvell/Cn913xDb/Readme.md
+++ b/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.
 
diff --git a/Platform/SolidRun/Armada80x0McBin/Readme.md 
b/Platform/SolidRun/Armada80x0McBin/Readme.md
index c63cf41b2d..8c514835c4 100644
--- a/Platform/SolidRun/Armada80x0McBin/Readme.md
+++ b/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.
 
diff --git a/Platform/SolidRun/Cn913xCEx7Eval/Readme.md 
b/Platform/SolidRun/Cn913xCEx7Eval/Readme.md
index 813e723b65..0db22b5175 100644
--- a/Platform/SolidRun/Cn913xCEx7Eval/Readme.md
+++ b/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.
 
-- 
2.29.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#87537): https://edk2.groups.io/g/devel/message/87537
Mute This Topic: https://groups.io/mt/89771621/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to