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 E6261AC0D5B for ; Fri, 15 Mar 2024 10:59:43 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=KB49Z9aBiIBdc4KefN9WnDAy49Qbnr2Bz+sIvsbN73M=; 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:Resent-Date:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20240206; t=1710500382; v=1; b=ZXgSwLmh7yfIR14vzkFtCrsKuXq1/RW5wN6sG7hA1OcycHy5w5KGMGOlYBlaGYv0SgMMhcvw rGjfGBYRh9lN7eWOa8P9Runfn6pJ6tIADseL9ArUQbl3W2GbPUVXEN20CqGnmtKDIR9e0kRhrX4 eKfOm4agwni75VvrchE4zVg7vDLeUJXo+NCj0AizkfukzmWojUwWJpPi1qt9bXdgXNcZb7e7Q95 gkfnZbCVb/FHLDCoOQoPMfukb9FqWRw88bkQPJNGkE9XPdFT6yfJtM4XzDETCPTMc9Q19a7a/4c FQtmML9Utkly9Qd7j200kK11VPMWBydc6+P2js0dVuaXA== X-Received: by 127.0.0.2 with SMTP id 6vUvYY7687511xI6u2BpT4Lv; Fri, 15 Mar 2024 03:59:42 -0700 X-Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.19223.1710500381826080400 for ; Fri, 15 Mar 2024 03:59:41 -0700 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 D19081474; Fri, 15 Mar 2024 04:00:16 -0700 (PDT) X-Received: from e129823.cambridge.arm.com (e129823.arm.com [10.1.197.6]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 4BC5D3F762; Fri, 15 Mar 2024 03:59:40 -0700 (PDT) From: "levi.yun" To: devel@edk2.groups.io Cc: yeoreum.yun@arm.com, sami.mujawar@arm.com, pierre.gondois@arm.com, nd@arm.com, thomas.abraham@arm.com Subject: [edk2-devel] [PATCH edk2-platform v2 3/3] Platform/Arm: Add Standalone MM support for FVP Date: Fri, 15 Mar 2024 10:59:36 +0000 Message-Id: <20240315105936.499262-4-yeoreum.yun@arm.com> In-Reply-To: <20240315105936.499262-3-yeoreum.yun@arm.com> References: <20240315105936.499262-1-yeoreum.yun@arm.com> <20240315105936.499262-2-yeoreum.yun@arm.com> <20240315105936.499262-3-yeoreum.yun@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 Resent-Date: Fri, 15 Mar 2024 03:59:42 -0700 Reply-To: devel@edk2.groups.io,yeoreum.yun@arm.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: VhvIEItoX8iIz0nBwS5EeHX3x7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=ZXgSwLmh; 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 Add Standalone MM support for FVP model. Signed-off-by: levi.yun --- Platform/ARM/VExpressPkg/PlatformStandaloneMm.dsc | 208 ++++++++++++++++++= ++ Platform/ARM/VExpressPkg/PlatformStandaloneMm.fdf | 106 ++++++++++ 2 files changed, 314 insertions(+) diff --git a/Platform/ARM/VExpressPkg/PlatformStandaloneMm.dsc b/Platform/A= RM/VExpressPkg/PlatformStandaloneMm.dsc new file mode 100644 index 0000000000000000000000000000000000000000..0e77b76cae698c5e0cba3ce3249= b88e4cffc98a0 --- /dev/null +++ b/Platform/ARM/VExpressPkg/PlatformStandaloneMm.dsc @@ -0,0 +1,208 @@ +## @file=0D +# Standalone MM Platform.=0D +#=0D +# Copyright (c) 2024, Arm Limited. All rights reserved.
=0D +#=0D +# SPDX-License-Identifier: BSD-2-Clause-Patent=0D +#=0D +##=0D +=0D +##########################################################################= ######=0D +#=0D +# Defines Section - statements that will be processed to create a Makefile= .=0D +#=0D +##########################################################################= ######=0D +[Defines]=0D + PLATFORM_NAME =3D StandaloneMm=0D + PLATFORM_GUID =3D 9A4BBA60-B4F9-47C7-9258-3BD77CAE9322= =0D + PLATFORM_VERSION =3D 1.0=0D + DSC_SPECIFICATION =3D 0x0001001C=0D +!ifdef $(EDK2_OUT_DIR)=0D + OUTPUT_DIRECTORY =3D $(EDK2_OUT_DIR)=0D +!else=0D + OUTPUT_DIRECTORY =3D Build/ArmVExpress-FVP-AArch64=0D +!endif=0D + SUPPORTED_ARCHITECTURES =3D AARCH64|ARM=0D + BUILD_TARGETS =3D DEBUG|RELEASE=0D + SKUID_IDENTIFIER =3D DEFAULT=0D + FLASH_DEFINITION =3D Platform/ARM/VExpressPkg/PlatformStan= daloneMm.fdf=0D + DEFINE DEBUG_MESSAGE =3D TRUE=0D +=0D + # To allow the use of ueif secure variable feature, set this to TRUE.=0D + DEFINE ENABLE_UEFI_SECURE_VARIABLE =3D FALSE=0D +=0D + # LzmaF86=0D + DEFINE COMPRESSION_TOOL_GUID =3D D42AE6BD-1352-4bfb-909A-CA72A6EAE889= =0D +=0D +##########################################################################= ######=0D +#=0D +# Library Class section - list of all Library Classes needed by this Platf= orm.=0D +#=0D +##########################################################################= ######=0D +=0D +!include MdePkg/MdeLibs.dsc.inc=0D +=0D +[LibraryClasses]=0D + #=0D + # Basic=0D + #=0D + BaseLib|MdePkg/Library/BaseLib/BaseLib.inf=0D + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf=0D +=0D + CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMain= tenanceLib.inf=0D + DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.in= f=0D + DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseD= ebugPrintErrorLevelLib.inf=0D + ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLib= /PrePiExtractGuidedSectionLib.inf=0D + FvLib|StandaloneMmPkg/Library/FvLib/FvLib.inf=0D + HobLib|StandaloneMmPkg/Library/StandaloneMmHobLib/StandaloneMmHobLib.inf= =0D + IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf=0D + MemLib|StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf= =0D + MemoryAllocationLib|StandaloneMmPkg/Library/StandaloneMmCoreMemoryAlloca= tionLib/StandaloneMmCoreMemoryAllocationLib.inf=0D + MmServicesTableLib|MdePkg/Library/StandaloneMmServicesTableLib/Standalon= eMmServicesTableLib.inf=0D + PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf=0D + PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeC= offExtraActionLibNull.inf=0D + PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf=0D + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf=0D + ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseRepor= tStatusCodeLibNull.inf=0D + StandaloneMmCoreEntryPoint|StandaloneMmPkg/Library/StandaloneMmCoreEntry= Point/StandaloneMmCoreEntryPoint.inf=0D + StandaloneMmDriverEntryPoint|MdePkg/Library/StandaloneMmDriverEntryPoint= /StandaloneMmDriverEntryPoint.inf=0D + VariableMmDependency|StandaloneMmPkg/Library/VariableMmDependency/Variab= leMmDependency.inf=0D +=0D + # ARM PL011 UART Driver=0D + PL011UartClockLib|ArmPlatformPkg/Library/PL011UartClockLib/PL011UartCloc= kLib.inf=0D + PL011UartLib|ArmPlatformPkg/Library/PL011UartLib/PL011UartLib.inf=0D + SerialPortLib|ArmPlatformPkg/Library/PL011SerialPortLib/PL011SerialPortL= ib.inf=0D +=0D +[LibraryClasses.AARCH64, LibraryClasses.ARM]=0D + ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf=0D + StandaloneMmMmuLib|ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmL= ib.inf=0D + ArmSvcLib|ArmPkg/Library/ArmSvcLib/ArmSvcLib.inf=0D + CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMainte= nanceLib.inf=0D + PeCoffExtraActionLib|StandaloneMmPkg/Library/StandaloneMmPeCoffExtraActi= onLib/StandaloneMmPeCoffExtraActionLib.inf=0D +=0D + NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf=0D + NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf=0D +=0D +[LibraryClasses.common.MM_CORE_STANDALONE]=0D + HobLib|StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHo= bLib.inf=0D +=0D +[LibraryClasses.common.MM_STANDALONE]=0D + MemoryAllocationLib|StandaloneMmPkg/Library/StandaloneMmMemoryAllocation= Lib/StandaloneMmMemoryAllocationLib.inf=0D +=0D + BaseCryptLib|CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf=0D + IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf=0D + OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf=0D + RngLib|MdePkg/Library/BaseRngLibTimerLib/BaseRngLibTimerLib.inf=0D + PlatformSecureLib|SecurityPkg/Library/PlatformSecureLibNull/PlatformSecu= reLibNull.inf=0D + SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchroniza= tionLib.inf=0D + TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplat= e.inf=0D + SafeIntLib|MdePkg/Library/BaseSafeIntLib/BaseSafeIntLib.inf=0D +=0D + # STMM for Variable runtime service.=0D +!if $(ENABLE_UEFI_SECURE_VARIABLE) =3D=3D TRUE=0D + NorFlashPlatformLib|Platform/ARM/VExpressPkg/Library/NorFlashArmVExpress= Lib/NorFlashStMmLib.inf=0D + VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf=0D + VariableFlashInfoLib|MdeModulePkg/Library/BaseVariableFlashInfoLib/BaseV= ariableFlashInfoLib.inf=0D + AuthVariableLib|SecurityPkg/Library/AuthVariableLib/AuthVariableLib.inf= =0D +!endif=0D +=0D +##########################################################################= ######=0D +#=0D +# Pcd Section - list of all EDK II PCD Entries defined by this Platform=0D +#=0D +##########################################################################= ######=0D +[PcdsFixedAtBuild]=0D + gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000008F=0D + gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xff=0D + gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF=0D +=0D + ## PL011 - Serial Terminal.=0D + gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x1c090000=0D + gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200=0D + gEfiMdePkgTokenSpaceGuid.PcdMaximumGuidedExtractHandler|0x2=0D +=0D + gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000=0D + gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800=0D +=0D + #=0D + # NV Storage PCDs.=0D + # Use its base last 256KB block for NOR1 flash.=0D + # NOR1 base is 0x0C000000 for and its size 64MB.=0D + # Therefore, 0x0C000000 + 0x04000000 (64MB) - 0x40000 (256KB) =3D 0x0FFC= 0000.=0D + #=0D +!if $(ENABLE_UEFI_SECURE_VARIABLE) =3D=3D TRUE=0D + gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x0FFC0000= =0D + gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x00010000= =0D + gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x0FFD000= 0=0D + gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x0001000= 0=0D + gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0x0FFE0000= =0D + gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x00010000= =0D +!endif=0D +=0D +##########################################################################= #########################=0D +#=0D +# Components Section - list of the modules and components that will be pro= cessed by compilation=0D +# tools and the EDK II tools to generate PE32/PE32+/C= off image files.=0D +#=0D +# Note: The EDK II DSC file is not used to specify how compiled binary ima= ges get placed=0D +# into firmware volume images. This section is just a list of module= s to compile from=0D +# source into UEFI-compliant binaries.=0D +# It is the FDF file that contains information on combining binary f= iles into firmware=0D +# volume images, whose concept is beyond UEFI and is described in PI= specification.=0D +# Binary modules do not need to be listed in this section, as they s= hould be=0D +# specified in the FDF file. For example: Shell binary (Shell_Full.e= fi), FAT binary (Fat.efi),=0D +# Logo (Logo.bmp), and etc.=0D +# There may also be modules listed in this section that are not requ= ired in the FDF file,=0D +# When a module listed here is excluded from FDF file, then UEFI-com= pliant binary will be=0D +# generated for it, but the binary will not be put into any firmware= volume.=0D +#=0D +##########################################################################= #########################=0D +[Components.common]=0D + #=0D + # MM Core=0D + #=0D + StandaloneMmPkg/Core/StandaloneMmCore.inf=0D + StandaloneMmPkg/Library/FvLib/FvLib.inf=0D + StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntry= Point.inf=0D + StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.in= f=0D + StandaloneMmPkg/Library/StandaloneMmCoreMemoryAllocationLib/StandaloneMm= CoreMemoryAllocationLib.inf=0D + StandaloneMmPkg/Library/StandaloneMmHobLib/StandaloneMmHobLib.inf=0D + StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf=0D + StandaloneMmPkg/Library/StandaloneMmMemoryAllocationLib/StandaloneMmMemo= ryAllocationLib.inf=0D + StandaloneMmPkg/Library/VariableMmDependency/VariableMmDependency.inf=0D +=0D +[Components.AARCH64, Components.ARM]=0D + StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf=0D + StandaloneMmPkg/Library/StandaloneMmPeCoffExtraActionLib/StandaloneMmPeC= offExtraActionLib.inf=0D +=0D +!if $(ENABLE_UEFI_SECURE_VARIABLE) =3D=3D TRUE=0D + Platform/ARM/Drivers/NorFlashDxe/NorFlashStandaloneMm.inf=0D + MdeModulePkg/Universal/Variable/RuntimeDxe/VariableStandaloneMm.inf {=0D + =0D + DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf= =0D + NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf=0D + NULL|MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLibStandal= oneMm.inf=0D + BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf=0D + VariablePolicyLib|MdeModulePkg/Library/VariablePolicyLib/VariablePol= icyLib.inf=0D + VariablePolicyHelperLib|MdeModulePkg/Library/VariablePolicyHelperLib= /VariablePolicyHelperLib.inf=0D + }=0D + MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteStandalon= eMm.inf=0D +!endif=0D +=0D +##########################################################################= #########################=0D +#=0D +# BuildOptions Section - Define the module specific tool chain flags that = should be used as=0D +# the default flags for a module. These flags are a= ppended to any=0D +# standard flags that are defined by the build proc= ess. They can be=0D +# applied for any modules or only those modules wit= h the specific=0D +# module style (EDK or EDKII) specified in [Compone= nts] section.=0D +#=0D +##########################################################################= #########################=0D +[BuildOptions.AARCH64]=0D + GCC:*_*_*_DLINK_FLAGS =3D -z common-page-size=3D0x1000 -march=3Darmv8-a+= nofp -mstrict-align=0D + GCC:*_*_AARCH64_PLATFORM_FLAGS =3D=3D -I$(WORKSPACE)/Platform/ARM/VExpre= ssPkg/Include/Platform/RTSM=0D + GCC:*_*_*_CC_FLAGS =3D -mstrict-align=0D +=0D +[BuildOptions.ARM]=0D + GCC:*_*_*_DLINK_FLAGS =3D -z common-page-size=3D0x1000 -march=3Darmv7-a= =0D + GCC:*_*_*_CC_FLAGS =3D -fno-stack-protector=0D diff --git a/Platform/ARM/VExpressPkg/PlatformStandaloneMm.fdf b/Platform/A= RM/VExpressPkg/PlatformStandaloneMm.fdf new file mode 100644 index 0000000000000000000000000000000000000000..f4715433d107d38fd57205d5466= 07e923d0aff9b --- /dev/null +++ b/Platform/ARM/VExpressPkg/PlatformStandaloneMm.fdf @@ -0,0 +1,106 @@ +#=0D +# Copyright (c) 2024, Arm Limited. All rights reserved.=0D +#=0D +# SPDX-License-Identifier: BSD-2-Clause-Patent=0D +#=0D +=0D +##########################################################################= ######=0D +#=0D +# FD Section=0D +# The [FD] Section is made up of the definition statements and a=0D +# description of what goes into the Flash Device Image. Each FD section= =0D +# defines one flash "device" image. A flash device image may be one of=0D +# the following: Removable media bootable image (like a boot floppy=0D +# image,) an Option ROM image (that would be "flashed" into an add-in=0D +# card,) a System "Flash" image (that would be burned into a system's=0D +# flash) or an Update ("Capsule") image that will be used to update and=0D +# existing system flash.=0D +#=0D +##########################################################################= ######=0D +=0D +[FD.BL32_AP_MM]=0D +# See macro definition BL32_BASE in TF-A code at include/plat/arm/common/a= rm_def.h=0D +BaseAddress =3D 0xff200000|gArmTokenSpaceGuid.PcdFdBaseAddress=0D +=0D +# Maximum size of BL32 Image in TF-A (see include/plat/arm/common/arm_spm.= def.h)=0D +Size =3D 0x00300000|gArmTokenSpaceGuid.PcdFdSize=0D +=0D +ErasePolarity =3D 0=0D +BlockSize =3D 0x00001000=0D +NumBlocks =3D 0x300=0D +=0D +#=0D +# Limit the size of the binary to 1MB.=0D +# If required this can be increased up to PcdFdSize.=0D +#=0D +0x00000000|0x00100000=0D +gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize=0D +FV =3D FVMAIN_COMPACT=0D +=0D +[FV.FVMAIN_COMPACT]=0D +FvAlignment =3D 16=0D +ERASE_POLARITY =3D 1=0D +MEMORY_MAPPED =3D TRUE=0D +STICKY_WRITE =3D TRUE=0D +LOCK_CAP =3D TRUE=0D +LOCK_STATUS =3D TRUE=0D +WRITE_DISABLED_CAP =3D TRUE=0D +WRITE_ENABLED_CAP =3D TRUE=0D +WRITE_STATUS =3D TRUE=0D +WRITE_LOCK_CAP =3D TRUE=0D +WRITE_LOCK_STATUS =3D TRUE=0D +READ_DISABLED_CAP =3D TRUE=0D +READ_ENABLED_CAP =3D TRUE=0D +READ_STATUS =3D TRUE=0D +READ_LOCK_CAP =3D TRUE=0D +READ_LOCK_STATUS =3D TRUE=0D +=0D + INF StandaloneMmPkg/Core/StandaloneMmCore.inf=0D + INF StandaloneMmPkg/Drivers/StandaloneMmCpu/StandaloneMmCpu.inf=0D +=0D +!if $(ENABLE_UEFI_SECURE_VARIABLE) =3D=3D TRUE=0D + INF Platform/ARM/Drivers/NorFlashDxe/NorFlashStandaloneMm.inf=0D + INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteStand= aloneMm.inf=0D + INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableStandaloneMm.inf= =0D +!endif=0D +=0D +##########################################################################= ######=0D +#=0D +# Rules are use with the [FV] section's module INF type to define=0D +# how an FFS file is created for a given INF file. The following Rule are = the default=0D +# rules for the different module type. User can add the customized rules t= o define the=0D +# content of the FFS file.=0D +#=0D +##########################################################################= ######=0D +=0D +=0D +##########################################################################= ##=0D +# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section = #=0D +##########################################################################= ##=0D +#=0D +#[Rule.Common.DXE_DRIVER]=0D +# FILE DRIVER =3D $(NAMED_GUID) {=0D +# DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_= NAME).depex=0D +# COMPRESS PI_STD {=0D +# GUIDED {=0D +# PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi= =0D +# UI STRING=3D"$(MODULE_NAME)" Optional=0D +# VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_N= UMBER)=0D +# }=0D +# }=0D +# }=0D +#=0D +##########################################################################= ##=0D +=0D +[Rule.Common.MM_CORE_STANDALONE]=0D + FILE SEC =3D $(NAMED_GUID) RELOCS_STRIPPED FIXED {=0D + PE32 PE32 Align =3D Auto $(INF_OUTPUT)/$(MODULE_NAME).efi= =0D + }=0D +=0D +[Rule.Common.MM_STANDALONE]=0D + FILE MM_STANDALONE =3D $(NAMED_GUID) {=0D + SMM_DEPEX SMM_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex= =0D + PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi=0D + UI STRING=3D"$(MODULE_NAME)" Optional=0D + VERSION STRING=3D"$(INF_VERSION)" Optional BUILD_NUM=3D$(BUILD_NUMBE= R)=0D + }=0D -- Guid("CE165669-3EF3-493F-B85D-6190EE5B9759") -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116811): https://edk2.groups.io/g/devel/message/116811 Mute This Topic: https://groups.io/mt/104945007/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-