From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.5246.1575646183713290638 for ; Fri, 06 Dec 2019 07:29:43 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ard.biesheuvel@arm.com) 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 3CCC331B; Fri, 6 Dec 2019 07:29:43 -0800 (PST) Received: from e123331-lin.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id E0F163F718; Fri, 6 Dec 2019 07:29:41 -0800 (PST) From: Ard Biesheuvel To: devel@edk2.groups.io Cc: Ard Biesheuvel , Michael D Kinney , Leif Lindholm , Liming Gao , Hao A Wu , Eric Dong , Ray Ni , Achin Gupta , Jiewen Yao Subject: [PATCH 0/7] New implementation of MM communicate for standalone MM Date: Fri, 6 Dec 2019 15:29:39 +0000 Message-Id: <20191206152946.624-1-ard.biesheuvel@arm.com> X-Mailer: git-send-email 2.17.1 From: Ard Biesheuvel This series implements the changes proposed by Mantis ticket 1993, which describes how we need to modify the MM communicate protocol to make it compatible with standalone MM based DXE_RUNTIME_DRIVER MM client using virtually remapped memory. These changes have been accepted as errata for PI spec v1.7 Cc: Michael D Kinney Cc: Leif Lindholm Cc: Liming Gao Cc: Hao A Wu Cc: Eric Dong Cc: Ray Ni Cc: Achin Gupta Cc: Jiewen Yao Ard Biesheuvel (7): MdePkg: introduce MM communicate 2 protocol MdeModulePkg/SmmIpl: expose MM communicate 2 protocol ArmPkg/MmCommunicationDxe: expose MM Communicate 2 protocol MdeModulePkg/VariableInfo: switch to MM communicate 2 protocol MdeModulePkg/FaultTolerantWriteSmmDxe: switch to MM communicate 2 protocol MdeModulePkg/VariableSmmRuntimeDxe: switch to MM communicate 2 protocol StandaloneMmPkg: switch to MM communicate 2 protocol .../MmCommunicationDxe/MmCommunication.c | 79 +++++++++---------- .../MmCommunicationDxe/MmCommunication.inf | 6 +- .../Application/VariableInfo/VariableInfo.c | 19 +++-- .../Application/VariableInfo/VariableInfo.inf | 2 +- MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c | 79 +++++++++++++++++++ MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf | 1 + MdeModulePkg/Include/Guid/SmmVariableCommon.h | 6 +- .../FaultTolerantWriteSmmCommon.h | 2 +- .../FaultTolerantWriteSmmDxe.c | 25 +++--- .../FaultTolerantWriteSmmDxe.h | 2 +- .../FaultTolerantWriteSmmDxe.inf | 4 +- .../RuntimeDxe/VariableSmmRuntimeDxe.c | 39 ++++----- .../RuntimeDxe/VariableSmmRuntimeDxe.inf | 4 +- MdePkg/Include/Protocol/MmCommunication2.h | 69 ++++++++++++++++ MdePkg/MdePkg.dec | 7 ++ StandaloneMmPkg/Core/StandaloneMmCore.h | 2 +- .../StandaloneMmCpu/AArch64/StandaloneMmCpu.h | 2 +- 17 files changed, 254 insertions(+), 94 deletions(-) create mode 100644 MdePkg/Include/Protocol/MmCommunication2.h -- 2.17.1