From: "Etienne Carriere" <etienne.carriere@linaro.org>
To: devel@edk2.groups.io
Cc: Achin Gupta <achin.gupta@arm.com>,
Ard Biesheuvel <ardb+tianocore@kernel.org>,
Jiewen Yao <jiewen.yao@intel.com>,
Leif Lindholm <leif@nuviainc.com>,
Sami Mujawar <sami.mujawar@arm.com>,
Sughosh Ganu <sughosh.ganu@linaro.org>
Subject: Re: [PATCH v2 5/5] StandaloneMmPkg: build for 32bit arm machines
Date: Mon, 17 May 2021 08:23:31 +0200 [thread overview]
Message-ID: <CAN5uoS8hKRLetZN_EO+fdkOT8APVURcjgVDMZR-1SMyD85ERFg@mail.gmail.com> (raw)
In-Reply-To: <20210517054911.30665-5-etienne.carriere@linaro.org>
Dear all,
For info, Tested on Qemu/arm and stm32mp1 (both armv7-a) and on 64bit
Qemu/AArch64.
I used OP-TEE 3.13.0 to host the StMM instance.
Regards,
Etienne
On Mon, 17 May 2021 at 07:50, Etienne Carriere
<etienne.carriere@linaro.org> 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>
> ---
> Changes since v1:
> - ARM_SMC_ID_MM_COMMUNICATE 32b/64b agnostic helper ID is defined
> in ArmStdSmc.h (see 1st commit in this series) instead of being
> local to EventHandle.c.
> - Fix void occurrence to VOID.
> - Fix path in StandaloneMmPkg/StandaloneMmPkg.dsc
> ---
> StandaloneMmPkg/Core/StandaloneMmCore.inf | 2 +-
> StandaloneMmPkg/Drivers/StandaloneMmCpu/{AArch64 => }/EventHandle.c | 5 +++--
> 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 | 10 +++++-----
> 17 files changed, 43 insertions(+), 35 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 95%
> rename from StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c
> rename to StandaloneMmPkg/Drivers/StandaloneMmCpu/EventHandle.c
> index 63fbe26642..165d696f99 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
>
> @@ -92,8 +93,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..49cf51a789 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));
>
> 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..772af1b72b 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,8 +118,8 @@
> StandaloneMmPkg/Library/StandaloneMmMemoryAllocationLib/StandaloneMmMemoryAllocationLib.inf
> StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf
>
> -[Components.AARCH64]
> - StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.inf
> +[Components.AARCH64, Components.ARM]
> + StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf
> 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
>
> --
> 2.17.1
>
prev parent reply other threads:[~2021-05-17 6:23 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-17 5:49 [PATCH v2 1/5] ArmPkg/IndustryStandard: 32b/64b agnostic FF-A, Mm SVC and Std SMC IDs Etienne Carriere
2021-05-17 5:49 ` [PATCH v2 2/5] ArmPkg: prepare 32bit ARM build of StandaloneMmPkg Etienne Carriere
2021-05-17 5:49 ` [PATCH v2 3/5] GenFv: Arm: support images entered in Thumb mode Etienne Carriere
2021-05-17 7:24 ` 回复: " gaoliming
2021-05-17 7:35 ` Etienne Carriere
2021-05-17 7:47 ` 回复: [edk2-devel] " gaoliming
2021-05-17 8:00 ` Etienne Carriere
2021-05-17 5:49 ` [PATCH v2 4/5] StandaloneMmPkg: fix pointer/int casts against 32bit architectures Etienne Carriere
2021-05-17 5:49 ` [PATCH v2 5/5] StandaloneMmPkg: build for 32bit arm machines Etienne Carriere
2021-05-17 6:23 ` Etienne Carriere [this message]
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=CAN5uoS8hKRLetZN_EO+fdkOT8APVURcjgVDMZR-1SMyD85ERFg@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