<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
Hi Liming,
<div><br>
</div>
<div>I will look into this shortly.</div>
<div><br>
</div>
<div>Regards,</div>
<div><br>
</div>
Sami Mujawar
<div id="id-131a55b9-f486-49b1-bd7f-12793d4a9a9c" class="ms-outlook-mobile-reference-message">
<div style="font-family: sans-serif; font-size: 12pt; color: rgb(0, 0, 0);"><br>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg"><strong>From:</strong> gaoliming <gaoliming@byosoft.com.cn><br>
<strong>Sent:</strong> Wednesday, 28 July 2021, 7:33 am<br>
<strong>To:</strong> devel@edk2.groups.io; gaoliming@byosoft.com.cn; ardb@kernel.org<br>
<strong>Cc:</strong> Sami Mujawar; 'Etienne Carriere'; Achin Gupta; 'Ard Biesheuvel'; 'Jiewen Yao'; 'Leif Lindholm'; 'Sughosh Ganu'; nd<br>
<strong>Subject:</strong> 回复: [edk2-devel] [PATCH v4 5/5] StandaloneMmPkg: build for 32bit arm machines<br>
</div>
<br>
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from text --><style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Ard and Sami:<br>
Will you help merge this patch set for 202108 stable tag?<br>
<br>
Thanks<br>
Liming<br>
> -----邮件原件-----<br>
> 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 gaoliming<br>
> 发送时间: 2021年7月20日 17:21<br>
> 收件人: devel@edk2.groups.io; ardb@kernel.org<br>
> 抄送: 'Sami Mujawar' <sami.mujawar@arm.com>; 'Etienne Carriere'<br>
> <etienne.carriere@linaro.org>; 'Achin Gupta' <achin.gupta@arm.com>; 'Ard<br>
> Biesheuvel' <ardb+tianocore@kernel.org>; 'Jiewen Yao'<br>
> <jiewen.yao@intel.com>; 'Leif Lindholm' <leif@nuviainc.com>; 'Sughosh<br>
> Ganu' <sughosh.ganu@linaro.org>; 'nd' <nd@arm.com><br>
> 主题: 回复: [edk2-devel] [PATCH v4 5/5] StandaloneMmPkg: build for 32bit<br>
> arm machines<br>
> <br>
> Ard:<br>
> Thanks! I have added this feature into<br>
> <a href="https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Release-Planni">
https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Release-Planni</a><br>
> ng.<br>
> <br>
> Thanks<br>
> Liming<br>
> > -----邮件原件-----<br>
> > 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 Ard<br>
> > Biesheuvel<br>
> > 发送时间: 2021年7月20日 15:46<br>
> > 收件人: edk2-devel-groups-io <devel@edk2.groups.io>; Liming Gao<br>
> (Byosoft<br>
> > address) <gaoliming@byosoft.com.cn><br>
> > 抄送: Sami Mujawar <sami.mujawar@arm.com>; Etienne Carriere<br>
> > <etienne.carriere@linaro.org>; Achin Gupta <achin.gupta@arm.com>; Ard<br>
> > Biesheuvel <ardb+tianocore@kernel.org>; Jiewen Yao<br>
> > <jiewen.yao@intel.com>; Leif Lindholm <leif@nuviainc.com>; Sughosh<br>
> Ganu<br>
> > <sughosh.ganu@linaro.org>; nd <nd@arm.com><br>
> > 主题: Re: [edk2-devel] [PATCH v4 5/5] StandaloneMmPkg: build for 32bit<br>
> arm<br>
> > machines<br>
> ><br>
> > On Tue, 20 Jul 2021 at 04:01, gaoliming <gaoliming@byosoft.com.cn><br>
> wrote:<br>
> > ><br>
> > > Hi, all<br>
> > > This patch set has passed code review. How about merge it for this<br>
> > stable tag edk2 202108?<br>
> > ><br>
> ><br>
> > OK, I will pick these up. Would you mind creating the entry for the<br>
> > release notes?<br>
> ><br>
> ><br>
> > > Thanks<br>
> > > Liming<br>
> > > > -----邮件原件-----<br>
> > > > 发件人: devel@edk2.groups.io <devel@edk2.groups.io> 代表 Sami<br>
> > > > Mujawar<br>
> > > > 发送时间: 2021年5月19日 17:58<br>
> > > > 收件人: Etienne Carriere <etienne.carriere@linaro.org>;<br>
> > > > devel@edk2.groups.io<br>
> > > > 抄送: Achin Gupta <achin.gupta@arm.com>; Ard Biesheuvel<br>
> > > > <ardb+tianocore@kernel.org>; Jiewen Yao <jiewen.yao@intel.com>;<br>
> Leif<br>
> > > > Lindholm <leif@nuviainc.com>; Sughosh Ganu<br>
> > <sughosh.ganu@linaro.org>;<br>
> > > > nd@arm.com<br>
> > > > 主题: Re: [edk2-devel] [PATCH v4 5/5] StandaloneMmPkg: build for<br>
> 32bit<br>
> > arm<br>
> > > > machines<br>
> > > ><br>
> > > > Hi Etienn,<br>
> > > ><br>
> > > > This patch looks good to me.<br>
> > > ><br>
> > > > Reviewed-by: Sami Mujawar <sami.mujawar@arm.com><br>
> > > ><br>
> > > > Regards,<br>
> > > ><br>
> > > > Sami Mujawar<br>
> > > ><br>
> > > > On 19/05/2021 08:14 AM, Etienne Carriere wrote:<br>
> > > > > This change allows to build StandaloneMmPkg components for 32bit<br>
> > Arm<br>
> > > > > StandaloneMm firmware.<br>
> > > > ><br>
> > > > > This change mainly moves AArch64/ source files to Arm/ side directory<br>
> > > > > for several components: StandaloneMmCpu,<br>
> > > > StandaloneMmCoreEntryPoint<br>
> > > > > and StandaloneMmMemLib. The source file is built for both 32b and<br>
> 64b<br>
> > > > > Arm targets.<br>
> > > > ><br>
> > > > > Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org><br>
> > > > > ---<br>
> > > > > Changes since v3:<br>
> > > > > - Fix BuildOptions.ARM in StandaloneMmPkg.<br>
> > > > > - Remove Cc tags.<br>
> > > > ><br>
> > > > > No change since v2<br>
> > > > ><br>
> > > > > Changes since v1:<br>
> > > > > - ARM_SMC_ID_MM_COMMUNICATE 32b/64b agnostic helper ID is<br>
> > > > defined<br>
> > > > > in ArmStdSmc.h (see 1st commit in this series) instead of being<br>
> > > > > local to EventHandle.c.<br>
> > > > > - Fix void occurrence to VOID.<br>
> > > > > - Fix path in StandaloneMmPkg/StandaloneMmPkg.dsc<br>
> > > > > ---<br>
> > > > > StandaloneMmPkg/Core/StandaloneMmCore.inf<br>
> > > > | 2 +-<br>
> > > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64<br>
> > > > => }/EventHandle.c<br>
> > > > | 5 +++--<br>
> > > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64<br>
> > > > => }/StandaloneMmCpu.c<br>
> > > > | 2 +-<br>
> > > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64<br>
> > > > => }/StandaloneMmCpu.h<br>
> > > > | 0<br>
> > > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64<br>
> > > > => }/StandaloneMmCpu.inf<br>
> > > > | 0<br>
> > > > > StandaloneMmPkg/Include/Library/{AArch64 =><br>
> > > > Arm}/StandaloneMmCoreEntryPoint.h<br>
> > > > | 0<br>
> > > > ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64<br>
> > =><br>
> > > > Arm}/CreateHobList.c | 2 +-<br>
> > > > ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64<br>
> > =><br>
> > > > Arm}/SetPermissions.c | 2 +-<br>
> > > > ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64<br>
> > =><br>
> > > > Arm}/StandaloneMmCoreEntryPoint.c | 16<br>
> > > > ++++++++--------<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCor<br>
> > > > eEntryPoint.inf | 14<br>
> > > > +++++++-------<br>
> > > > > StandaloneMmPkg/Library/StandaloneMmCoreHobLib/{AArch64<br>
> =><br>
> > > > Arm}/StandaloneMmCoreHobLib.c |<br>
> > 0<br>
> > > > > StandaloneMmPkg/Library/StandaloneMmCoreHobLib/{AArch64<br>
> =><br>
> > > > Arm}/StandaloneMmCoreHobLibInternal.c |<br>
> 0<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreH<br>
> > > > obLib.inf | 8<br>
> > ++++----<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmMemLib/{AArch64/StandaloneMm<br>
> > > > MemLibInternal.c => ArmStandaloneMmMemLibInternal.c} | 9<br>
> > ++++++++-<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.i<br>
> > > > nf | 6<br>
> > > > +++---<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependenc<br>
> > > > y.inf | 2 +-<br>
> > > > > StandaloneMmPkg/StandaloneMmPkg.dsc<br>
> > > > | 12 ++++++++----<br>
> > > > > 17 files changed, 46 insertions(+), 34 deletions(-)<br>
> > > > ><br>
> > > > > diff --git a/StandaloneMmPkg/Core/StandaloneMmCore.inf<br>
> > > > b/StandaloneMmPkg/Core/StandaloneMmCore.inf<br>
> > > > > index 87bf6e9440..56042b7b39 100644<br>
> > > > > --- a/StandaloneMmPkg/Core/StandaloneMmCore.inf<br>
> > > > > +++ b/StandaloneMmPkg/Core/StandaloneMmCore.inf<br>
> > > > > @@ -17,7 +17,7 @@<br>
> > > > > PI_SPECIFICATION_VERSION = 0x00010032<br>
> > > > > ENTRY_POINT = StandaloneMmMain<br>
> > > > ><br>
> > > > > -# VALID_ARCHITECTURES = IA32 X64 AARCH64<br>
> > > > > +# VALID_ARCHITECTURES = IA32 X64 AARCH64 ARM<br>
> > > > ><br>
> > > > > [Sources]<br>
> > > > > StandaloneMmCore.c<br>
> > > > > diff --git<br>
> > > ><br>
> a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c<br>
> > > > b/StandaloneMmPkg/Drivers/StandaloneMmCpu/EventHandle.c<br>
> > > > > similarity index 95%<br>
> > > > > rename from<br>
> > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c<br>
> > > > > rename to<br>
> > StandaloneMmPkg/Drivers/StandaloneMmCpu/EventHandle.c<br>
> > > > > index 63fbe26642..165d696f99 100644<br>
> > > > > ---<br>
> > > ><br>
> a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c<br>
> > > > > +++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/EventHandle.c<br>
> > > > > @@ -2,6 +2,7 @@<br>
> > > > ><br>
> > > > > Copyright (c) 2016 HP Development Company, L.P.<br>
> > > > > Copyright (c) 2016 - 2021, Arm Limited. All rights reserved.<br>
> > > > > + Copyright (c) 2021, Linaro Limited<br>
> > > > ><br>
> > > > > SPDX-License-Identifier: BSD-2-Clause-Patent<br>
> > > > ><br>
> > > > > @@ -92,8 +93,8 @@ PiMmStandaloneArmTfCpuDriverEntry (<br>
> > > > > // receipt of a synchronous MM request. Use the Event ID to<br>
> > > > distinguish<br>
> > > > > // between synchronous and asynchronous events.<br>
> > > > > //<br>
> > > > > - if ((ARM_SMC_ID_MM_COMMUNICATE_AARCH64 != EventId) &&<br>
> > > > > - (ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ_AARCH64 !=<br>
> > > > EventId)) {<br>
> > > > > + if ((ARM_SMC_ID_MM_COMMUNICATE != EventId) &&<br>
> > > > > + (ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ != EventId)) {<br>
> > > > > DEBUG ((DEBUG_INFO, "UnRecognized Event - 0x%x\n",<br>
> > EventId));<br>
> > > > > return EFI_INVALID_PARAMETER;<br>
> > > > > }<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCp<br>
> > > > u.c<br>
> > b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.c<br>
> > > > > similarity index 96%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.<br>
> > > > c<br>
> > > > > rename to<br>
> > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.c<br>
> > > > > index d4590bcd19..10097f792f 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCp<br>
> > > > u.c<br>
> > > > > +++<br>
> > b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.c<br>
> > > > > @@ -10,7 +10,7 @@<br>
> > > > ><br>
> > > > > #include <Base.h><br>
> > > > > #include <Pi/PiMmCis.h><br>
> > > > > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h><br>
> > > > > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h><br>
> > > > > #include <Library/DebugLib.h><br>
> > > > > #include <Library/ArmSvcLib.h><br>
> > > > > #include <Library/ArmLib.h><br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCp<br>
> > > > u.h<br>
> > b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.h<br>
> > > > > similarity index 100%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.<br>
> > > > h<br>
> > > > > rename to<br>
> > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.h<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCp<br>
> > > > u.inf<br>
> > b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf<br>
> > > > > similarity index 100%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.i<br>
> > > > nf<br>
> > > > > rename to<br>
> > > > StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Include/Library/AArch64/StandaloneMmCoreEntryPoin<br>
> > > > t.h<br>
> > > ><br>
> > b/StandaloneMmPkg/Include/Library/Arm/StandaloneMmCoreEntryPoint.h<br>
> > > > > similarity index 100%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Include/Library/AArch64/StandaloneMmCoreEntryPoint.h<br>
> > > > > rename to<br>
> > > ><br>
> StandaloneMmPkg/Include/Library/Arm/StandaloneMmCoreEntryPoint.h<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/Create<br>
> > > > HobList.c<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/CreateHob<br>
> > > > List.c<br>
> > > > > similarity index 97%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/CreateHo<br>
> > > > bList.c<br>
> > > > > rename to<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/CreateHobLis<br>
> > > > t.c<br>
> > > > > index 4d4cf3d5ff..85f8194687 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/Create<br>
> > > > HobList.c<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/CreateHob<br>
> > > > List.c<br>
> > > > > @@ -14,7 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent<br>
> > > > > #include <Guid/MmramMemoryReserve.h><br>
> > > > > #include <Guid/MpInformation.h><br>
> > > > ><br>
> > > > > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h><br>
> > > > > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h><br>
> > > > > #include <Library/ArmMmuLib.h><br>
> > > > > #include <Library/ArmSvcLib.h><br>
> > > > > #include <Library/DebugLib.h><br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/SetPer<br>
> > > > missions.c<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/SetPermissi<br>
> > > > ons.c<br>
> > > > > similarity index 96%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/SetPermi<br>
> > > > ssions.c<br>
> > > > > rename to<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/SetPermissio<br>
> > > > ns.c<br>
> > > > > index 4a380df4a6..cd4b90823e 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/SetPer<br>
> > > > missions.c<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/SetPermissi<br>
> > > > ons.c<br>
> > > > > @@ -14,7 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent<br>
> > > > > #include <Guid/MmramMemoryReserve.h><br>
> > > > > #include <Guid/MpInformation.h><br>
> > > > ><br>
> > > > > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h><br>
> > > > > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h><br>
> > > > > #include <Library/ArmMmuLib.h><br>
> > > > > #include <Library/ArmSvcLib.h><br>
> > > > > #include <Library/DebugLib.h><br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/Standa<br>
> > > > loneMmCoreEntryPoint.c<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/Standalone<br>
> > > > MmCoreEntryPoint.c<br>
> > > > > similarity index 94%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/Standalo<br>
> > > > neMmCoreEntryPoint.c<br>
> > > > > rename to<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/StandaloneM<br>
> > > > mCoreEntryPoint.c<br>
> > > > > index b445d6942e..49cf51a789 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/Standa<br>
> > > > loneMmCoreEntryPoint.c<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/Standalone<br>
> > > > MmCoreEntryPoint.c<br>
> > > > > @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent<br>
> > > > ><br>
> > > > > #include <PiMm.h><br>
> > > > ><br>
> > > > > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h><br>
> > > > > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h><br>
> > > > ><br>
> > > > > #include <PiPei.h><br>
> > > > > #include <Guid/MmramMemoryReserve.h><br>
> > > > > @@ -182,13 +182,13 @@ DelegatedEventLoop (<br>
> > > > > }<br>
> > > > ><br>
> > > > > if (FfaEnabled) {<br>
> > > > > - EventCompleteSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH64;<br>
> > > > > + EventCompleteSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP;<br>
> > > > > EventCompleteSvcArgs->Arg1 = 0;<br>
> > > > > EventCompleteSvcArgs->Arg2 = 0;<br>
> > > > > - EventCompleteSvcArgs->Arg3 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;<br>
> > > > > + EventCompleteSvcArgs->Arg3 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE;<br>
> > > > > EventCompleteSvcArgs->Arg4 = SvcStatus;<br>
> > > > > } else {<br>
> > > > > - EventCompleteSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;<br>
> > > > > + EventCompleteSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE;<br>
> > > > > EventCompleteSvcArgs->Arg1 = SvcStatus;<br>
> > > > > }<br>
> > > > > }<br>
> > > > > @@ -273,13 +273,13 @@ InitArmSvcArgs (<br>
> > > > > )<br>
> > > > > {<br>
> > > > > if (FeaturePcdGet (PcdFfaEnable)) {<br>
> > > > > - InitMmFoundationSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH64;<br>
> > > > > + InitMmFoundationSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP;<br>
> > > > > InitMmFoundationSvcArgs->Arg1 = 0;<br>
> > > > > InitMmFoundationSvcArgs->Arg2 = 0;<br>
> > > > > - InitMmFoundationSvcArgs->Arg3 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;<br>
> > > > > + InitMmFoundationSvcArgs->Arg3 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE;<br>
> > > > > InitMmFoundationSvcArgs->Arg4 = *Ret;<br>
> > > > > } else {<br>
> > > > > - InitMmFoundationSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;<br>
> > > > > + InitMmFoundationSvcArgs->Arg0 =<br>
> > > > ARM_SVC_ID_SP_EVENT_COMPLETE;<br>
> > > > > InitMmFoundationSvcArgs->Arg1 = *Ret;<br>
> > > > > }<br>
> > > > > }<br>
> > > > > @@ -395,7 +395,7 @@ _ModuleEntryPoint (<br>
> > > > > //<br>
> > > > > ProcessModuleEntryPointList (HobStart);<br>
> > > > ><br>
> > > > > - DEBUG ((DEBUG_INFO, "Shared Cpu Driver EP 0x%lx\n", (UINT64)<br>
> > > > CpuDriverEntryPoint));<br>
> > > > > + DEBUG ((DEBUG_INFO, "Shared Cpu Driver EP %p\n", (VOID *)<br>
> > > > CpuDriverEntryPoint));<br>
> > > > ><br>
> > > > > finish:<br>
> > > > > if (Status == RETURN_UNSUPPORTED) {<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMm<br>
> > > > CoreEntryPoint.inf<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMm<br>
> > > > CoreEntryPoint.inf<br>
> > > > > index 4fa426f58e..1762586cfa 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMm<br>
> > > > CoreEntryPoint.inf<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMm<br>
> > > > CoreEntryPoint.inf<br>
> > > > > @@ -21,10 +21,10 @@<br>
> > > > > # VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC<br>
> is<br>
> > for<br>
> > > > build only)<br>
> > > > > #<br>
> > > > ><br>
> > > > > -[Sources.AARCH64]<br>
> > > > > - AArch64/StandaloneMmCoreEntryPoint.c<br>
> > > > > - AArch64/SetPermissions.c<br>
> > > > > - AArch64/CreateHobList.c<br>
> > > > > +[Sources.AARCH64, Sources.ARM]<br>
> > > > > + Arm/StandaloneMmCoreEntryPoint.c<br>
> > > > > + Arm/SetPermissions.c<br>
> > > > > + Arm/CreateHobList.c<br>
> > > > ><br>
> > > > > [Sources.X64]<br>
> > > > > X64/StandaloneMmCoreEntryPoint.c<br>
> > > > > @@ -34,14 +34,14 @@<br>
> > > > > MdeModulePkg/MdeModulePkg.dec<br>
> > > > > StandaloneMmPkg/StandaloneMmPkg.dec<br>
> > > > ><br>
> > > > > -[Packages.AARCH64]<br>
> > > > > +[Packages.ARM, Packages.AARCH64]<br>
> > > > > ArmPkg/ArmPkg.dec<br>
> > > > ><br>
> > > > > [LibraryClasses]<br>
> > > > > BaseLib<br>
> > > > > DebugLib<br>
> > > > ><br>
> > > > > -[LibraryClasses.AARCH64]<br>
> > > > > +[LibraryClasses.ARM, LibraryClasses.AARCH64]<br>
> > > > > StandaloneMmMmuLib<br>
> > > > > ArmSvcLib<br>
> > > > ><br>
> > > > > @@ -51,7 +51,7 @@<br>
> > > > > gEfiStandaloneMmNonSecureBufferGuid<br>
> > > > > gEfiArmTfCpuDriverEpDescriptorGuid<br>
> > > > ><br>
> > > > > -[FeaturePcd.AARCH64]<br>
> > > > > +[FeaturePcd.ARM, FeaturePcd.AARCH64]<br>
> > > > > gArmTokenSpaceGuid.PcdFfaEnable<br>
> > > > ><br>
> > > > > [BuildOptions]<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/Standalon<br>
> > > > eMmCoreHobLib.c<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneM<br>
> > > > mCoreHobLib.c<br>
> > > > > similarity index 100%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/Standalone<br>
> > > > MmCoreHobLib.c<br>
> > > > > rename to<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneMmC<br>
> > > > oreHobLib.c<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/Standalon<br>
> > > > eMmCoreHobLibInternal.c<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneM<br>
> > > > mCoreHobLibInternal.c<br>
> > > > > similarity index 100%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/Standalone<br>
> > > > MmCoreHobLibInternal.c<br>
> > > > > rename to<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneMmC<br>
> > > > oreHobLibInternal.c<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCore<br>
> > > > HobLib.inf<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCore<br>
> > > > HobLib.inf<br>
> > > > > index a2559920e8..34ed536480 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCore<br>
> > > > HobLib.inf<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCore<br>
> > > > HobLib.inf<br>
> > > > > @@ -22,7 +22,7 @@<br>
> > > > > LIBRARY_CLASS =<br>
> > > > HobLib|MM_CORE_STANDALONE<br>
> > > > ><br>
> > > > > #<br>
> > > > > -# VALID_ARCHITECTURES = X64 AARCH64<br>
> > > > > +# VALID_ARCHITECTURES = X64 AARCH64 ARM<br>
> > > > > #<br>
> > > > > [Sources.common]<br>
> > > > > Common.c<br>
> > > > > @@ -30,9 +30,9 @@<br>
> > > > > [Sources.X64]<br>
> > > > > X64/StandaloneMmCoreHobLib.c<br>
> > > > ><br>
> > > > > -[Sources.AARCH64]<br>
> > > > > - AArch64/StandaloneMmCoreHobLib.c<br>
> > > > > - AArch64/StandaloneMmCoreHobLibInternal.c<br>
> > > > > +[Sources.AARCH64, Sources.ARM]<br>
> > > > > + Arm/StandaloneMmCoreHobLib.c<br>
> > > > > + Arm/StandaloneMmCoreHobLibInternal.c<br>
> > > > ><br>
> > > > > [Packages]<br>
> > > > > MdePkg/MdePkg.dec<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmMemLib/AArch64/StandaloneM<br>
> > > > mMemLibInternal.c<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/ArmStandaloneMmMe<br>
> > > > mLibInternal.c<br>
> > > > > similarity index 86%<br>
> > > > > rename from<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmMemLib/AArch64/StandaloneMm<br>
> > > > MemLibInternal.c<br>
> > > > > rename to<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmMemLib/ArmStandaloneMmMemL<br>
> > > > ibInternal.c<br>
> > > > > index 4124959e04..fa7df46413 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmMemLib/AArch64/StandaloneM<br>
> > > > mMemLibInternal.c<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/ArmStandaloneMmMe<br>
> > > > mLibInternal.c<br>
> > > > > @@ -20,6 +20,13 @@<br>
> > > > > //<br>
> > > > > extern EFI_PHYSICAL_ADDRESS<br>
> > > > mMmMemLibInternalMaximumSupportAddress;<br>
> > > > ><br>
> > > > > +#ifdef MDE_CPU_AARCH64<br>
> > > > > +#define ARM_PHYSICAL_ADDRESS_BITS 36<br>
> > > > > +#endif<br>
> > > > > +#ifdef MDE_CPU_ARM<br>
> > > > > +#define ARM_PHYSICAL_ADDRESS_BITS 32<br>
> > > > > +#endif<br>
> > > > > +<br>
> > > > > /**<br>
> > > > > Calculate and save the maximum support address.<br>
> > > > ><br>
> > > > > @@ -31,7 +38,7 @@<br>
> > > > MmMemLibInternalCalculateMaximumSupportAddress (<br>
> > > > > {<br>
> > > > > UINT8 PhysicalAddressBits;<br>
> > > > ><br>
> > > > > - PhysicalAddressBits = 36;<br>
> > > > > + PhysicalAddressBits = ARM_PHYSICAL_ADDRESS_BITS;<br>
> > > > ><br>
> > > > > //<br>
> > > > > // Save the maximum support address in one global variable<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib<br>
> > > > .inf<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib<br>
> > > > .inf<br>
> > > > > index 062b0d7a11..b29d97a746 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib<br>
> > > > .inf<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib<br>
> > > > .inf<br>
> > > > > @@ -28,7 +28,7 @@<br>
> > > > > #<br>
> > > > > # The following information is for reference only and not required<br>
> by<br>
> > the<br>
> > > > build tools.<br>
> > > > > #<br>
> > > > > -# VALID_ARCHITECTURES = IA32 X64 AARCH64<br>
> > > > > +# VALID_ARCHITECTURES = IA32 X64 AARCH64 ARM<br>
> > > > > #<br>
> > > > ><br>
> > > > > [Sources.Common]<br>
> > > > > @@ -37,8 +37,8 @@<br>
> > > > > [Sources.IA32, Sources.X64]<br>
> > > > > X86StandaloneMmMemLibInternal.c<br>
> > > > ><br>
> > > > > -[Sources.AARCH64]<br>
> > > > > - AArch64/StandaloneMmMemLibInternal.c<br>
> > > > > +[Sources.AARCH64, Sources.ARM]<br>
> > > > > + ArmStandaloneMmMemLibInternal.c<br>
> > > > ><br>
> > > > > [Packages]<br>
> > > > > MdePkg/MdePkg.dec<br>
> > > > > diff --git<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDepende<br>
> > > > ncy.inf<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDepende<br>
> > > > ncy.inf<br>
> > > > > index a2a059c5d6..ffb2a6d083 100644<br>
> > > > > ---<br>
> > > ><br>
> ><br>
> a/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDepende<br>
> > > > ncy.inf<br>
> > > > > +++<br>
> > > ><br>
> ><br>
> b/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDepende<br>
> > > > ncy.inf<br>
> > > > > @@ -20,7 +20,7 @@<br>
> > > > > #<br>
> > > > > # The following information is for reference only and not required<br>
> by<br>
> > the<br>
> > > > build tools.<br>
> > > > > #<br>
> > > > > -# VALID_ARCHITECTURES = AARCH64<br>
> > > > > +# VALID_ARCHITECTURES = AARCH64|ARM<br>
> > > > > #<br>
> > > > > #<br>
> > > > ><br>
> > > > > diff --git a/StandaloneMmPkg/StandaloneMmPkg.dsc<br>
> > > > b/StandaloneMmPkg/StandaloneMmPkg.dsc<br>
> > > > > index 0c45df95e2..8012f93b7d 100644<br>
> > > > > --- a/StandaloneMmPkg/StandaloneMmPkg.dsc<br>
> > > > > +++ b/StandaloneMmPkg/StandaloneMmPkg.dsc<br>
> > > > > @@ -20,7 +20,7 @@<br>
> > > > > PLATFORM_VERSION = 1.0<br>
> > > > > DSC_SPECIFICATION = 0x00010011<br>
> > > > > OUTPUT_DIRECTORY = Build/StandaloneMm<br>
> > > > > - SUPPORTED_ARCHITECTURES = AARCH64|X64<br>
> > > > > + SUPPORTED_ARCHITECTURES = AARCH64|X64|ARM<br>
> > > > > BUILD_TARGETS = DEBUG|RELEASE<br>
> > > > > SKUID_IDENTIFIER = DEFAULT<br>
> > > > ><br>
> > > > > @@ -60,7 +60,7 @@<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryP<br>
> > > > oint/StandaloneMmDriverEntryPoint.inf<br>
> > > > ><br>
> > > ><br>
> ><br>
> VariableMmDependency|StandaloneMmPkg/Library/VariableMmDependenc<br>
> > > > y/VariableMmDependency.inf<br>
> > > > ><br>
> > > > > -[LibraryClasses.AARCH64]<br>
> > > > > +[LibraryClasses.AARCH64, LibraryClasses.ARM]<br>
> > > > > ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmMmuLib|ArmPkg/Library/StandaloneMmMmuLib/ArmMmuSt<br>
> > > > andaloneMmLib.inf<br>
> > > > > ArmSvcLib|ArmPkg/Library/ArmSvcLib/ArmSvcLib.inf<br>
> > > > > @@ -118,8 +118,8 @@<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmMemoryAllocationLib/Standalone<br>
> > > > MmMemoryAllocationLib.inf<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependenc<br>
> > > > y.inf<br>
> > > > ><br>
> > > > > -[Components.AARCH64]<br>
> > > > > -<br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.i<br>
> > > > nf<br>
> > > > > +[Components.AARCH64, Components.ARM]<br>
> > > > > +<br>
> > StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf<br>
> > > > ><br>
> > > ><br>
> ><br>
> StandaloneMmPkg/Library/StandaloneMmPeCoffExtraActionLib/Standalone<br>
> > > > MmPeCoffExtraActionLib.inf<br>
> > > > ><br>
> > > > ><br>
> > > ><br>
> ><br>
> ##############################################################<br>
> > > > #####################################<br>
> > > > > @@ -135,6 +135,10 @@<br>
> > > > > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000<br>
> > > > -march=armv8-a+nofp -mstrict-align<br>
> > > > > GCC:*_*_*_CC_FLAGS = -mstrict-align<br>
> > > > ><br>
> > > > > +[BuildOptions.ARM]<br>
> > > > > +GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000<br>
> > > > -march=armv7-a<br>
> > > > > +GCC:*_*_*_CC_FLAGS = -fno-stack-protector<br>
> > > > > +<br>
> > > > > [BuildOptions.X64]<br>
> > > > > MSFT:*_*_*_DLINK_FLAGS = /ALIGN:4096<br>
> > > > > GCC:*_GCC*_*_DLINK_FLAGS = -z common-page-size=0x1000<br>
> > > ><br>
> > > ><br>
> > > ><br>
> > > ><br>
> > > ><br>
> > ><br>
> > ><br>
> > ><br>
> > ><br>
> > ><br>
> > ><br>
> > ><br>
> > ><br>
> ><br>
> ><br>
> ><br>
> ><br>
> <br>
> <br>
> <br>
> <br>
> <br>
> <br>
> <br>
<br>
<br>
<br>
</div>
</span></font><br>
</div>
</body>
</html>
<div width="1" style="color:white;clear:both">_._,_._,_</div> <hr> Groups.io Links:<p> You receive all messages sent to this group. <p> <a target="_blank" href="https://edk2.groups.io/g/devel/message/78269">View/Reply Online (#78269)</a> | | <a target="_blank" href="https://groups.io/mt/84499979/1813853">Mute This Topic</a> | <a href="https://edk2.groups.io/g/devel/post">New Topic</a><br> <a href="https://edk2.groups.io/g/devel/editsub/1813853">Your Subscription</a> | <a href="mailto:devel+owner@edk2.groups.io">Contact Group Owner</a> | <a href="https://edk2.groups.io/g/devel/unsub">Unsubscribe</a> [edk2-devel-archive@redhat.com]<br> <div width="1" style="color:white;clear:both">_._,_._,_</div>