Branch: refs/heads/master Home: https://github.com/tianocore/edk2 Commit: 7d1b9d3c3cfab13a93b8383a2328bc5bfd8593fa https://github.com/tianocore/edk2/commit/7d1b9d3c3cfab13a93b8383a2328bc5bfd8593fa Author: Kun Qin <kuqi...@gmail.com> Date: 2025-04-07 (Mon, 07 Apr 2025)
Changed paths: M MdePkg/Include/Pi/PiMultiPhase.h M MdePkg/MdePkg.dec Log Message: ----------- MdePkg: MmCommunication: Introduce EFI_MM_COMMUNICATE_HEADER_V3 to MdePkg REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 This change introduces a new definition for MM communicate header structure, intending to provide better portability between different architectures (IA32 & X64) and adapt to flexible array supported by modern compilers. The original MessageLength field of EFI_MM_COMMUNICATE_HEADER, as a generic definition, was used for both PEI and DXE MM communication. On a system that supports PEI MM launch, but operates PEI in 32bit mode and MM foundation in 64bit, the current EFI_MM_COMMUNICATE_HEADER definition will cause structure parse error due to UINTN used. This introduction removes the architecture dependent field by defining this field as UINT64. The new signature could help identifying whether the data received is compiliant with this new data structure, which will help for binary release modules to identify usage of legacy data structure. BufferSize field is also added to indicate the full range of communicate region available to the SMI handler. The data field of MM communicate message is replaced with flexible array to allow users not having to consume extra data during communicate and author code more intrinsically. Cc: Michael D Kinney <michael.d.kin...@intel.com> Cc: Liming Gao <gaolim...@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang....@intel.com> Signed-off-by: Kun Qin <kuqi...@gmail.com> Commit: 11cc0d639e1518619d0af56b8e2abd58024a2294 https://github.com/tianocore/edk2/commit/11cc0d639e1518619d0af56b8e2abd58024a2294 Author: Kun Qin <kuqi...@gmail.com> Date: 2025-04-07 (Mon, 07 Apr 2025) Changed paths: A MdePkg/Include/Protocol/MmCommunication3.h M MdePkg/MdePkg.dec Log Message: ----------- MdePkg: MmCommunication: Introduce EFI_MM_COMMUNICATION3_PROTOCOL to MdePkg REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 This change introduces a new definition for MM communicate protocol v3. This protocol will be installed under a new GUID in contrast to exisiting EFI_MM_COMMUNICATION_PROTOCOL. Data communicated to MM through EFI_MM_COMMUNICATION3_PROTOCOL should always start with EFI_MM_COMMUNICATE_HEADER_V3 with its HeaderGuid, Signature and Version fields properly populated. Cc: Michael D Kinney <michael.d.kin...@intel.com> Cc: Liming Gao <gaolim...@byosoft.com.cn> Cc: Zhiguang Liu <zhiguang....@intel.com> Signed-off-by: Kun Qin <kuqi...@gmail.com> Commit: 3da340ccdde49f3ff695545bb9c4abcdac5897cf https://github.com/tianocore/edk2/commit/3da340ccdde49f3ff695545bb9c4abcdac5897cf Author: Kun Qin <ku...@microsoft.com> Date: 2025-04-07 (Mon, 07 Apr 2025) Changed paths: A MdePkg/Include/Ppi/MmCommunication3.h M MdePkg/MdePkg.dec Log Message: ----------- MdePkg: MmCommunication: Introduce EFI_PEI_MM_COMMUNICATION3_PPI to MdePkg REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 This change introduces a new definition for MM communicate PPI v3. This PPI will be installed under a new GUID in contrast to exisiting EFI_PEI_MM_COMMUNICATION_PPI. Data communicated to MM through EFI_PEI_MM_COMMUNICATION3_PPI should always start with EFI_MM_COMMUNICATE_HEADER_V3 with its HeaderGuid, Signature and Version fields properly populated. Signed-off-by: Kun Qin <kuqi...@gmail.com> Commit: 9dec81092bf99bbd28abd95c92023561fa04526f https://github.com/tianocore/edk2/commit/9dec81092bf99bbd28abd95c92023561fa04526f Author: Kun Qin <ku...@microsoft.com> Date: 2025-04-07 (Mon, 07 Apr 2025) Changed paths: M MdeModulePkg/Core/PiSmmCore/PiSmmCore.c M MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf Log Message: ----------- MdeModulePkg: PiSmmCore: Added parser of new MM communicate header REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 MM communicate protocols are expanded with EFI_MM_COMMUNICATE_HEADER_V3 structure that cooperates with updated field types and flexible array. The PiSmmCore implementation is updated to detect and process incoming data accordingly. Two checks are also performed to prevent legacy communicate data or unsupported data is fed into MM core under agreed header guid. Cc: Jian J Wang <jian.j.w...@intel.com> Cc: Hao A Wu <hao.a...@intel.com> Cc: Eric Dong <eric.d...@intel.com> Cc: Ray Ni <ray...@intel.com> Signed-off-by: Kun Qin <kuqi...@gmail.com> Commit: 249ca10af0f4930f63601eb4e4a1f2106e2db2d9 https://github.com/tianocore/edk2/commit/249ca10af0f4930f63601eb4e4a1f2106e2db2d9 Author: Kun Qin <ku...@microsoft.com> Date: 2025-04-07 (Mon, 07 Apr 2025) Changed paths: M StandaloneMmPkg/Core/StandaloneMmCore.c M StandaloneMmPkg/Core/StandaloneMmCore.inf Log Message: ----------- StandaloneMmPkg: StandaloneMmCore: Parsing new MM communicate header REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 MM communicate protocols are expanded with EFI_MM_COMMUNICATE_HEADER_V3 structure that cooperates with updated field types and flexible array. The PiSmmCore implementation is updated to detect and process incoming data accordingly. Two checks are also performed to prevent legacy communicate data or unsupported data is fed into MM core under agreed header guid. Signed-off-by: Kun Qin <kuqi...@gmail.com> Commit: 05f47b8486d09315d461cb7639694d774871d2c1 https://github.com/tianocore/edk2/commit/05f47b8486d09315d461cb7639694d774871d2c1 Author: Kun Qin <ku...@microsoft.com> Date: 2025-04-07 (Mon, 07 Apr 2025) Changed paths: M MdeModulePkg/Core/PiSmmCore/PiSmmIpl.c M MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf Log Message: ----------- MdeModulePkg: PiSmmIpl: Update MessageLength calculation for MmCommunicate REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 This change added support of installing `EFI_MM_COMMUNICATION3_PROTOCOL`. MmCommunicate v3 routine that calculates message length is also updated to remove ambiguity in contrast to v1 routine. Signed-off-by: Kun Qin <kuqi...@gmail.com> Commit: bed033dbf7ea0d91d290f443c12c4aec01cbe0cb https://github.com/tianocore/edk2/commit/bed033dbf7ea0d91d290f443c12c4aec01cbe0cb Author: Kun Qin <ku...@microsoft.com> Date: 2025-04-07 (Mon, 07 Apr 2025) Changed paths: M StandaloneMmPkg/Drivers/StandaloneMmIplPei/StandaloneMmIplPei.c M StandaloneMmPkg/Drivers/StandaloneMmIplPei/StandaloneMmIplPei.h M StandaloneMmPkg/Drivers/StandaloneMmIplPei/StandaloneMmIplPei.inf Log Message: ----------- StandaloneMmPkg: StandaloneMmIplPei: Add EFI_PEI_MM_COMMUNICATION3_PPI REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 This change added support of installing `EFI_PEI_MM_COMMUNICATION3_PPI`. MmCommunicate v3 routine will no longer need to supply buffer length in the input parameters but instead inference from the returned communicate buffer. Signed-off-by: Kun Qin <kuqi...@gmail.com> Commit: f3e02ae545a04fc93e8c6cd109ffca796b3b25df https://github.com/tianocore/edk2/commit/f3e02ae545a04fc93e8c6cd109ffca796b3b25df Author: Kun Qin <ku...@microsoft.com> Date: 2025-04-07 (Mon, 07 Apr 2025) Changed paths: M StandaloneMmPkg/Drivers/MmCommunicationDxe/MmCommunicationDxe.c M StandaloneMmPkg/Drivers/MmCommunicationDxe/MmCommunicationDxe.h M StandaloneMmPkg/Drivers/MmCommunicationDxe/MmCommunicationDxe.inf Log Message: ----------- StandaloneMmPkg: MmCommunicationDxe: Add EFI_MM_COMMUNICATION3_PROTOCOL REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3398 REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3430 This change added support of installing `EFI_MM_COMMUNICATION3_PROTOCOL`. MmCommunicate v3 routine will no longer need to supply buffer length in the input parameters but instead inference from the returned communicate buffer. Signed-off-by: Kun Qin <kuqi...@gmail.com> Compare: https://github.com/tianocore/edk2/compare/59805c7697c8...f3e02ae545a0 To unsubscribe from these emails, change your notification settings at https://github.com/tianocore/edk2/settings/notifications _______________________________________________ edk2-commits mailing list edk2-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-commits