On 06/18/20 09:01, Dandan Bi wrote:
> Hi All,
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2816
> 
> We plan to separate two kinds of NULL class libraries for Memory and serial 
> handlers from MdeModulePkg/Universal/StatusCodeHandler/.../ 
> StatusCodeHandlerPei/RuntimeDxe/Smm modules.
> The benefit we want to gain from this separation is to 1) make the code clear 
> and easy to maintain, 2) make platform flexible to choose any handler library 
> they need, and it also can reduce image size since the unused handlers can be 
> excluded.
> If you have any concern or comments for this separation, please let me know.
> 
> We plan to add new separated NULL class library MemoryStausCodeHandlerLib and 
> SerialStatusCodeHandlerLib with different phase implementation into 
> MdeModulePkg\Library\ directory.
> The main tree structure may like below:
> MdeModulePkg\Library
> |------MemoryStausCodeHandlerLib
> |------|------ PeiMemoryStausCodeHandlerLib.inf
> |------|------ RuntimeDxeMemoryStatusCodeHandlerLib.inf
> |------|------ SmmMemoryStausCodeHandlerLib.inf
> |------SerialStatusCodeHandlerLib
> |------|------ PeiSerialStatusCodeHandlerLib.inf
> |------|------ RuntimeDxeSerialStatusCodeHandlerLib.inf
> |------|------ SmmSerialStatusCodeHandlerLib.inf
> 
> 
> We will update existing platform use cases in edk2 and edk2-platform repo to 
> cover the new NULL class library to make sure this change doesn't impact any 
> platform.
> After this separation, StatusCodeHandler module usage will like below, and 
> it's also very flexible for platform to cover more handler libraries to meet 
> their requirements.
> MdeModulePkg/Universal/StatusCodeHandler/Pei/StatusCodeHandlerPei.inf {
>   <LibraryClasses>
> NULL|MdeModulePkg/Library/MemoryStausCodeHandlerLib/PeiMemoryStausCodeHandlerLib.inf
> NULL|MdeModulePkg/Library/SerialStatusCodeHandlerLib/PeiSerialStatusCodeHandlerLib.inf
>     ...
> }
> 
> MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf
>   {
>   <LibraryClasses>
> NULL|MdeModulePkg/Library/MemoryStausCodeHandlerLib/RuntimeDxeMemoryStausCodeHandlerLib.inf
> NULL|MdeModulePkg/Library/SerialStatusCodeHandlerLib/RuntimeDxeSerialStatusCodeHandlerLib.inf
>     ...
> }
> 
> MdeModulePkg/Universal/StatusCodeHandler/Smm/StatusCodeHandlerSmm.inf {
>   <LibraryClasses>
>     
> NULL|MdeModulePkg/Library/MemoryStausCodeHandlerLib/SmmMemoryStausCodeHandlerLib.inf
> NULL|MdeModulePkg/Library/SerialStatusCodeHandlerLib/SmmSerialStatusCodeHandlerLib.inf
>     ...
> }

So I assume you're going to remove PcdStatusCodeUseSerial and
PcdStatusCodeUseMemory, and when converting the existent platforms, the
new NULL class resolutions in the DSC files will reflect the specific
PCD values used in those DSC files until then. Is that right?

I'm OK with it.

Thanks
Laszlo


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#61516): https://edk2.groups.io/g/devel/message/61516
Mute This Topic: https://groups.io/mt/74953841/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to