summaryrefslogtreecommitdiffstats
path: root/MdeModulePkg/Universal/FaultTolerantWriteDxe
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@arm.com>2020-04-18 18:45:29 +0200
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2020-05-12 19:23:44 +0000
commitfa37a846d0807ff349faa815c3ccc28d89246cb2 (patch)
treee24156fea47e4ef553505d992351faa9eb81054e /MdeModulePkg/Universal/FaultTolerantWriteDxe
parent789ea79e948be397698ff101f60a8f0091a974f8 (diff)
downloadedk2-fa37a846d0807ff349faa815c3ccc28d89246cb2.tar.gz
edk2-fa37a846d0807ff349faa815c3ccc28d89246cb2.tar.bz2
edk2-fa37a846d0807ff349faa815c3ccc28d89246cb2.zip
MdeModulePkg/FaultTolerantWriteSmmDxe: switch to MM communicate 2
Switch to the new MM communicate 2 protocol which supports both traditional and standalone MM. Signed-off-by: Ard Biesheuvel <ard.biesheuvel@arm.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Sami Mujawar <sami.mujawar@arm.com>
Diffstat (limited to 'MdeModulePkg/Universal/FaultTolerantWriteDxe')
-rw-r--r--MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmCommon.h2
-rw-r--r--MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.c25
-rw-r--r--MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.h2
-rw-r--r--MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.inf4
4 files changed, 18 insertions, 15 deletions
diff --git a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmCommon.h b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmCommon.h
index 4546a1b445..5f0eec0506 100644
--- a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmCommon.h
+++ b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmCommon.h
@@ -29,7 +29,7 @@ typedef struct {
///
/// Size of SMM communicate header, without including the payload.
///
-#define SMM_COMMUNICATE_HEADER_SIZE (OFFSET_OF (EFI_SMM_COMMUNICATE_HEADER, Data))
+#define SMM_COMMUNICATE_HEADER_SIZE (OFFSET_OF (EFI_MM_COMMUNICATE_HEADER, Data))
///
/// Size of SMM FTW communicate function header, without including the payload.
diff --git a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.c b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.c
index 6e3eb3b58b..24c2095029 100644
--- a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.c
+++ b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.c
@@ -11,7 +11,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
#include "FaultTolerantWriteSmmDxe.h"
EFI_HANDLE mHandle = NULL;
-EFI_SMM_COMMUNICATION_PROTOCOL *mSmmCommunication = NULL;
+EFI_MM_COMMUNICATION2_PROTOCOL *mMmCommunication2 = NULL;
UINTN mPrivateDataSize = 0;
EFI_FAULT_TOLERANT_WRITE_PROTOCOL mFaultTolerantWriteDriver = {
@@ -40,7 +40,7 @@ InitCommunicateBuffer (
IN UINTN Function
)
{
- EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader;
+ EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader;
SMM_FTW_COMMUNICATE_FUNCTION_HEADER *SmmFtwFunctionHeader;
//
@@ -74,7 +74,7 @@ InitCommunicateBuffer (
**/
EFI_STATUS
SendCommunicateBuffer (
- IN OUT EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader,
+ IN OUT EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader,
IN UINTN DataSize
)
{
@@ -83,7 +83,10 @@ SendCommunicateBuffer (
SMM_FTW_COMMUNICATE_FUNCTION_HEADER *SmmFtwFunctionHeader;
CommSize = DataSize + SMM_COMMUNICATE_HEADER_SIZE + SMM_FTW_COMMUNICATE_HEADER_SIZE;
- Status = mSmmCommunication->Communicate (mSmmCommunication, SmmCommunicateHeader, &CommSize);
+ Status = mMmCommunication2->Communicate (mMmCommunication2,
+ SmmCommunicateHeader,
+ SmmCommunicateHeader,
+ &CommSize);
ASSERT_EFI_ERROR (Status);
SmmFtwFunctionHeader = (SMM_FTW_COMMUNICATE_FUNCTION_HEADER *) SmmCommunicateHeader->Data;
@@ -148,7 +151,7 @@ FtwGetMaxBlockSize (
{
EFI_STATUS Status;
UINTN PayloadSize;
- EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader;
+ EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader;
SMM_FTW_GET_MAX_BLOCK_SIZE_HEADER *SmmFtwBlockSizeHeader;
//
@@ -204,7 +207,7 @@ FtwAllocate (
{
EFI_STATUS Status;
UINTN PayloadSize;
- EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader;
+ EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader;
SMM_FTW_ALLOCATE_HEADER *SmmFtwAllocateHeader;
//
@@ -270,7 +273,7 @@ FtwWrite (
{
EFI_STATUS Status;
UINTN PayloadSize;
- EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader;
+ EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader;
SMM_FTW_WRITE_HEADER *SmmFtwWriteHeader;
//
@@ -336,7 +339,7 @@ FtwRestart (
{
EFI_STATUS Status;
UINTN PayloadSize;
- EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader;
+ EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader;
SMM_FTW_RESTART_HEADER *SmmFtwRestartHeader;
//
@@ -381,7 +384,7 @@ FtwAbort (
)
{
EFI_STATUS Status;
- EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader;
+ EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader;
//
// Initialize the communicate buffer.
@@ -438,7 +441,7 @@ FtwGetLastWrite (
{
EFI_STATUS Status;
UINTN PayloadSize;
- EFI_SMM_COMMUNICATE_HEADER *SmmCommunicateHeader;
+ EFI_MM_COMMUNICATE_HEADER *SmmCommunicateHeader;
SMM_FTW_GET_LAST_WRITE_HEADER *SmmFtwGetLastWriteHeader;
//
@@ -501,7 +504,7 @@ SmmFtwReady (
return;
}
- Status = gBS->LocateProtocol (&gEfiSmmCommunicationProtocolGuid, NULL, (VOID **) &mSmmCommunication);
+ Status = gBS->LocateProtocol (&gEfiMmCommunication2ProtocolGuid, NULL, (VOID **) &mMmCommunication2);
ASSERT_EFI_ERROR (Status);
//
diff --git a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.h b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.h
index 22df9103d2..a15644abd7 100644
--- a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.h
+++ b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.h
@@ -13,7 +13,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
#include <PiDxe.h>
-#include <Protocol/SmmCommunication.h>
+#include <Protocol/MmCommunication2.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/UefiDriverEntryPoint.h>
diff --git a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.inf b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.inf
index f5dc4bb4fe..f0dd829653 100644
--- a/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.inf
+++ b/MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmmDxe.inf
@@ -45,7 +45,7 @@
[Protocols]
gEfiFaultTolerantWriteProtocolGuid ## PRODUCES
- gEfiSmmCommunicationProtocolGuid ## CONSUMES
+ gEfiMmCommunication2ProtocolGuid ## CONSUMES
## NOTIFY
## UNDEFINED # Used to do smm communication
## CONSUMES
@@ -53,7 +53,7 @@
gEfiFirmwareVolumeBlockProtocolGuid ## CONSUMES
[Depex]
- gEfiSmmCommunicationProtocolGuid
+ gEfiMmCommunication2ProtocolGuid
[UserExtensions.TianoCore."ExtraFiles"]
FaultTolerantWriteSmmDxeExtra.uni