From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-lf1-f41.google.com (mail-lf1-f41.google.com [209.85.167.41]) by mx.groups.io with SMTP id smtpd.web10.5967.1632222138034330117 for ; Tue, 21 Sep 2021 04:02:18 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@semihalf-com.20210112.gappssmtp.com header.s=20210112 header.b=41YsvAIm; spf=none, err=SPF record not found (domain: semihalf.com, ip: 209.85.167.41, mailfrom: mw@semihalf.com) Received: by mail-lf1-f41.google.com with SMTP id u8so28373347lff.9 for ; Tue, 21 Sep 2021 04:02:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=DKoIeg425y/02S9GfyVfTq60EH++qbZi5C5ZUdmUqRs=; b=41YsvAImtkB58StHV8A7zscDRaMXRIwxQvmuPhwwgLG/3mFJ+x9VtIeoIj7QOSTSRO Vq0V4tgyIR42lqHdf7p+Z+LeeondcqnFScmy6MCAIXROOQHhRdrooI+Ft1LdWVZsHqAr +SHPrTziXVLeUMws03nGJFziyMC1izHd5NMUHC+/C+Q9WSaSm8sNp/XrJMvEWr7rtAAs k8svlKimxMaav7MK+7E5HkvH6DfUSde8u7pDlzXOdX+xrPGS99Mo/bclKavlVkEhdlGe yDy2rHoLqINayrivhLcX3f9Fil1iwlCSbIyAnrEr48wiv2Ntmh/XIN6NISKhPJ7uoZtP S4kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=DKoIeg425y/02S9GfyVfTq60EH++qbZi5C5ZUdmUqRs=; b=leSHOayzzgoPs8rPgw+as3P9fcP3qdEJ0n0V62BIIk+QJ1UhF+7u4P7sAdzor05zDR No1Dp9YBgPz8RxrZPDsS5ewBQ+HsBFN7E/DBtnUHpwTlxdvnhoIjbw/ff4Kv0U9nlCC2 4LUTTUqLcS5K0JTTVV7hnDboc8FliSPZxIv8LzSpLI2+tfI3Y8F1e7t6w6dQPvh3+Xia /jJUUCs+LkSFFrwuojtvqaMJ9L/iBC7wfvqUCDlh/vE9dZhFelNKwAx0ihnxhD3Qi8Xw ZsFny8uA7A3z3qxBjQSmYr8ZOGAO7YT0r4xrkLIrctRJwTv36wE+h8L2lQWjoRmcNThS FCVQ== X-Gm-Message-State: AOAM530IbvbzXauGdbKF2L5RnFdrNzKnplKJchbms83J4E8ixXFXTFA+ 8JNSxhq8+irIUDq7m3gJgyB+qx9PSn0DuA== X-Google-Smtp-Source: ABdhPJy6MqfI9I1dNnbL/6Hv5mJzcV1C57PJxIx1xwHNj7kS1iA+Gv6flRjxQ2VtjSbFdb45QLWQIA== X-Received: by 2002:a05:6512:33c1:: with SMTP id d1mr22843677lfg.96.1632222134623; Tue, 21 Sep 2021 04:02:14 -0700 (PDT) Return-Path: Received: from gilgamesh.lab.semihalf.net ([83.142.187.85]) by smtp.gmail.com with ESMTPSA id 131sm2101246ljj.52.2021.09.21.04.02.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 21 Sep 2021 04:02:14 -0700 (PDT) From: "Marcin Wojtas" To: devel@edk2.groups.io Cc: leif@nuviainc.com, ardb+tianocore@kernel.org, jaz@semihalf.com, gjb@semihalf.com, Samer.El-Haj-Mahmoud@arm.com, alon.rotman@solid-run.com, Marcin Wojtas Subject: [edk2-platforms PATCH 3/4] Marvell/Cn913xDbA: Add Readme.md Date: Tue, 21 Sep 2021 13:00:55 +0200 Message-Id: <20210921110056.659697-4-mw@semihalf.com> X-Mailer: git-send-email 2.29.0 In-Reply-To: <20210921110056.659697-1-mw@semihalf.com> References: <20210921110056.659697-1-mw@semihalf.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Add the complete build instruction for CN913x Development Board. Signed-off-by: Marcin Wojtas --- Platform/Marvell/Cn913xDb/Readme.md | 98 ++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 Platform/Marvell/Cn913xDb/Readme.md diff --git a/Platform/Marvell/Cn913xDb/Readme.md b/Platform/Marvell/Cn913xD= b/Readme.md new file mode 100644 index 0000000000..ecdb78302b --- /dev/null +++ b/Platform/Marvell/Cn913xDb/Readme.md @@ -0,0 +1,98 @@ +=EF=BB=BFMarvell CN913x Development Board=0D +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=0D +=0D +# Summary=0D +=0D +This is a port of 64-bit TianoCore EDK II firmware for the Marvell CN913x = Development Board.=0D +=0D +# Building the firmware=0D +=0D +## Prepare toolchain (for cross-compilation only):=0D +=0D +1. Download the toolchain:=0D +=0D + ```=0D + 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=0D + ```=0D +=0D +1. After extracting, setup the path and compiler prefix to GCC5\_AARCH64\_= PREFIX variable:=0D +=0D + ```=0D + export GCC5_AARCH64_PREFIX=3D/gcc-linaro-7.5.0-2019.12-= x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-=0D + ```=0D +=0D +## Prepare prerequisites=0D +=0D +1. Create a new folder (directory) on your local development machine=0D + for use as your workspace. This example uses `/work/git/tianocore`, mod= ify as=0D + appropriate for your needs.=0D +=0D + ```=0D + $ export WORKSPACE=3D/work/git/tianocore=0D + $ mkdir -p $WORKSPACE=0D + $ cd $WORKSPACE=0D + ```=0D +=0D +1. Clone the Trusted Firmware repository:=0D +=0D + ```=0D + $ cd ${WORKSPACE}=0D + $ git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git= =0D + ```=0D +1. Clone repository for auxiliary firmware on the SoC co-processors and ch= eckout to binaries-marvell-armada-SDK10.0.1.0:=0D +=0D + ```=0D + $ cd ${WORKSPACE}=0D + $ git clone https://github.com/MarvellEmbeddedProcessors/binaries-marve= ll.git=0D + $ cd binaries-marvell/=0D + $ git checkout -b binaries-marvell-armada-SDK10.0.1.0 origin/binaries-m= arvell-armada-SDK10.0.1.0=0D + ```=0D +1. Clone the DDR training code from:=0D +=0D + ```=0D + $ cd ${WORKSPACE}=0D + $ git clone https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell= .git=0D + ```=0D +## Prepare EDKII environment:=0D +=0D +Please follow instructions from "Obtaining source code" and "Manual buildi= ng" from the top level edk2-platforms [Readme.md](https://github.com/tianoc= ore/edk2-platforms#readme).=0D +=0D +## Build EDKII:=0D +=0D +1. Use below build command:=0D +=0D + ```=0D + $ cd ${WORKSPACE}=0D + $ build -a AARCH64 -t GCC5 -b RELEASE -D CN9132 -D INCLUDE_TFTP_COMMAND= -D CAPSULE_ENABLE -p Platform/Marvell/Cn913xDb/Cn913xDbA.dsc=0D + ```=0D +=0D +## Build the final firmware image:=0D +=0D +1. Set BL33 variable to path to EDK II output binary:=0D +=0D + ```=0D + $ export BL33=3D${WORKSPACE}/Build/Cn9132DbA-AARCH64/RELEASE_GCC5/FV/AR= MADA_EFI.fd=0D + ```=0D +1. Export SCP_BL2 variable:=0D +=0D + ```=0D + $ export SCP_BL2=3D${WORKSKPACE}/binaries-marvell/mrvl_scp_bl2.img=0D + ```=0D +1. Export compiler variables (for cross-compilation only):=0D +=0D + ```=0D + $ export ARCH=3Darm64=0D + $ export CROSS_COMPILE=3D/gcc-linaro-7.5.0-2019.12-x86_= 64_aarch64-linux-gnu/bin/aarch64-linux-gnu-=0D + ```=0D +1. Build the image:=0D +=0D + ```=0D + $ cd ${WORKSPACE}/trusted-firmware-a/=0D + $ make LOG_LEVEL=3D20 MV_DDR_PATH=3D${WORKSPACE}/mv-ddr-marvell CP_NUM= =3D3 PLAT=3Dt9130 all fip mrvl_flash=0D +=0D + ```=0D +The firmware image `flash-image.bin` can be found in `build/t9130/release/= ` directory.=0D +=0D +# ARM System Ready certification.=0D +=0D +CN913x Development Board is [System Ready ES](https://developer.arm.com/ar= chitectures/system-architectures/arm-systemready/es) certified. Release bin= ary and the firmware components' baselines list are available in a dedicate= d [wiki page](https://github.com/semihalf/edk2-platforms/wiki).=0D --=20 2.29.0