Kun,
I like your proposed solution as it is backward compatible.

But, I think the new PPI/Protocol is only useful when the CPU mode where 
PPI/Protocol is produced does not match the CPU mode in MM.

In X86, it could be: 32bit PEI + 64bit MM, 32bit DXE + 64bit MM, or vice versa. 
But I doubt the value of support these combinations in X86. Because that means 
the IPL (either PEI or DXE module) needs to support invoking MM Core in a 
different CPU mode.
And the latest X86 platforms are switching to 64bit PEI + 64bit DXE + 64bit MM.

Does the proposal try to solve some ARM problem? Can you explain the necessity? 
I would like to avoid the complicated interfaces which do not solve a practical 
problem.

Thanks,
Ray

________________________________
From: devel@edk2.groups.io <devel@edk2.groups.io> on behalf of Kun Qin via 
groups.io <Kun.Qin=microsoft....@groups.io>
Sent: Thursday, August 8, 2024 2:14
To: devel@edk2.groups.io <devel@edk2.groups.io>
Subject: [edk2-devel] Proposing v3 of MM communicate buffer


Hi all,



I am trying to propose a change into PI spec and would like to gather some 
feedback in this forum.



Essentially, the current communicate header contains a UINTN field in place, 
which is causing programing

errors when trying to communicate the message between different operation mode 
(i.e. PEI in IA32

communicate into MM in x64). There are various implementations at large to 
compensate for this

size discrepancy through the edk2 codebase, thus fixing the existing 
communicate buffer definition

will be less feasible. Thus I think proposing a new structure and implement the 
corresponding header

parser will be a simpler approach, which also allows a bit more flexibility to 
inject new features/checks

into the communication channel.



The proposed change for the spec is detailed here:

https://github.com/kuqin12/edk2/blob/BZ3398-MmCommunicate-Length-v4/CodeFirst/BZ3430-SpecChange.md



And the code first change is listed here:

https://github.com/kuqin12/edk2/blob/BZ3398-MmCommunicate-Length-v4/



Could you please provide me with any feedback that you think might be helpful 
for future usage of MM

communicate? Any input is appreciated.



Regards,

Kun






-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#120291): https://edk2.groups.io/g/devel/message/120291
Mute This Topic: https://groups.io/mt/107775882/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to