From: "Etienne Carriere" <etienne.carriere@linaro.org>
To: Sami Mujawar <sami.mujawar@arm.com>
Cc: devel@edk2.groups.io, Achin Gupta <achin.gupta@arm.com>,
Ard Biesheuvel <ardb+tianocore@kernel.org>,
Jiewen Yao <jiewen.yao@intel.com>,
Leif Lindholm <leif@nuviainc.com>,
Sughosh Ganu <sughosh.ganu@linaro.org>,
nd@arm.com
Subject: Re: [PATCH 5/5] StandaloneMmPkg: build for 32bit arm machines
Date: Wed, 12 May 2021 12:01:03 +0200 [thread overview]
Message-ID: <CAN5uoS8kKv34bAWEb_tRs8Cq0FELcxh1CsE9=LkWONKG85cs=A@mail.gmail.com> (raw)
In-Reply-To: <a707561a-d065-35ea-115a-8f73150b3ff3@arm.com>
Hello Sami,
Thanks for the comments.
I'll address them in v2 if this series.
Regards,
Etienne
On Tue, 11 May 2021 at 21:18, Sami Mujawar <sami.mujawar@arm.com> wrote:
>
> Hi Etienne,
>
> Thank you for this patch.
>
> I am getting build errors in VariableMmDependency.inf when building for
> ARM. Not sure if you are getting these or it is my development
> environment (I am building on a Windows Host PC). Can you let me know
> which AArch32 GCC compiler you are using, please?
I am using gcc 9.2 cross toolchain prebuilt by Arm
(arm-linux-none-gnueabihf, 19dec2019) from:
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads
>
> Apart from this, there are some minor comments that I have marked inline
> as [SAMI].
>
> With those addressed.
>
> Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
>
> Regards,
>
> Sami Mujawar
>
> On 04/05/2021 04:20 PM, Etienne Carriere wrote:
> > This change allows to build StandaloneMmPkg components for 32bit Arm
> > StandaloneMm firmware.
> >
> > This change mainly moves AArch64/ source files to Arm/ side directory
> > for several components: StandaloneMmCpu, StandaloneMmCoreEntryPoint
> > and StandaloneMmMemLib. The source file is built for both 32b and 64b
> > Arm targets.
> >
> > Cc: Achin Gupta <achin.gupta@arm.com>
> > Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
> > Cc: Jiewen Yao <jiewen.yao@intel.com>
> > Cc: Leif Lindholm <leif@nuviainc.com>
> > Cc: Sami Mujawar <sami.mujawar@arm.com>
> > Cc: Sughosh Ganu <sughosh.ganu@linaro.org>
> > Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
> > ---
> > StandaloneMmPkg/Core/StandaloneMmCore.inf | 2 +-
> > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/EventHandle.c | 12 ++++++++++--
> > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/StandaloneMmCpu.c | 2 +-
> > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/StandaloneMmCpu.h | 0
> > StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/StandaloneMmCpu.inf | 0
> > StandaloneMmPkg/Include/Library/{AArch64 => Arm}/StandaloneMmCoreEntryPoint.h | 0
> > StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64 => Arm}/CreateHobList.c | 2 +-
> > StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64 => Arm}/SetPermissions.c | 2 +-
> > StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/{AArch64 => Arm}/StandaloneMmCoreEntryPoint.c | 16 ++++++++--------
> > StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf | 14 +++++++-------
> > StandaloneMmPkg/Library/StandaloneMmCoreHobLib/{AArch64 => Arm}/StandaloneMmCoreHobLib.c | 0
> > StandaloneMmPkg/Library/StandaloneMmCoreHobLib/{AArch64 => Arm}/StandaloneMmCoreHobLibInternal.c | 0
> > StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.inf | 8 ++++----
> > StandaloneMmPkg/Library/StandaloneMmMemLib/{AArch64/StandaloneMmMemLibInternal.c => ArmStandaloneMmMemLibInternal.c} | 9 ++++++++-
> > StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf | 6 +++---
> > StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf | 2 +-
> > StandaloneMmPkg/StandaloneMmPkg.dsc | 8 ++++----
> > 17 files changed, 49 insertions(+), 34 deletions(-)
> >
> > diff --git a/StandaloneMmPkg/Core/StandaloneMmCore.inf b/StandaloneMmPkg/Core/StandaloneMmCore.inf
> > index 87bf6e9440..56042b7b39 100644
> > --- a/StandaloneMmPkg/Core/StandaloneMmCore.inf
> > +++ b/StandaloneMmPkg/Core/StandaloneMmCore.inf
> > @@ -17,7 +17,7 @@
> > PI_SPECIFICATION_VERSION = 0x00010032
> > ENTRY_POINT = StandaloneMmMain
> >
> > -# VALID_ARCHITECTURES = IA32 X64 AARCH64
> > +# VALID_ARCHITECTURES = IA32 X64 AARCH64 ARM
> >
> > [Sources]
> > StandaloneMmCore.c
> > diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c b/StandaloneMmPkg/Drivers/StandaloneMmCpu/EventHandle.c
> > similarity index 92%
> > rename from StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c
> > rename to StandaloneMmPkg/Drivers/StandaloneMmCpu/EventHandle.c
> > index 63fbe26642..2d7fd81133 100644
> > --- a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c
> > +++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/EventHandle.c
> > @@ -2,6 +2,7 @@
> >
> > Copyright (c) 2016 HP Development Company, L.P.
> > Copyright (c) 2016 - 2021, Arm Limited. All rights reserved.
> > + Copyright (c) 2021, Linaro Limited
> >
> > SPDX-License-Identifier: BSD-2-Clause-Patent
> >
> > @@ -27,6 +28,13 @@
> >
> > #include "StandaloneMmCpu.h"
> >
> > +#ifdef MDE_CPU_AARCH64
> > +#define ARM_SMC_ID_MM_COMMUNICATE ARM_SMC_ID_MM_COMMUNICATE_AARCH64
> > +#endif
> > +#ifdef MDE_CPU_ARM
> > +#define ARM_SMC_ID_MM_COMMUNICATE ARM_SMC_ID_MM_COMMUNICATE_AARCH32
> > +#endif
> [SAMI] Should this definition be in
> ArmPkg\Include\IndustryStandard\ArmStdSmc.h?
> I can see Patch 2/5 uses the above define in
> ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c.
That would make sense, yes. I'll update in v2.
> [/SAMI]
> > +
> > EFI_STATUS
> > EFIAPI
> > MmFoundationEntryRegister (
> > @@ -92,8 +100,8 @@ PiMmStandaloneArmTfCpuDriverEntry (
> > // receipt of a synchronous MM request. Use the Event ID to distinguish
> > // between synchronous and asynchronous events.
> > //
> > - if ((ARM_SMC_ID_MM_COMMUNICATE_AARCH64 != EventId) &&
> > - (ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ_AARCH64 != EventId)) {
> > + if ((ARM_SMC_ID_MM_COMMUNICATE != EventId) &&
> > + (ARM_SVC_ID_FFA_MSG_SEND_DIRECT_REQ != EventId)) {
> > DEBUG ((DEBUG_INFO, "UnRecognized Event - 0x%x\n", EventId));
> > return EFI_INVALID_PARAMETER;
> > }
> > diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.c
> > similarity index 96%
> > rename from StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c
> > rename to StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.c
> > index d4590bcd19..10097f792f 100644
> > --- a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c
> > +++ b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.c
> > @@ -10,7 +10,7 @@
> >
> > #include <Base.h>
> > #include <Pi/PiMmCis.h>
> > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h>
> > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h>
> > #include <Library/DebugLib.h>
> > #include <Library/ArmSvcLib.h>
> > #include <Library/ArmLib.h>
> > diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.h
> > similarity index 100%
> > rename from StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h
> > rename to StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.h
> > diff --git a/StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.inf b/StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf
> > similarity index 100%
> > rename from StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.inf
> > rename to StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf
> > diff --git a/StandaloneMmPkg/Include/Library/AArch64/StandaloneMmCoreEntryPoint.h b/StandaloneMmPkg/Include/Library/Arm/StandaloneMmCoreEntryPoint.h
> > similarity index 100%
> > rename from StandaloneMmPkg/Include/Library/AArch64/StandaloneMmCoreEntryPoint.h
> > rename to StandaloneMmPkg/Include/Library/Arm/StandaloneMmCoreEntryPoint.h
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/CreateHobList.c b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/CreateHobList.c
> > similarity index 97%
> > rename from StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/CreateHobList.c
> > rename to StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/CreateHobList.c
> > index 4d4cf3d5ff..85f8194687 100644
> > --- a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/CreateHobList.c
> > +++ b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/CreateHobList.c
> > @@ -14,7 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
> > #include <Guid/MmramMemoryReserve.h>
> > #include <Guid/MpInformation.h>
> >
> > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h>
> > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h>
> > #include <Library/ArmMmuLib.h>
> > #include <Library/ArmSvcLib.h>
> > #include <Library/DebugLib.h>
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/SetPermissions.c b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/SetPermissions.c
> > similarity index 96%
> > rename from StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/SetPermissions.c
> > rename to StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/SetPermissions.c
> > index 4a380df4a6..cd4b90823e 100644
> > --- a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/SetPermissions.c
> > +++ b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/SetPermissions.c
> > @@ -14,7 +14,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
> > #include <Guid/MmramMemoryReserve.h>
> > #include <Guid/MpInformation.h>
> >
> > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h>
> > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h>
> > #include <Library/ArmMmuLib.h>
> > #include <Library/ArmSvcLib.h>
> > #include <Library/DebugLib.h>
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/StandaloneMmCoreEntryPoint.c
> > similarity index 94%
> > rename from StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c
> > rename to StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/StandaloneMmCoreEntryPoint.c
> > index b445d6942e..e199e81bbd 100644
> > --- a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c
> > +++ b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/Arm/StandaloneMmCoreEntryPoint.c
> > @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
> >
> > #include <PiMm.h>
> >
> > -#include <Library/AArch64/StandaloneMmCoreEntryPoint.h>
> > +#include <Library/Arm/StandaloneMmCoreEntryPoint.h>
> >
> > #include <PiPei.h>
> > #include <Guid/MmramMemoryReserve.h>
> > @@ -182,13 +182,13 @@ DelegatedEventLoop (
> > }
> >
> > if (FfaEnabled) {
> > - EventCompleteSvcArgs->Arg0 = ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH64;
> > + EventCompleteSvcArgs->Arg0 = ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP;
> > EventCompleteSvcArgs->Arg1 = 0;
> > EventCompleteSvcArgs->Arg2 = 0;
> > - EventCompleteSvcArgs->Arg3 = ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;
> > + EventCompleteSvcArgs->Arg3 = ARM_SVC_ID_SP_EVENT_COMPLETE;
> > EventCompleteSvcArgs->Arg4 = SvcStatus;
> > } else {
> > - EventCompleteSvcArgs->Arg0 = ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;
> > + EventCompleteSvcArgs->Arg0 = ARM_SVC_ID_SP_EVENT_COMPLETE;
> > EventCompleteSvcArgs->Arg1 = SvcStatus;
> > }
> > }
> > @@ -273,13 +273,13 @@ InitArmSvcArgs (
> > )
> > {
> > if (FeaturePcdGet (PcdFfaEnable)) {
> > - InitMmFoundationSvcArgs->Arg0 = ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP_AARCH64;
> > + InitMmFoundationSvcArgs->Arg0 = ARM_SVC_ID_FFA_MSG_SEND_DIRECT_RESP;
> > InitMmFoundationSvcArgs->Arg1 = 0;
> > InitMmFoundationSvcArgs->Arg2 = 0;
> > - InitMmFoundationSvcArgs->Arg3 = ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;
> > + InitMmFoundationSvcArgs->Arg3 = ARM_SVC_ID_SP_EVENT_COMPLETE;
> > InitMmFoundationSvcArgs->Arg4 = *Ret;
> > } else {
> > - InitMmFoundationSvcArgs->Arg0 = ARM_SVC_ID_SP_EVENT_COMPLETE_AARCH64;
> > + InitMmFoundationSvcArgs->Arg0 = ARM_SVC_ID_SP_EVENT_COMPLETE;
> > InitMmFoundationSvcArgs->Arg1 = *Ret;
> > }
> > }
> > @@ -395,7 +395,7 @@ _ModuleEntryPoint (
> > //
> > ProcessModuleEntryPointList (HobStart);
> >
> > - DEBUG ((DEBUG_INFO, "Shared Cpu Driver EP 0x%lx\n", (UINT64) CpuDriverEntryPoint));
> > + DEBUG ((DEBUG_INFO, "Shared Cpu Driver EP %p\n", (void *) CpuDriverEntryPoint));
> [SAMI] void * should be changed to VOID*
ok
> [/SAMI]
> >
> > finish:
> > if (Status == RETURN_UNSUPPORTED) {
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf
> > index 4fa426f58e..1762586cfa 100644
> > --- a/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf
> > +++ b/StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf
> > @@ -21,10 +21,10 @@
> > # VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only)
> > #
> >
> > -[Sources.AARCH64]
> > - AArch64/StandaloneMmCoreEntryPoint.c
> > - AArch64/SetPermissions.c
> > - AArch64/CreateHobList.c
> > +[Sources.AARCH64, Sources.ARM]
> > + Arm/StandaloneMmCoreEntryPoint.c
> > + Arm/SetPermissions.c
> > + Arm/CreateHobList.c
> >
> > [Sources.X64]
> > X64/StandaloneMmCoreEntryPoint.c
> > @@ -34,14 +34,14 @@
> > MdeModulePkg/MdeModulePkg.dec
> > StandaloneMmPkg/StandaloneMmPkg.dec
> >
> > -[Packages.AARCH64]
> > +[Packages.ARM, Packages.AARCH64]
> > ArmPkg/ArmPkg.dec
> >
> > [LibraryClasses]
> > BaseLib
> > DebugLib
> >
> > -[LibraryClasses.AARCH64]
> > +[LibraryClasses.ARM, LibraryClasses.AARCH64]
> > StandaloneMmMmuLib
> > ArmSvcLib
> >
> > @@ -51,7 +51,7 @@
> > gEfiStandaloneMmNonSecureBufferGuid
> > gEfiArmTfCpuDriverEpDescriptorGuid
> >
> > -[FeaturePcd.AARCH64]
> > +[FeaturePcd.ARM, FeaturePcd.AARCH64]
> > gArmTokenSpaceGuid.PcdFfaEnable
> >
> > [BuildOptions]
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/StandaloneMmCoreHobLib.c b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneMmCoreHobLib.c
> > similarity index 100%
> > rename from StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/StandaloneMmCoreHobLib.c
> > rename to StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneMmCoreHobLib.c
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/StandaloneMmCoreHobLibInternal.c b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneMmCoreHobLibInternal.c
> > similarity index 100%
> > rename from StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/StandaloneMmCoreHobLibInternal.c
> > rename to StandaloneMmPkg/Library/StandaloneMmCoreHobLib/Arm/StandaloneMmCoreHobLibInternal.c
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.inf b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.inf
> > index a2559920e8..34ed536480 100644
> > --- a/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.inf
> > +++ b/StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.inf
> > @@ -22,7 +22,7 @@
> > LIBRARY_CLASS = HobLib|MM_CORE_STANDALONE
> >
> > #
> > -# VALID_ARCHITECTURES = X64 AARCH64
> > +# VALID_ARCHITECTURES = X64 AARCH64 ARM
> > #
> > [Sources.common]
> > Common.c
> > @@ -30,9 +30,9 @@
> > [Sources.X64]
> > X64/StandaloneMmCoreHobLib.c
> >
> > -[Sources.AARCH64]
> > - AArch64/StandaloneMmCoreHobLib.c
> > - AArch64/StandaloneMmCoreHobLibInternal.c
> > +[Sources.AARCH64, Sources.ARM]
> > + Arm/StandaloneMmCoreHobLib.c
> > + Arm/StandaloneMmCoreHobLibInternal.c
> >
> > [Packages]
> > MdePkg/MdePkg.dec
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmMemLib/AArch64/StandaloneMmMemLibInternal.c b/StandaloneMmPkg/Library/StandaloneMmMemLib/ArmStandaloneMmMemLibInternal.c
> > similarity index 86%
> > rename from StandaloneMmPkg/Library/StandaloneMmMemLib/AArch64/StandaloneMmMemLibInternal.c
> > rename to StandaloneMmPkg/Library/StandaloneMmMemLib/ArmStandaloneMmMemLibInternal.c
> > index 4124959e04..fa7df46413 100644
> > --- a/StandaloneMmPkg/Library/StandaloneMmMemLib/AArch64/StandaloneMmMemLibInternal.c
> > +++ b/StandaloneMmPkg/Library/StandaloneMmMemLib/ArmStandaloneMmMemLibInternal.c
> > @@ -20,6 +20,13 @@
> > //
> > extern EFI_PHYSICAL_ADDRESS mMmMemLibInternalMaximumSupportAddress;
> >
> > +#ifdef MDE_CPU_AARCH64
> > +#define ARM_PHYSICAL_ADDRESS_BITS 36
> > +#endif
> > +#ifdef MDE_CPU_ARM
> > +#define ARM_PHYSICAL_ADDRESS_BITS 32
> > +#endif
> > +
> > /**
> > Calculate and save the maximum support address.
> >
> > @@ -31,7 +38,7 @@ MmMemLibInternalCalculateMaximumSupportAddress (
> > {
> > UINT8 PhysicalAddressBits;
> >
> > - PhysicalAddressBits = 36;
> > + PhysicalAddressBits = ARM_PHYSICAL_ADDRESS_BITS;
> >
> > //
> > // Save the maximum support address in one global variable
> > diff --git a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf
> > index 062b0d7a11..b29d97a746 100644
> > --- a/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf
> > +++ b/StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf
> > @@ -28,7 +28,7 @@
> > #
> > # The following information is for reference only and not required by the build tools.
> > #
> > -# VALID_ARCHITECTURES = IA32 X64 AARCH64
> > +# VALID_ARCHITECTURES = IA32 X64 AARCH64 ARM
> > #
> >
> > [Sources.Common]
> > @@ -37,8 +37,8 @@
> > [Sources.IA32, Sources.X64]
> > X86StandaloneMmMemLibInternal.c
> >
> > -[Sources.AARCH64]
> > - AArch64/StandaloneMmMemLibInternal.c
> > +[Sources.AARCH64, Sources.ARM]
> > + ArmStandaloneMmMemLibInternal.c
> >
> > [Packages]
> > MdePkg/MdePkg.dec
> > diff --git a/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf b/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf
> > index a2a059c5d6..ffb2a6d083 100644
> > --- a/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf
> > +++ b/StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf
> > @@ -20,7 +20,7 @@
> > #
> > # The following information is for reference only and not required by the build tools.
> > #
> > -# VALID_ARCHITECTURES = AARCH64
> > +# VALID_ARCHITECTURES = AARCH64|ARM
> > #
> > #
> >
> > diff --git a/StandaloneMmPkg/StandaloneMmPkg.dsc b/StandaloneMmPkg/StandaloneMmPkg.dsc
> > index 0c45df95e2..01bfbe8cc5 100644
> > --- a/StandaloneMmPkg/StandaloneMmPkg.dsc
> > +++ b/StandaloneMmPkg/StandaloneMmPkg.dsc
> > @@ -20,7 +20,7 @@
> > PLATFORM_VERSION = 1.0
> > DSC_SPECIFICATION = 0x00010011
> > OUTPUT_DIRECTORY = Build/StandaloneMm
> > - SUPPORTED_ARCHITECTURES = AARCH64|X64
> > + SUPPORTED_ARCHITECTURES = AARCH64|X64|ARM
> > BUILD_TARGETS = DEBUG|RELEASE
> > SKUID_IDENTIFIER = DEFAULT
> >
> > @@ -60,7 +60,7 @@
> > StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf
> > VariableMmDependency|StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf
> >
> > -[LibraryClasses.AARCH64]
> > +[LibraryClasses.AARCH64, LibraryClasses.ARM]
> > ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
> > StandaloneMmMmuLib|ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf
> > ArmSvcLib|ArmPkg/Library/ArmSvcLib/ArmSvcLib.inf
> > @@ -118,7 +118,7 @@
> > StandaloneMmPkg/Library/StandaloneMmMemoryAllocationLib/StandaloneMmMemoryAllocationLib.inf
> > StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf
> >
> > -[Components.AARCH64]
> > +[Components.AARCH64, Components.ARM]
> > StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.inf
> [SAMI] I think this should be
> StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf.
ouch, right. thanks.
> [/SAMI]
> > StandaloneMmPkg/Library/StandaloneMmPeCoffExtraActionLib/StandaloneMmPeCoffExtraActionLib.inf
> >
> > @@ -131,7 +131,7 @@
> > # module style (EDK or EDKII) specified in [Components] section.
> > #
> > ###################################################################################################
> > -[BuildOptions.AARCH64]
> > +[BuildOptions.AARCH64, BuildOptions.ARM]
> > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 -march=armv8-a+nofp -mstrict-align
> > GCC:*_*_*_CC_FLAGS = -mstrict-align
> >
>
next prev parent reply other threads:[~2021-05-12 10:01 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-04 15:20 [PATCH 0/5] Arm 32bit support in StandaloveMm Etienne Carriere
2021-05-04 15:20 ` [PATCH 1/5] ArmPkg/IndustryStandard: 32b/64b agnostic FF-A and Mm SVC IDs Etienne Carriere
2021-05-11 18:43 ` Sami Mujawar
2021-05-04 15:20 ` [PATCH 2/5] ArmPkg: prepare 32bit ARM build of StandaloneMmPkg Etienne Carriere
2021-05-11 18:45 ` Sami Mujawar
2021-05-04 15:20 ` [PATCH 3/5] GenGv: Arm: support images entered in Thumb mode Etienne Carriere
2021-05-10 15:54 ` Ard Biesheuvel
2021-05-11 19:13 ` Sami Mujawar
2021-05-04 15:20 ` [PATCH 4/5] StandaloneMmPkg: fix pointer/int casts against 32bit architectures Etienne Carriere
2021-05-05 2:10 ` [edk2-devel] " Yao, Jiewen
2021-05-10 15:50 ` Ard Biesheuvel
2021-05-11 19:14 ` Sami Mujawar
2021-05-04 15:20 ` [PATCH 5/5] StandaloneMmPkg: build for 32bit arm machines Etienne Carriere
2021-05-11 19:18 ` Sami Mujawar
2021-05-12 10:01 ` Etienne Carriere [this message]
2021-05-06 3:25 ` 回复: [edk2-devel] [PATCH 0/5] Arm 32bit support in StandaloveMm gaoliming
2021-05-06 6:44 ` Etienne Carriere
-- strict thread matches above, loose matches on Subject: below --
2021-03-14 20:06 [PATCH 1/5] ArmPkg/IndustryStandard: 32b/64b agnostic FF-A and Mm SVC IDs Etienne Carriere
2021-03-14 20:06 ` [PATCH 5/5] StandaloneMmPkg: build for 32bit arm machines Etienne Carriere
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAN5uoS8kKv34bAWEb_tRs8Cq0FELcxh1CsE9=LkWONKG85cs=A@mail.gmail.com' \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox