From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=217.140.101.70; helo=foss.arm.com; envelope-from=supreeth.venkatesh@arm.com; receiver=edk2-devel@lists.01.org Received: from foss.arm.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by ml01.01.org (Postfix) with ESMTP id A0A90202E53DC for ; Mon, 4 Jun 2018 15:14:01 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C209D1596; Mon, 4 Jun 2018 15:14:00 -0700 (PDT) Received: from u201365.usa.Arm.com (bc-c3-3-14.eu.iaas.arm.com [10.6.43.238]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 8EB423F5A0; Mon, 4 Jun 2018 15:13:59 -0700 (PDT) From: Supreeth Venkatesh To: edk2-devel@lists.01.org Cc: liming.gao@intel.com, jiewen.yao@intel.com, achin.gupta@arm.com, Supreeth Venkatesh Date: Mon, 4 Jun 2018 23:13:48 +0100 Message-Id: <20180604221351.34760-1-supreeth.venkatesh@arm.com> X-Mailer: git-send-email 2.17.0 Subject: [PATCH v3 00/17] *** Standalone Management Mode Core Interface for AARCH64 Platforms *** X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jun 2018 22:14:01 -0000 *** This patchset v3 contains only the patches that got feedback/comments frome the previous revision v2. The patches are [PATCH v3 06/17] StandaloneMmPkg: Delete StandaloneMmPkg file. [PATCH v3 13/17] StandaloneMmPkg: Add an AArch64 specific entry point library. [PATCH v3 17/17] BaseTools/AutoGen: Update header file for MM modules. Changes Since v2: (*) Address feedback provided for the commit "BaseTools/AutoGen: Update header file for MM modules." (*) Edit parameters for the StandaloneMmCpu Driver in the commit "StandaloneMmPkg: Add an AArch64 specific entry point library." Changes Since v1: (*) Reorder and Reword commits. (*) Reorganize structure of StandaloneMmPkg and rename libraries. (*) Address Review Comments from Achin, Jiewen and Daniil. *** Supreeth Venkatesh (17): ArmPkg: Add PCDs needed for MM communication driver. ArmPkg/Drivers: Add EFI_MM_COMMUNICATION_PROTOCOL DXE driver. ArmPkg/Include: Add MM interface SVC return codes. ArmPkg/ArmMmuLib: Add MMU Library suitable for use in S-EL0. ArmPkg/ArmMmuLib: Add MMU library inf file suitable for use in S-EL0. StandaloneMmPkg: Delete StandaloneMmPkg file. StandaloneMmPkg/FvLib: Add a common FV Library for management mode. StandaloneMmPkg/MemLib: Add Standalone MM instance of memory check library. StandaloneMmPkg/MemoryAllocationLib: Add MM memory allocation library. StandaloneMmPkg/HobLib: Add HOB Library for management mode. StandaloneMmPkg: MM driver entry point library. StandaloneMmPkg/Core: Implementation of Standalone MM Core Module. StandaloneMmPkg: Add an AArch64 specific entry point library. StandaloneMmPkg: Add CPU driver suitable for ARM Platforms. StandaloneMmPkg: Describe the declaration and definition files. ArmPkg: Extra action to update permissions for S-ELO MM Image. BaseTools/AutoGen: Update header file for MM modules. ArmPkg/ArmPkg.dec | 3 + .../MmCommunicationDxe/MmCommunication.c | 408 +++++++ .../MmCommunicationDxe/MmCommunication.inf | 50 + ArmPkg/Include/IndustryStandard/ArmMmSvc.h | 9 +- .../AArch64/ArmMmuStandaloneMmCoreLib.c | 195 +++ .../ArmMmuLib/ArmMmuStandaloneMmCoreLib.inf | 37 + .../DebugPeCoffExtraActionLib.c | 185 ++- .../DebugPeCoffExtraActionLib.inf | 7 + BaseTools/Source/Python/AutoGen/GenC.py | 16 +- StandaloneMmPkg | 0 StandaloneMmPkg/Core/Dependency.c | 389 ++++++ StandaloneMmPkg/Core/Dispatcher.c | 1071 +++++++++++++++++ StandaloneMmPkg/Core/FwVol.c | 104 ++ StandaloneMmPkg/Core/Handle.c | 533 ++++++++ .../Core/InstallConfigurationTable.c | 178 +++ StandaloneMmPkg/Core/Locate.c | 496 ++++++++ StandaloneMmPkg/Core/Mmi.c | 337 ++++++ StandaloneMmPkg/Core/Notify.c | 203 ++++ StandaloneMmPkg/Core/Page.c | 384 ++++++ StandaloneMmPkg/Core/Pool.c | 287 +++++ StandaloneMmPkg/Core/StandaloneMmCore.c | 708 +++++++++++ StandaloneMmPkg/Core/StandaloneMmCore.h | 903 ++++++++++++++ StandaloneMmPkg/Core/StandaloneMmCore.inf | 80 ++ .../Core/StandaloneMmCorePrivateData.h | 66 + .../StandaloneMmCpu/AArch64/EventHandle.c | 208 ++++ .../StandaloneMmCpu/AArch64/StandaloneMmCpu.c | 219 ++++ .../StandaloneMmCpu/AArch64/StandaloneMmCpu.h | 64 + .../AArch64/StandaloneMmCpu.inf | 59 + StandaloneMmPkg/Include/Guid/MmCoreData.h | 133 ++ StandaloneMmPkg/Include/Guid/MmFvDispatch.h | 38 + .../Include/Guid/MmramMemoryReserve.h | 62 + StandaloneMmPkg/Include/Guid/MpInformation.h | 41 + .../AArch64/StandaloneMmCoreEntryPoint.h | 214 ++++ StandaloneMmPkg/Include/Library/FvLib.h | 109 ++ .../Library/StandaloneMmCoreEntryPoint.h | 101 ++ .../Library/StandaloneMmDriverEntryPoint.h | 148 +++ .../Include/Library/StandaloneMmMemLib.h | 140 +++ StandaloneMmPkg/Include/StandaloneMm.h | 36 + StandaloneMmPkg/Library/FvLib/FvLib.c | 386 ++++++ StandaloneMmPkg/Library/FvLib/FvLib.inf | 57 + .../AArch64/CreateHobList.c | 200 +++ .../AArch64/SetPermissions.c | 275 +++++ .../AArch64/StandaloneMmCoreEntryPoint.c | 287 +++++ .../StandaloneMmCoreEntryPoint.inf | 55 + .../AArch64/StandaloneMmCoreHobLibInternal.c | 64 + .../StandaloneMmCoreHobLib.c | 608 ++++++++++ .../StandaloneMmCoreHobLib.inf | 47 + .../StandaloneMmCoreMemoryAllocationLib.c | 907 ++++++++++++++ .../StandaloneMmCoreMemoryAllocationLib.inf | 49 + ...StandaloneMmCoreMemoryAllocationServices.h | 38 + .../StandaloneMmDriverEntryPoint.c | 99 ++ .../StandaloneMmDriverEntryPoint.inf | 41 + .../AArch64/StandaloneMmMemLibInternal.c | 49 + .../StandaloneMmMemLib/StandaloneMmMemLib.c | 265 ++++ .../StandaloneMmMemLib/StandaloneMmMemLib.inf | 50 + StandaloneMmPkg/StandaloneMmPkg.dec | 47 + StandaloneMmPkg/StandaloneMmPkg.dsc | 130 ++ 57 files changed, 11855 insertions(+), 20 deletions(-) create mode 100644 ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c create mode 100644 ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.inf create mode 100644 ArmPkg/Library/ArmMmuLib/AArch64/ArmMmuStandaloneMmCoreLib.c create mode 100644 ArmPkg/Library/ArmMmuLib/ArmMmuStandaloneMmCoreLib.inf delete mode 100644 StandaloneMmPkg create mode 100644 StandaloneMmPkg/Core/Dependency.c create mode 100644 StandaloneMmPkg/Core/Dispatcher.c create mode 100644 StandaloneMmPkg/Core/FwVol.c create mode 100644 StandaloneMmPkg/Core/Handle.c create mode 100644 StandaloneMmPkg/Core/InstallConfigurationTable.c create mode 100644 StandaloneMmPkg/Core/Locate.c create mode 100644 StandaloneMmPkg/Core/Mmi.c create mode 100644 StandaloneMmPkg/Core/Notify.c create mode 100644 StandaloneMmPkg/Core/Page.c create mode 100644 StandaloneMmPkg/Core/Pool.c create mode 100644 StandaloneMmPkg/Core/StandaloneMmCore.c create mode 100644 StandaloneMmPkg/Core/StandaloneMmCore.h create mode 100644 StandaloneMmPkg/Core/StandaloneMmCore.inf create mode 100644 StandaloneMmPkg/Core/StandaloneMmCorePrivateData.h create mode 100644 StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/EventHandle.c create mode 100644 StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.c create mode 100644 StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.h create mode 100644 StandaloneMmPkg/Drivers/StandaloneMmCpu/AArch64/StandaloneMmCpu.inf create mode 100644 StandaloneMmPkg/Include/Guid/MmCoreData.h create mode 100644 StandaloneMmPkg/Include/Guid/MmFvDispatch.h create mode 100644 StandaloneMmPkg/Include/Guid/MmramMemoryReserve.h create mode 100644 StandaloneMmPkg/Include/Guid/MpInformation.h create mode 100644 StandaloneMmPkg/Include/Library/AArch64/StandaloneMmCoreEntryPoint.h create mode 100644 StandaloneMmPkg/Include/Library/FvLib.h create mode 100644 StandaloneMmPkg/Include/Library/StandaloneMmCoreEntryPoint.h create mode 100644 StandaloneMmPkg/Include/Library/StandaloneMmDriverEntryPoint.h create mode 100644 StandaloneMmPkg/Include/Library/StandaloneMmMemLib.h create mode 100644 StandaloneMmPkg/Include/StandaloneMm.h create mode 100644 StandaloneMmPkg/Library/FvLib/FvLib.c create mode 100644 StandaloneMmPkg/Library/FvLib/FvLib.inf create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/CreateHobList.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/SetPermissions.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/AArch64/StandaloneMmCoreEntryPoint.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreEntryPoint/StandaloneMmCoreEntryPoint.inf create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreHobLib/AArch64/StandaloneMmCoreHobLibInternal.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreHobLib/StandaloneMmCoreHobLib.inf create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreMemoryAllocationLib/StandaloneMmCoreMemoryAllocationLib.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreMemoryAllocationLib/StandaloneMmCoreMemoryAllocationLib.inf create mode 100644 StandaloneMmPkg/Library/StandaloneMmCoreMemoryAllocationLib/StandaloneMmCoreMemoryAllocationServices.h create mode 100644 StandaloneMmPkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmDriverEntryPoint/StandaloneMmDriverEntryPoint.inf create mode 100644 StandaloneMmPkg/Library/StandaloneMmMemLib/AArch64/StandaloneMmMemLibInternal.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.c create mode 100644 StandaloneMmPkg/Library/StandaloneMmMemLib/StandaloneMmMemLib.inf create mode 100644 StandaloneMmPkg/StandaloneMmPkg.dec create mode 100644 StandaloneMmPkg/StandaloneMmPkg.dsc -- 2.17.0