EDK2_00_15 - StandaloneMmPkg RPMI MM support

About

This project aims to implement and upstream the MM service group based on MPXY SBI extension and RPMI protocol in EDK2.  This project helps the PoC project EDK2_00_02 - StandaloneMmPkg (PoC) and let it use the spec defined SBI interface.

Project Scope and Timelines

The MM service group implementation includes.

  • Leverage the SBI MPXY extension and RPMI protocol, which carries the RPMI message in EDK2
  • Put MM inter-doman messaging payload in shared memory in EDK2
  • Add an MM Service in RPMI with APIs:
    • MM_VERSION
    • MM_COMMUNICATE
    • MM_COMPLETE

Components and Repos.

Baseline code (RPMI PoC)

 OpenSBI  : https://github.com/ventanamicro/opensbi/tree/dev-upstream
 edk2     : https://github.com/ventanamicro/edk2/tree/dev-upstream

The latest code for this porject
edk2 : https://github.com/yli147/edk2/tree/dev-standalonemm-mpxy-v3

Stakeholders and Partners

Dependencies

Here are the links to the draft specifications for RPMI and MPXY which were shared in the past on the riscv org mailing list for review.
RPMI: https://github.com/riscv-non-isa/riscv-rpmi
MPXY: https://lists.riscv.org/g/tech-prs/message/948

Measure of Success

Code upstream to EDK2

RISE Requirements

None,

Status

Dependency
MPXY/RPMI Specification

Development

ONGOING

URL: NA
Development Timeline1H 2024
Upstreaming

TBD

URL:
Upstream version

ContactsYong Li


Updates

 

Rebased code with the latest RPMI PoC

https://github.com/yli147/edk2/tree/dev-standalonemm-mpxy-v3



 

Pending on RPMI spec ratification, will do the code rebase once spec has been ratified