From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id D5069AC1267 for ; Thu, 4 Jan 2024 13:16:29 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=tc8Y5ct0NuP6nGCuFLPfChG0X0qMAn1EJzfyiFbM5O4=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1704374188; v=1; b=wlGoK7Mq8PbTejAix4ryT1Ay4/ClFp9650pgXW0J1VGgcH7Y7l4SdzDcdXtYKHkmY9E3C/hx fCb1wSgb2NspXsgbLfvk4n3GBgo0S7hVF+4nb/VEzXbRGRdBt0UQCO7r3miVWikd5us7gNjEpgo zLiRZJrsIIkPQBZlpIB1ShuU= X-Received: by 127.0.0.2 with SMTP id O7gdYY7687511xFQtYumM2L5; Thu, 04 Jan 2024 05:16:28 -0800 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.53579.1704374187931926516 for ; Thu, 04 Jan 2024 05:16:28 -0800 X-Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5F12C1007; Thu, 4 Jan 2024 05:17:13 -0800 (PST) X-Received: from usa.arm.com (a077434.blr.arm.com [10.162.17.62]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id D27723F64C; Thu, 4 Jan 2024 05:16:25 -0800 (PST) From: "sahil" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Leif Lindholm , Sami Mujawar , Sahil Kaushal Subject: [edk2-devel] [edk2-platforms][PATCH V4 1/4] Silicon/ARM/NeoverseN1Soc: Extract NT_FW_CONFIG address passed by TF-A Date: Thu, 4 Jan 2024 18:46:13 +0530 Message-Id: <20240104131616.474492-2-sahil@arm.com> In-Reply-To: <20240104131616.474492-1-sahil@arm.com> References: <20240104131616.474492-1-sahil@arm.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,sahil@arm.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: h6sEba5UlPS284yQkuynBJTex7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=wlGoK7Mq; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=arm.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io NT_FW_CONFIG DTB contains platform information passed by TF-A boot stage. This patch enables support to first extract address of NT_FW_CONFIG and then pass it to other modules as a PPI. Signed-off-by: sahil --- Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec | 5 ++++- Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf | 3 ++- Silicon/ARM/NeoverseN1Soc/Include/NeoverseN1Soc.h | 9 ++++++= --- Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.c | 12 ++++++= +++++- Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/AArch64/Helper.S | 4 +++- 5 files changed, 26 insertions(+), 7 deletions(-) diff --git a/Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec b/Silicon/ARM/Neov= erseN1Soc/NeoverseN1Soc.dec index d59f25a5b915..c04162e7e7cd 100644 --- a/Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec +++ b/Silicon/ARM/NeoverseN1Soc/NeoverseN1Soc.dec @@ -1,7 +1,7 @@ ## @file=0D # Describes the entire platform configuration.=0D #=0D -# Copyright (c) 2018 - 2021, ARM Limited. All rights reserved.
=0D +# Copyright (c) 2018 - 2024, ARM Limited. All rights reserved.
=0D #=0D # SPDX-License-Identifier: BSD-2-Clause-Patent=0D #=0D @@ -83,3 +83,6 @@ gArmNeoverseN1SocTokenSpaceGuid.PcdRemotePcieMmio32Translation|0x4000000= 0000|UINT64|0x0000004F=0D gArmNeoverseN1SocTokenSpaceGuid.PcdRemotePcieMmio64Translation|0x4000000= 0000|UINT64|0x00000050=0D gArmNeoverseN1SocTokenSpaceGuid.PcdRemotePcieSegmentNumber|2|UINT32|0x00= 000051=0D +=0D +[Ppis]=0D + gArmNeoverseN1SocParameterPpiGuid =3D { 0x4DDD5A72, 0x31AD, 0x4B20, { 0x= 8F, 0x5F, 0xB3, 0xE8, 0x24, 0x6F, 0x80, 0x2B } }=0D diff --git a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf = b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf index 96e590cdd810..ead7f11ec964 100644 --- a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf +++ b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.inf @@ -1,7 +1,7 @@ ## @file=0D # Platform Library for N1Sdp.=0D #=0D -# Copyright (c) 2018-2021, ARM Limited. All rights reserved.
=0D +# Copyright (c) 2018-2024, ARM Limited. All rights reserved.
=0D #=0D # SPDX-License-Identifier: BSD-2-Clause-Patent=0D #=0D @@ -63,3 +63,4 @@ =0D [Ppis]=0D gArmMpCoreInfoPpiGuid=0D + gArmNeoverseN1SocParameterPpiGuid=0D diff --git a/Silicon/ARM/NeoverseN1Soc/Include/NeoverseN1Soc.h b/Silicon/AR= M/NeoverseN1Soc/Include/NeoverseN1Soc.h index 097160c7e2d1..2bddf5007431 100644 --- a/Silicon/ARM/NeoverseN1Soc/Include/NeoverseN1Soc.h +++ b/Silicon/ARM/NeoverseN1Soc/Include/NeoverseN1Soc.h @@ -1,6 +1,6 @@ /** @file=0D *=0D -* Copyright (c) 2018 - 2020, ARM Limited. All rights reserved.=0D +* Copyright (c) 2018 - 2024, ARM Limited. All rights reserved.=0D *=0D * SPDX-License-Identifier: BSD-2-Clause-Patent=0D *=0D @@ -55,12 +55,15 @@ typedef struct {=0D /*! 0 - Single Chip, 1 - Chip to Chip (C2C) */=0D UINT8 MultichipMode;=0D - /*! Slave count in C2C mode */=0D - UINT8 SlaveCount;=0D + /*! Secondary chip count in C2C mode */=0D + UINT8 SecondaryChipCount;=0D /*! Local DDR memory size in GigaBytes */=0D UINT8 LocalDdrSize;=0D /*! Remote DDR memory size in GigaBytes */=0D UINT8 RemoteDdrSize;=0D } NEOVERSEN1SOC_PLAT_INFO;=0D =0D +typedef struct {=0D + CONST VOID *NtFwConfig;=0D +} NEOVERSEN1SOC_EL3_FW_HANDOFF_PARAM_PPI;=0D #endif=0D diff --git a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.c b/= Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.c index c0effd37f333..e8568b7a039b 100644 --- a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.c +++ b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/PlatformLib.c @@ -1,6 +1,6 @@ /** @file=0D =0D - Copyright (c) 2018-2021, ARM Limited. All rights reserved.
=0D + Copyright (c) 2018 - 2024, ARM Limited. All rights reserved.
=0D =0D SPDX-License-Identifier: BSD-2-Clause-Patent=0D =0D @@ -8,8 +8,12 @@ =0D #include =0D #include =0D +#include =0D #include =0D =0D +UINT64 gArgNtFwConfigDtPtr;=0D +STATIC NEOVERSEN1SOC_EL3_FW_HANDOFF_PARAM_PPI mNeoverseN1SocParameterPpi;= =0D +=0D STATIC ARM_CORE_INFO mCoreInfoTable[] =3D {=0D { 0x0, 0x0 }, // Cluster 0, Core 0=0D { 0x0, 0x1 }, // Cluster 0, Core 1=0D @@ -46,6 +50,7 @@ ArmPlatformInitialize ( IN UINTN MpId=0D )=0D {=0D + mNeoverseN1SocParameterPpi.NtFwConfig =3D (VOID *)gArgNtFwConfigDtPtr;=0D return RETURN_SUCCESS;=0D }=0D =0D @@ -80,6 +85,11 @@ EFI_PEI_PPI_DESCRIPTOR gPlatformPpiTable[] =3D { EFI_PEI_PPI_DESCRIPTOR_PPI,=0D &gArmMpCoreInfoPpiGuid,=0D &mMpCoreInfoPpi=0D + },=0D + {=0D + EFI_PEI_PPI_DESCRIPTOR_PPI,=0D + &gArmNeoverseN1SocParameterPpiGuid,=0D + &mNeoverseN1SocParameterPpi=0D }=0D };=0D =0D diff --git a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/AArch64/Helper.S= b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/AArch64/Helper.S index 8d2069dea837..828c383d6892 100644 --- a/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/AArch64/Helper.S +++ b/Silicon/ARM/NeoverseN1Soc/Library/PlatformLib/AArch64/Helper.S @@ -1,6 +1,6 @@ /** @file=0D *=0D -* Copyright (c) 2019 - 2020, ARM Limited. All rights reserved.=0D +* Copyright (c) 2019 - 2024, ARM Limited. All rights reserved.=0D *=0D * SPDX-License-Identifier: BSD-2-Clause-Patent=0D *=0D @@ -25,6 +25,8 @@ GCC_ASM_EXPORT(ArmPlatformIsPrimaryCore) // the UEFI firmware through the CPU registers.=0D //=0D ASM_PFX(ArmPlatformPeiBootAction):=0D + adr x10, gArgNtFwConfigDtPtr=0D + str x0, [x10]=0D ret=0D =0D //=0D --=20 2.25.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#113164): https://edk2.groups.io/g/devel/message/113164 Mute This Topic: https://groups.io/mt/103521643/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-