[edk2-devel] [PATCH resend 0/7] Add support for MM communicate2 protocol (PI 1.7a)
Ard Biesheuvel
ard.biesheuvel at arm.com
Mon May 11 14:09:34 UTC 2020
On 5/11/20 4:08 PM, Gao, Liming wrote:
> Ard:
> I see this change updates VariableSmmRuntimeDxe to consume mMmCommunication2 with mVariableBufferPhysical and mVariableBuffer for physical and virtual.
> But, FaultTolerantWriteSmmDxe consumes mMmCommunication2 with the same SmmCommunicateHeader for physical and virtual.
>
> Is there any difference between them?
>
Yes. The FTW code never executes at runtime, so it is guaranteed that
physical == virtual.
>> -----Original Message-----
>> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of Ard Biesheuvel
>> Sent: Thursday, May 7, 2020 1:27 AM
>> To: devel at edk2.groups.io
>> Cc: Ard Biesheuvel <ard.biesheuvel at arm.com>; Kinney, Michael D <michael.d.kinney at intel.com>; Gao, Liming
>> <liming.gao at intel.com>; Wang, Jian J <jian.j.wang at intel.com>; Wu, Hao A <hao.a.wu at intel.com>; Leif Lindholm
>> <leif at nuviainc.com>; Sami Mujawar <sami.mujawar at arm.com>; Yao, Jiewen <jiewen.yao at intel.com>
>> Subject: [edk2-devel] [PATCH resend 0/7] Add support for MM communicate2 protocol (PI 1.7a)
>>
>> Now that version 1.7 errata A of the PI spec has finally been released,
>> we can take another look at this series, which incorporates the new MM
>> communicate2 protocol definition, updates the producers for conventional
>> SMM and standalone MM, and updates the variable store components to consume
>> the new version of the protocol. This solves a long standing compatibility
>> issue which made standalone MM fundamentally incompatible with a virtually
>> remapped address space as installed by SetVirtualAddressMap().
>>
>> Cc: Michael D Kinney <michael.d.kinney at intel.com>
>> Cc: Liming Gao <liming.gao at intel.com>
>> Cc: Jian J Wang <jian.j.wang at intel.com>
>> Cc: Hao A Wu <hao.a.wu at intel.com>
>> Cc: Leif Lindholm <leif at nuviainc.com>
>> Cc: Sami Mujawar <sami.mujawar at arm.com>
>> Cc: Jiewen Yao <jiewen.yao at intel.com>
>>
>> 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
>> MdeModulePkg/VariableSmmRuntimeDxe: switch to MM communicate 2
>> StandaloneMmPkg: switch to MM communicate 2 protocol
>>
>> .../MmCommunicationDxe/MmCommunication.c | 81 +++++++++----------
>> .../MmCommunicationDxe/MmCommunication.inf | 6 +-
>> .../Application/VariableInfo/VariableInfo.c | 19 +++--
>> .../Application/VariableInfo/VariableInfo.inf | 2 +-
>> MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c | 80 ++++++++++++++++++
>> 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, 256 insertions(+), 95 deletions(-)
>> create mode 100644 MdePkg/Include/Protocol/MmCommunication2.h
>>
>> --
>> 2.17.1
>>
>>
>>
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#59072): https://edk2.groups.io/g/devel/message/59072
Mute This Topic: https://groups.io/mt/74033563/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list