From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR04-DB3-obe.outbound.protection.outlook.com (EUR04-DB3-obe.outbound.protection.outlook.com [40.107.6.79]) by mx.groups.io with SMTP id smtpd.web12.29040.1647278258705244920 for ; Mon, 14 Mar 2022 10:17:39 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=sg5c/rHH; spf=pass (domain: arm.com, ip: 40.107.6.79, mailfrom: sunny.wang@arm.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/Yk5oP8P7NrOD7twhdhvpJN+H1tm34wpG/CN/XdmHao=; b=sg5c/rHHbp5EMC2UkjN8fF9g7giXCxvYJom2e7cy8D9jLpOSwofIL4bKd+WozUG2xTjfH9ilIlTc7iMqEEMOtjgkycRbakEGw7g7rpwWeu4h/x49FfNShUk3Ppzb1yUJYc1l6t7qvwtJM8sKezAS4ATtRYVkAPubYSqjNASwrng= Received: from DU2PR04CA0032.eurprd04.prod.outlook.com (2603:10a6:10:234::7) by AM4PR08MB2801.eurprd08.prod.outlook.com (2603:10a6:205:9::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.26; Mon, 14 Mar 2022 17:17:35 +0000 Received: from DB5EUR03FT052.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:234:cafe::c3) by DU2PR04CA0032.outlook.office365.com (2603:10a6:10:234::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.28 via Frontend Transport; Mon, 14 Mar 2022 17:17:35 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5EUR03FT052.mail.protection.outlook.com (10.152.21.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22 via Frontend Transport; Mon, 14 Mar 2022 17:17:35 +0000 Received: ("Tessian outbound 2877e54fe176:v113"); Mon, 14 Mar 2022 17:17:35 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: c121df8002160c32 X-CR-MTA-TID: 64aa7808 Received: from c6186df412a3.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 62150A25-0D80-4256-9BAD-776B49D49E39.1; Mon, 14 Mar 2022 17:17:29 +0000 Received: from EUR04-DB3-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id c6186df412a3.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 14 Mar 2022 17:17:29 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bVZOoWAiyHmtGnnvogXGWZ2y+WTPcDJ9Knv9/Wl9Ld26Gl7NK6mdrd0qffwAMowCkiUPuvA4erjLVuB/VrmGHQO4fnRPw0EKFrLmQHyV1bdefpy1Rp47m3zfv+pv3rVJRBPkn5TqftSpZiB04T+TiwV3vnz5oWI/qLPx3Fwm+wnSxvKuTSWW5uwUgLntOMJfg8AGHR7guzGl0DoYGpwkxRIseJ2L73sdMeFJckP9jd+a+uU2MvSNl8LjJLpDm1JG8AuvxqlFHL3bpxigKCEHh61Ca1fTL5hwLLSyAiq3LsZ3uLAYManUgSDFDt+y+HlwiRFslmyMoYgptXVmujsePw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/Yk5oP8P7NrOD7twhdhvpJN+H1tm34wpG/CN/XdmHao=; b=LoTYQadnQqZJ5umtnGNhK6Vdbli2B9k9HEdYJu3WS8MfFqj51dSTSAL+7j73iv71zSRZNhyuICLGV/vjmA2O3sK2afGtAxSX4fOuKSQVdCqUPoTxpZ5d1zivg0/vrxxuyMrI6arg9qNqJ9Ab11hlJ9nEcTWzB736wF0dd9oGZxpN7/gX7fh8nb/xvJgqR0mV7era04rw3uYgcEaG0jspMkso+2Q+7UBPShnmK3aaQyYGpWuxH3CPPx6mUUE/GtAxuGSZ8jGcDF2CQiT+J0cf7xgrqLkTKYSR/1Y9yUE9njg73ATQ6zPc+kG3olAtvRen300+TQJuTq9LUyVz7of7xQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=/Yk5oP8P7NrOD7twhdhvpJN+H1tm34wpG/CN/XdmHao=; b=sg5c/rHHbp5EMC2UkjN8fF9g7giXCxvYJom2e7cy8D9jLpOSwofIL4bKd+WozUG2xTjfH9ilIlTc7iMqEEMOtjgkycRbakEGw7g7rpwWeu4h/x49FfNShUk3Ppzb1yUJYc1l6t7qvwtJM8sKezAS4ATtRYVkAPubYSqjNASwrng= Received: from DB8PR08MB3993.eurprd08.prod.outlook.com (2603:10a6:10:ad::26) by AS8PR08MB7267.eurprd08.prod.outlook.com (2603:10a6:20b:422::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22; Mon, 14 Mar 2022 17:17:27 +0000 Received: from DB8PR08MB3993.eurprd08.prod.outlook.com ([fe80::f871:dd1d:2f07:ad57]) by DB8PR08MB3993.eurprd08.prod.outlook.com ([fe80::f871:dd1d:2f07:ad57%3]) with mapi id 15.20.5061.028; Mon, 14 Mar 2022 17:17:27 +0000 From: "Sunny Wang" To: Marcin Wojtas , "devel@edk2.groups.io" CC: "quic_llindhol@quicinc.com" , "ardb+tianocore@kernel.org" , "jaz@semihalf.com" , "gjb@semihalf.com" , Sunny Wang Subject: Re: [edk2-platforms PATCH] Marvell/SolidRun: Rework Readme.md files Thread-Topic: [edk2-platforms PATCH] Marvell/SolidRun: Rework Readme.md files Thread-Index: AQHYN50TBtk1hMzvPkSoMUvsy6Jhzqy/HTPQ Date: Mon, 14 Mar 2022 17:17:27 +0000 Message-ID: References: <20220314120602.1869373-1-mw@semihalf.com> In-Reply-To: <20220314120602.1869373-1-mw@semihalf.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-MS-Office365-Filtering-Correlation-Id: d169045e-e42a-4a61-fc0d-08da05de8844 x-ms-traffictypediagnostic: AS8PR08MB7267:EE_|DB5EUR03FT052:EE_|AM4PR08MB2801:EE_ X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: CUNhbDMBTbDHiUh61FQoWup3lTd9RHbADoVbRIBVymMAj1r2k4NPJest6AuMhEAcvwcAJpugpIHKVZeuhfw25ko6inysWcBQP0i56DlZzeLds+cC/Kzx+Lze2U5eyOkjSLEfM4OTeKTGmos1If/Gl2IalQWHtFBx1GPCUdq1tTLmsQnXyP2ZeM1hd4ylsA3hdb8tdHGr5MwJp/SEhi0xXZQbzWDQp3pu663SDLU2KvCX2T8ufqYKwGNk0dvx6TOp5Dqk9bSgeVfbE3WRGnywl47NlAq5TyMG+jrSkOA368vV1sHqmWfbczJTw2jKcmhXNRqZkQj+r4AuLCiazkIHzS8I5CpKoTyK84Serq+XJ3jsloCTY2AnNyN9Ytk67sa/kftA91wAqzAhWKuu3kzOpJlEr4Net50L2sSEh2RvN6jEtHdi73G57KHEWIb3SQn43GyWQozLKEjUUneT2X05hksuoXMDwQAoH1FuOXYJnGtLx9yj6U6DvsO39ZXVilcbrrFg/K3n4snxz+qcpq8yygLdktmCnezKqBIpjT2X0pyCI89xp+8vnJvx/i0NAEnhpQAtr41UwbZp+sR2TQ6510hTSUpAJiRkCqJK1qxYxx7Xm5EDgYc408G3n0izbNzPWANpWUSDNjK8kBgzzhS0VSNFtuuC+vMyXWFYPsW1jZDbfINibpF+xP0SUXC6U05a7r/5ZEGyzX9wB/1JIfx+czNae4lesA57c5B0Q9Mvefl2d0oWIWl/wMIxIfDKCGtL48EXfIt3dJlwgUd3g87UnvN3y8UemJb1SaN1xgqV14G/BFMqNJ61uKjaTQ/lyxYh X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB8PR08MB3993.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(4636009)(366004)(15188155005)(76116006)(33656002)(64756008)(54906003)(66446008)(8676002)(66556008)(66476007)(4326008)(66946007)(2906002)(316002)(19627235002)(110136005)(83380400001)(86362001)(55016003)(71200400001)(53546011)(9686003)(186003)(6506007)(16799955002)(5660300002)(122000001)(508600001)(7696005)(966005)(38100700002)(8936002)(30864003)(52536014)(38070700005)(26005);DIR:OUT;SFP:1101; MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7267 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Return-Path: Sunny.Wang@arm.com X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: fca87927-79d9-417f-dbc1-08da05de83c0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rxLgFPS/J1wYyK+mRWjwHem0BMqrJ/USP7hsBU960g4yEm6Xa/sHINJ7RHGiUUAo8rU9VeYsmEn+bG1sw5/to2MJGpPtXGnfc9iY2fW2SYPC9iEXDxh2eCSelKJoU1PVqpl6y4P5jyZztq4ANQDAjjuGuqG+gDDeTuGGLrE0Xt6LtTEqbPA7oT8izISEls9ZjdLlRYcZ1Ly4vL53zq0cnXVsnFAk7xQYZjx1K3Dmtgg7gtfsX/05/exuYjDSi1IFphNjEUZz6hIJwwKepKI9W8vSHgZZWCYsbcatBIbmRR3YGGLnOEL0YLPlPdyN5Cb1WwjAPtwaVwjG3cVccItpLvv6DQMG15fv3518nJFLfSfNegdKGY7cZL2iGVfIcZUFBie1Cnv4gJkRD3Qzr8UNktXaLPXAOWB1Zi7QXlm8CuCE2+JMcOSt/cWHpufOSpYyoqiVyLzwNBSromdhH/yIYjPYI8PZpIrEg5v096EuMfcXczg+vAGpj9VPMsKxHCGAjMCi0MlFaj/zBUm7gfKP26Z0+8EjWvDQuFTQj51e7deN9VbgmtZd8HeiROfm+WOn/pGvVsl7e8XzSfIlF6+cd0gpPan7tdUL+p82G9wuWoa2w9W/X5S7lNmcke5jtjEt6d3LsMXVwDAWv7FpmzyasXNb0a+yu6hwCyRa9tamgDcD5zdErdFV+WD75/M7kU0mVkw9ckq22pGDP2ftre19s0s5ztR3owNx3v4rZVzXISmQcGG4EbLUGJWQlWxpy/7QaNp0ONwMz6Brtg/Ns5qDlyG2WDfEEtZ8XaZ1rD3qqpw= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230001)(4636009)(36840700001)(40470700004)(46966006)(70206006)(70586007)(7696005)(86362001)(53546011)(82310400004)(6506007)(110136005)(54906003)(316002)(19627235002)(9686003)(508600001)(966005)(356005)(47076005)(36860700001)(336012)(30864003)(186003)(8936002)(26005)(83380400001)(81166007)(40460700003)(2906002)(5660300002)(16799955002)(15188155005)(33656002)(4326008)(8676002)(52536014)(55016003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Mar 2022 17:17:35.3447 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: d169045e-e42a-4a61-fc0d-08da05de8844 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DB5EUR03FT052.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM4PR08MB2801 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Looks good. Thanks much, Marcin. This will be helpful as http://wiki.macchiatobin.net/tiki-index.php has bee= n not accessible for quite a while. Reviewed-by: Sunny Wang Best Regards, Sunny -----Original Message----- From: Marcin Wojtas Sent: 14 March 2022 12:06 To: devel@edk2.groups.io Cc: quic_llindhol@quicinc.com; ardb+tianocore@kernel.org; jaz@semihalf.com;= gjb@semihalf.com; Sunny Wang ; Marcin Wojtas Subject: [edk2-platforms PATCH] Marvell/SolidRun: Rework Readme.md files From: Grzegorz Bernacki 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 --- 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/Cn913xD= b/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=3D/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`, mod= ify as - appropriate for your needs. +* ACPI (default) +* Device Tree - ``` - $ export WORKSPACE=3D/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 ch= eckout to binaries-marvell-armada-SDK10.0.1.0: - - ``` - $ cd ${WORKSPACE} - $ git clone https://github.com/MarvellEmbeddedProcessors/binaries-marve= ll.git - $ cd binaries-marvell/ - $ git checkout -b binaries-marvell-armada-SDK10.0.1.0 origin/binaries-m= arvell-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 buildi= ng" from the top level edk2-platforms [Readme.md](https://github.com/tianoc= ore/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-b= uilding) from the +top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-pla= tforms#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 X64= EMU_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=3D${WORKSPACE}/Build/Cn9132DbA-AARCH64/RELEASE_GCC5/FV/AR= MADA_EFI.fd - ``` -1. Export SCP_BL2 variable: +--- - ``` - $ export SCP_BL2=3D${WORKSKPACE}/binaries-marvell/mrvl_scp_bl2.img - ``` -1. Export compiler variables (for cross-compilation only): +## Build the final firmware image: - ``` - $ export ARCH=3Darm64 - $ export CROSS_COMPILE=3D/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.co= m/Semihalf/edk2-platforms/wiki/Build_firmware). - ``` - $ cd ${WORKSPACE}/trusted-firmware-a/ - $ make LOG_LEVEL=3D20 MV_DDR_PATH=3D${WORKSPACE}/mv-ddr-marvell CP_NUM= =3D3 PLAT=3Dt9130 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/SolidRu= n/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 Macchi= atoBin platform based on the Marvell ARMADA 8040 SoC. +This is a port of 64-bit TianoCore EDK II firmware for the [SolidRun Macch= iatoBin Double Shot](https://solidrun.atlassian.net/wiki/spaces/developer/p= ages/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=3D/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`, mod= ify as - appropriate for your needs. +# Building the firmware - ``` - $ export WORKSPACE=3D/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-b= uilding) from the +top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-pla= tforms#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 ch= eckout to binaries-marvell-armada-SDK10.0.1.0: +## Build EDKII: - ``` - $ cd ${WORKSPACE} - $ git clone https://github.com/MarvellEmbeddedProcessors/binaries-marve= ll.git - $ cd binaries-marvell/ - $ git checkout -b binaries-marvell-armada-SDK10.0.1.0 origin/binaries-m= arvell-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/Solid= Run/Armada80x0McBin/Armada80x0McBin.dsc + ``` -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). +--- +**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=3D${WORKSPACE}/Build/Armada80x0McBin-AARCH64/RELEASE_GCC5= /FV/ARMADA_EFI.fd - ``` -1. Export SCP_BL2 variable: - - ``` - $ export SCP_BL2=3D${WORKSKPACE}/binaries-marvell/mrvl_scp_bl2.img - ``` -1. Export compiler variables (for cross-compilation only): - - ``` - $ export ARCH=3Darm64 - $ export CROSS_COMPILE=3D/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=3D20 MV_DDR_PATH=3D${WORKSPACE}/mv-ddr-marvell PLAT=3D= a80x0_mcbin all fip mrvl_flash - ``` -The firmware image `flash-image.bin` can be found in `build/a80x0_mcbin/re= lease/` 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.co= m/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 CN913= x CEx7 Evaluation Board](https://solidrun.atlassian.net/wiki/spaces/develop= er/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=3D/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`, mod= ify as - appropriate for your needs. +* ACPI (default) +* Device Tree - ``` - $ export WORKSPACE=3D/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 ch= eckout to binaries-marvell-armada-SDK10.0.1.0: - - ``` - $ cd ${WORKSPACE} - $ git clone https://github.com/MarvellEmbeddedProcessors/binaries-marve= ll.git - $ cd binaries-marvell/ - $ git checkout -b binaries-marvell-armada-SDK10.0.1.0 origin/binaries-m= arvell-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 buildi= ng" from the top level edk2-platforms [Readme.md](https://github.com/tianoc= ore/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-b= uilding) from the +top level edk2-platforms [Readme.md](https://github.com/tianocore/edk2-pla= tforms#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 CAPSUL= E_ENABLE -D X64EMU_ENABLE -p Platform/SolidRun/Cn913xCEx7Eval/Cn913xCEx7Eva= l.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=3D${WORKSPACE}/Build/Cn913xCEx7Eval-AARCH64/RELEASE_GCC5/= FV/ARMADA_EFI.fd - ``` -1. Export SCP_BL2 variable: +--- - ``` - $ export SCP_BL2=3D${WORKSKPACE}/binaries-marvell/mrvl_scp_bl2.img - ``` -1. Export compiler variables (for cross-compilation only): +## Build the final firmware image: - ``` - $ export ARCH=3Darm64 - $ export CROSS_COMPILE=3D/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.co= m/Semihalf/edk2-platforms/wiki/Build_firmware). - ``` - $ cd ${WORKSPACE}/trusted-firmware-a/ - $ make LOG_LEVEL=3D20 MV_DDR_PATH=3D${WORKSPACE}/mv-ddr-marvell CP_NUM= =3D3 PLAT=3Dt9130_cex7_eval all fip mrvl_flash +## Burning the firmware - ``` -The firmware image `flash-image.bin` can be found in `build/t9130_cex7_eva= l/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 IMPORTANT NOTICE: The contents of this email and any attachments are confid= ential and may also be privileged. If you are not the intended recipient, p= lease notify the sender immediately and do not disclose the contents to any= other person, use it for any purpose, or store or copy the information in = any medium. Thank you.