[edk2-devel] [PATCH v1 08/15] MdeModulePkg: ReportStatusCodeRouter: Support StandaloneMm RSC Router
Wu, Hao A
hao.a.wu at intel.com
Tue Dec 22 08:42:08 UTC 2020
A couple of inline comments below:
> -----Original Message-----
> From: Kun Qin <kun.q at outlook.com>
> Sent: Saturday, December 19, 2020 2:50 AM
> To: devel at edk2.groups.io
> Cc: Wang, Jian J <jian.j.wang at intel.com>; Wu, Hao A <hao.a.wu at intel.com>;
> Bi, Dandan <dandan.bi at intel.com>; Liming Gao <gaoliming at byosoft.com.cn>
> Subject: [PATCH v1 08/15] MdeModulePkg: ReportStatusCodeRouter:
> Support StandaloneMm RSC Router
>
> This change added support of RSC router under StandaloneMm. It replaces
> SMM version ReportStatusCode protocol definitions with MM version. This
> patch also switched to use gMmst instead of gSmst. Lastly, it abstracts
> standalone and traditional MM driver entrypoints into separate files to allow
> maximal common implementations.
>
> Cc: Jian J Wang <jian.j.wang at intel.com>
> Cc: Hao A Wu <hao.a.wu at intel.com>
> Cc: Dandan Bi <dandan.bi at intel.com>
> Cc: Liming Gao <gaoliming at byosoft.com.cn>
>
> Signed-off-by: Kun Qin <kun.q at outlook.com>
> ---
>
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/{ReportStatusCo
> deRouterSmm.c => ReportStatusCodeRouterCommon.c} | 43 ++++++++------
> ---
>
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterStandaloneMm.c | 33 +++++++++++++
>
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterTraditional.c | 33 +++++++++++++
> MdeModulePkg/MdeModulePkg.dsc
> | 1 +
>
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/{ReportStatusCo
> deRouterSmm.h => ReportStatusCodeRouterCommon.h} | 50
> +++++++++++++-------
>
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterSmm.inf | 13 ++---
>
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterStandaloneMm.inf | 49 +++++++++++++++++++
> 7 files changed, 177 insertions(+), 45 deletions(-)
>
> diff --git
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterSmm.c
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterCommon.c
> similarity index 80%
> rename from
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterSmm.c
> rename to
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterCommon.c
> index c3ab5cd05045..585428aad669 100644
> ---
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterSmm.c
> +++
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> ode
> +++ RouterCommon.c
> @@ -7,7 +7,7 @@
>
> **/
>
> -#include "ReportStatusCodeRouterSmm.h"
> +#include "ReportStatusCodeRouterCommon.h"
>
> LIST_ENTRY mCallbackListHead = INITIALIZE_LIST_HEAD_VARIABLE
> (mCallbackListHead);
>
> @@ -17,11 +17,11 @@ LIST_ENTRY mCallbackListHead =
> INITIALIZE_LIST_HEAD_VARIABLE (mCallba
> //
> UINT32 mStatusCodeNestStatus = 0;
>
> -EFI_SMM_STATUS_CODE_PROTOCOL mSmmStatusCodeProtocol = {
> +EFI_MM_STATUS_CODE_PROTOCOL mSmmStatusCodeProtocol = {
> ReportDispatcher
> };
>
> -EFI_SMM_RSC_HANDLER_PROTOCOL mSmmRscHandlerProtocol = {
> +EFI_MM_RSC_HANDLER_PROTOCOL mSmmRscHandlerProtocol = {
> Register,
> Unregister
> };
> @@ -45,18 +45,18 @@ EFI_SMM_RSC_HANDLER_PROTOCOL
> mSmmRscHandlerProtocol = { EFI_STATUS EFIAPI Register (
> - IN EFI_SMM_RSC_HANDLER_CALLBACK Callback
> + IN EFI_MM_RSC_HANDLER_CALLBACK Callback
> )
> {
> LIST_ENTRY *Link;
> - SMM_RSC_HANDLER_CALLBACK_ENTRY *CallbackEntry;
> + MM_RSC_HANDLER_CALLBACK_ENTRY *CallbackEntry;
>
> if (Callback == NULL) {
> return EFI_INVALID_PARAMETER;
> }
>
> for (Link = GetFirstNode (&mCallbackListHead); !IsNull (&mCallbackListHead,
> Link); Link = GetNextNode (&mCallbackListHead, Link)) {
> - CallbackEntry = CR (Link, SMM_RSC_HANDLER_CALLBACK_ENTRY, Node,
> SMM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE);
> + CallbackEntry = CR (Link, MM_RSC_HANDLER_CALLBACK_ENTRY, Node,
> + MM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE);
> if (CallbackEntry->RscHandlerCallback == Callback) {
> //
> // If the function was already registered. It can't be registered again.
> @@ -65,10 +65,10 @@ Register (
> }
> }
>
> - CallbackEntry = (SMM_RSC_HANDLER_CALLBACK_ENTRY *)AllocatePool
> (sizeof (SMM_RSC_HANDLER_CALLBACK_ENTRY));
> + CallbackEntry = (MM_RSC_HANDLER_CALLBACK_ENTRY *)AllocatePool
> (sizeof
> + (MM_RSC_HANDLER_CALLBACK_ENTRY));
> ASSERT (CallbackEntry != NULL);
>
> - CallbackEntry->Signature =
> SMM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE;
> + CallbackEntry->Signature =
> MM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE;
> CallbackEntry->RscHandlerCallback = Callback;
>
> InsertTailList (&mCallbackListHead, &CallbackEntry->Node); @@ -92,18
> +92,18 @@ Register ( EFI_STATUS EFIAPI Unregister (
> - IN EFI_SMM_RSC_HANDLER_CALLBACK Callback
> + IN EFI_MM_RSC_HANDLER_CALLBACK Callback
> )
> {
> LIST_ENTRY *Link;
> - SMM_RSC_HANDLER_CALLBACK_ENTRY *CallbackEntry;
> + MM_RSC_HANDLER_CALLBACK_ENTRY *CallbackEntry;
>
> if (Callback == NULL) {
> return EFI_INVALID_PARAMETER;
> }
>
> for (Link = GetFirstNode (&mCallbackListHead); !IsNull (&mCallbackListHead,
> Link); Link = GetNextNode (&mCallbackListHead, Link)) {
> - CallbackEntry = CR (Link, SMM_RSC_HANDLER_CALLBACK_ENTRY, Node,
> SMM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE);
> + CallbackEntry = CR (Link, MM_RSC_HANDLER_CALLBACK_ENTRY, Node,
> + MM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE);
> if (CallbackEntry->RscHandlerCallback == Callback) {
> //
> // If the function is found in list, delete it and return.
> @@ -140,16 +140,16 @@ Unregister (
> EFI_STATUS
> EFIAPI
> ReportDispatcher (
> - IN CONST EFI_SMM_STATUS_CODE_PROTOCOL *This,
> + IN CONST EFI_MM_STATUS_CODE_PROTOCOL *This,
> IN EFI_STATUS_CODE_TYPE Type,
> IN EFI_STATUS_CODE_VALUE Value,
> IN UINT32 Instance,
> - IN CONST EFI_GUID *CallerId OPTIONAL,
> + IN CONST EFI_GUID *CallerId,
> IN EFI_STATUS_CODE_DATA *Data OPTIONAL
> )
> {
> LIST_ENTRY *Link;
> - SMM_RSC_HANDLER_CALLBACK_ENTRY *CallbackEntry;
> + MM_RSC_HANDLER_CALLBACK_ENTRY *CallbackEntry;
>
> //
> // Use atom operation to avoid the reentant of report.
> @@ -160,7 +160,7 @@ ReportDispatcher (
> }
>
> for (Link = GetFirstNode (&mCallbackListHead); !IsNull (&mCallbackListHead,
> Link);) {
> - CallbackEntry = CR (Link, SMM_RSC_HANDLER_CALLBACK_ENTRY, Node,
> SMM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE);
> + CallbackEntry = CR (Link, MM_RSC_HANDLER_CALLBACK_ENTRY, Node,
> + MM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE);
> //
> // The handler may remove itself, so get the next handler in advance.
> //
> @@ -197,9 +197,8 @@ ReportDispatcher (
> **/
> EFI_STATUS
> EFIAPI
> -GenericStatusCodeSmmEntry (
> - IN EFI_HANDLE ImageHandle,
> - IN EFI_SYSTEM_TABLE *SystemTable
> +GenericStatusCodeCommonEntry (
> + VOID
> )
Could you help to remove the 'EFIAPI' for function GenericStatusCodeCommonEntry()?
And also update the function description comments for removed input parameters?
> {
> EFI_STATUS Status;
> @@ -210,9 +209,9 @@ GenericStatusCodeSmmEntry (
> //
> // Install SmmRscHandler Protocol
> //
> - Status = gSmst->SmmInstallProtocolInterface (
> + Status = gMmst->MmInstallProtocolInterface (
> &Handle,
> - &gEfiSmmRscHandlerProtocolGuid,
> + &gEfiMmRscHandlerProtocolGuid,
> EFI_NATIVE_INTERFACE,
> &mSmmRscHandlerProtocol
> );
> @@ -221,9 +220,9 @@ GenericStatusCodeSmmEntry (
> //
> // Install SmmStatusCode Protocol
> //
> - Status = gSmst->SmmInstallProtocolInterface (
> + Status = gMmst->MmInstallProtocolInterface (
> &Handle,
> - &gEfiSmmStatusCodeProtocolGuid,
> + &gEfiMmStatusCodeProtocolGuid,
> EFI_NATIVE_INTERFACE,
> &mSmmStatusCodeProtocol
> );
> diff --git
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterStandaloneMm.c
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterStandaloneMm.c
> new file mode 100644
> index 000000000000..501572719fdc
> --- /dev/null
> +++
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> ode
> +++ RouterStandaloneMm.c
> @@ -0,0 +1,33 @@
> +/** @file
> + Report Status Code Router Driver which produces SMM Report Stataus
> +Code Handler Protocol
> + and SMM Status Code Protocol.
> +
> + Copyright (c) 2009 - 2018, Intel Corporation. All rights
> + reserved.<BR> Copyright (c) Microsoft Corporation.
> + SPDX-License-Identifier: BSD-2-Clause-Patent
> +
> +**/
> +
> +#include "ReportStatusCodeRouterCommon.h"
> +
> +/**
> + Entry point of Generic Status Code Driver.
> +
> + This function is the entry point of SMM Status Code Router .
> + It produces SMM Report Stataus Code Handler and Status Code protocol.
> +
> + @param ImageHandle The firmware allocated handle for the EFI image.
> + @param SystemTable A pointer to the EFI System Table.
> +
> + @retval EFI_SUCCESS The entry point is executed successfully.
> +
> +**/
> +EFI_STATUS
> +EFIAPI
> +GenericStatusCodeStandaloneMmEntry (
> + IN EFI_HANDLE ImageHandle,
> + IN EFI_MM_SYSTEM_TABLE *SystemTable
> + )
> +{
> + return GenericStatusCodeCommonEntry (); }
> diff --git
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterTraditional.c
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterTraditional.c
> new file mode 100644
> index 000000000000..360a0eef6b6d
> --- /dev/null
> +++
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> ode
> +++ RouterTraditional.c
> @@ -0,0 +1,33 @@
> +/** @file
> + Report Status Code Router Driver which produces MM Report Stataus
> +Code Handler Protocol
> + and MM Status Code Protocol.
> +
> + Copyright (c) 2009 - 2018, Intel Corporation. All rights
> + reserved.<BR> Copyright (c) Microsoft Corporation.
> + SPDX-License-Identifier: BSD-2-Clause-Patent
> +
> +**/
> +
> +#include "ReportStatusCodeRouterCommon.h"
> +
> +/**
> + Entry point of Generic Status Code Driver.
> +
> + This function is the entry point of SMM Status Code Router .
> + It produces SMM Report Stataus Code Handler and Status Code protocol.
> +
> + @param ImageHandle The firmware allocated handle for the EFI image.
> + @param SystemTable A pointer to the EFI System Table.
> +
> + @retval EFI_SUCCESS The entry point is executed successfully.
> +
> +**/
> +EFI_STATUS
> +EFIAPI
> +GenericStatusCodeTraditionalEntry (
> + IN EFI_HANDLE ImageHandle,
> + IN EFI_SYSTEM_TABLE *SystemTable
> + )
> +{
> + return GenericStatusCodeCommonEntry (); }
> diff --git a/MdeModulePkg/MdeModulePkg.dsc
> b/MdeModulePkg/MdeModulePkg.dsc index dc85d108d958..84ad577c2851
> 100644
> --- a/MdeModulePkg/MdeModulePkg.dsc
> +++ b/MdeModulePkg/MdeModulePkg.dsc
> @@ -477,6 +477,7 @@ [Components.IA32, Components.X64]
>
> MdeModulePkg/Library/SmmReportStatusCodeLib/StandaloneMmReportSt
> atusCodeLib.inf
>
> MdeModulePkg/Universal/StatusCodeHandler/Smm/StatusCodeHandlerSm
> m.inf
>
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterSmm.inf
> +
> +
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRout
> + erStandaloneMm.inf
> MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf
>
> MdeModulePkg/Library/SmmMemoryAllocationProfileLib/SmmMemoryAllo
> cationProfileLib.inf
>
> MdeModulePkg/Library/PiSmmCoreMemoryAllocationLib/PiSmmCoreMem
> oryAllocationProfileLib.inf
> diff --git
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterSmm.h
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterCommon.h
> similarity index 70%
> rename from
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterSmm.h
> rename to
> MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCod
> eRouterCommon.h
> index f8c48c62e790..f7962e773bb3 100644
> ---
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterSmm.h
> +++
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> ode
> +++ RouterCommon.h
> @@ -6,28 +6,26 @@
>
> **/
>
> -#ifndef __REPORT_STATUS_CODE_ROUTER_SMM_H__
> -#define __REPORT_STATUS_CODE_ROUTER_SMM_H__
> +#ifndef __REPORT_STATUS_CODE_ROUTER_COMMON_H__
> +#define __REPORT_STATUS_CODE_ROUTER_COMMON_H__
>
> -
> -#include <Protocol/SmmReportStatusCodeHandler.h>
> -#include <Protocol/SmmStatusCode.h>
> +#include <Protocol/MmReportStatusCodeHandler.h>
> +#include <Protocol/MmStatusCode.h>
>
> #include <Library/BaseLib.h>
> #include <Library/SynchronizationLib.h> #include <Library/DebugLib.h>
> #include <Library/PcdLib.h> -#include <Library/UefiDriverEntryPoint.h> -
> #include <Library/SmmServicesTableLib.h>
> +#include <Library/MmServicesTableLib.h>
> #include <Library/MemoryAllocationLib.h>
>
> -#define SMM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE
> SIGNATURE_32 ('s', 'h', 'c', 'e')
> +#define MM_RSC_HANDLER_CALLBACK_ENTRY_SIGNATURE
> SIGNATURE_32 ('s',
> +'h', 'c', 'e')
>
> typedef struct {
> UINTN Signature;
> - EFI_SMM_RSC_HANDLER_CALLBACK RscHandlerCallback;
> + EFI_MM_RSC_HANDLER_CALLBACK RscHandlerCallback;
> LIST_ENTRY Node;
> -} SMM_RSC_HANDLER_CALLBACK_ENTRY;
> +} MM_RSC_HANDLER_CALLBACK_ENTRY;
>
> /**
> Register the callback function for ReportStatusCode() notification.
> @@ -48,7 +46,7 @@ typedef struct {
> EFI_STATUS
> EFIAPI
> Register (
> - IN EFI_SMM_RSC_HANDLER_CALLBACK Callback
> + IN EFI_MM_RSC_HANDLER_CALLBACK Callback
> );
>
> /**
> @@ -67,13 +65,13 @@ Register (
> EFI_STATUS
> EFIAPI
> Unregister (
> - IN EFI_SMM_RSC_HANDLER_CALLBACK Callback
> + IN EFI_MM_RSC_HANDLER_CALLBACK Callback
> );
>
> /**
> Provides an interface that a software module can call to report a status
> code.
>
> - @param This EFI_SMM_STATUS_CODE_PROTOCOL instance.
> + @param This EFI_MM_RSC_HANDLER_CALLBACK instance.
> @param Type Indicates the type of status code being reported.
> @param Value Describes the current status of a hardware or
> software entity.
> This included information about the class and subclass that is
> used to @@ -92,12 +90,30 @@ Unregister ( EFI_STATUS EFIAPI
> ReportDispatcher (
> - IN CONST EFI_SMM_STATUS_CODE_PROTOCOL *This,
> - IN EFI_STATUS_CODE_TYPE Type,
> + IN CONST EFI_MM_STATUS_CODE_PROTOCOL *This,
> + IN EFI_STATUS_CODE_TYPE CodeType,
I found that the above parameter does not match the name with its implementation in .C files.
Could you help to update it?
> IN EFI_STATUS_CODE_VALUE Value,
> IN UINT32 Instance,
> - IN CONST EFI_GUID *CallerId OPTIONAL,
> - IN EFI_STATUS_CODE_DATA *Data OPTIONAL
> + IN CONST EFI_GUID *CallerId,
> + IN EFI_STATUS_CODE_DATA *Data OPTIONAL
> + );
> +
> +/**
> + Entry point of Generic Status Code Driver.
> +
> + This function is the entry point of SMM Status Code Router .
> + It produces SMM Report Stataus Code Handler and Status Code protocol.
> +
> + @param ImageHandle The firmware allocated handle for the EFI image.
> + @param SystemTable A pointer to the EFI System Table.
> +
> + @retval EFI_SUCCESS The entry point is executed successfully.
> +
> +**/
> +EFI_STATUS
> +EFIAPI
> +GenericStatusCodeCommonEntry (
> + VOID
> );
Could you help to remove the 'EFIAPI' for function GenericStatusCodeCommonEntry()?
And also update the function description comments for removed input parameters?
Best Regards,
Hao Wu
>
> #endif
> diff --git
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterSmm.inf
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterSmm.inf
> index 46fdcb7bf959..539badc4c755 100644
> ---
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterSmm.inf
> +++
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> ode
> +++ RouterSmm.inf
> @@ -16,7 +16,7 @@ [Defines]
> MODULE_TYPE = DXE_SMM_DRIVER
> PI_SPECIFICATION_VERSION = 0x0001000A
> VERSION_STRING = 1.0
> - ENTRY_POINT = GenericStatusCodeSmmEntry
> + ENTRY_POINT = GenericStatusCodeTraditionalEntry
>
> #
> # The following information is for reference only and not required by the
> build tools.
> @@ -25,15 +25,16 @@ [Defines]
> #
>
> [Sources]
> - ReportStatusCodeRouterSmm.c
> - ReportStatusCodeRouterSmm.h
> + ReportStatusCodeRouterCommon.c
> + ReportStatusCodeRouterCommon.h
> + ReportStatusCodeRouterTraditional.c
>
> [Packages]
> MdePkg/MdePkg.dec
> MdeModulePkg/MdeModulePkg.dec
>
> [LibraryClasses]
> - SmmServicesTableLib
> + MmServicesTableLib
> UefiDriverEntryPoint
> DebugLib
> BaseLib
> @@ -41,8 +42,8 @@ [LibraryClasses]
> MemoryAllocationLib
>
> [Protocols]
> - gEfiSmmRscHandlerProtocolGuid ## PRODUCES
> - gEfiSmmStatusCodeProtocolGuid ## PRODUCES
> + gEfiMmRscHandlerProtocolGuid ## PRODUCES
> + gEfiMmStatusCodeProtocolGuid ## PRODUCES
>
> [Depex]
> TRUE
> diff --git
> a/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterStandaloneMm.inf
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> odeRouterStandaloneMm.inf
> new file mode 100644
> index 000000000000..f34b3e29d4ad
> --- /dev/null
> +++
> b/MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusC
> ode
> +++ RouterStandaloneMm.inf
> @@ -0,0 +1,49 @@
> +## @file
> +# Report Status Code Router Driver which produces SMM Report Stataus
> Code Handler Protocol and SMM Status Code Protocol.
> +#
> +# Copyright (c) 2009 - 2018, Intel Corporation. All rights
> +reserved.<BR> # Copyright (c) Microsoft Corporation.
> +#
> +# SPDX-License-Identifier: BSD-2-Clause-Patent # # ##
> +
> +[Defines]
> + INF_VERSION = 0x00010005
> + BASE_NAME = ReportStatusCodeRouterStandaloneMm
> + FILE_GUID = EAEEDEF9-ABE7-4B95-82B0-5A534C899B46
> + MODULE_TYPE = MM_STANDALONE
> + PI_SPECIFICATION_VERSION = 0x00010032
> + VERSION_STRING = 1.0
> + ENTRY_POINT = GenericStatusCodeStandaloneMmEntry
> +
> +#
> +# The following information is for reference only and not required by the
> build tools.
> +#
> +# VALID_ARCHITECTURES = IA32 X64
> +#
> +
> +[Sources]
> + ReportStatusCodeRouterCommon.c
> + ReportStatusCodeRouterCommon.h
> + ReportStatusCodeRouterStandaloneMm.c
> +
> +[Packages]
> + MdePkg/MdePkg.dec
> + MdeModulePkg/MdeModulePkg.dec
> +
> +[LibraryClasses]
> + MmServicesTableLib
> + StandaloneMmDriverEntryPoint
> + DebugLib
> + BaseLib
> + SynchronizationLib
> + MemoryAllocationLib
> +
> +[Protocols]
> + gEfiMmRscHandlerProtocolGuid ## PRODUCES
> + gEfiMmStatusCodeProtocolGuid ## PRODUCES
> +
> +[Depex]
> + TRUE
> --
> 2.28.0.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#69377): https://edk2.groups.io/g/devel/message/69377
Mute This Topic: https://groups.io/mt/79068293/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