summaryrefslogtreecommitdiffstats
path: root/StandaloneMmPkg
diff options
context:
space:
mode:
Diffstat (limited to 'StandaloneMmPkg')
-rw-r--r--StandaloneMmPkg/Core/Dispatcher.c92
-rw-r--r--StandaloneMmPkg/Core/StandaloneMmCore.c1
2 files changed, 0 insertions, 93 deletions
diff --git a/StandaloneMmPkg/Core/Dispatcher.c b/StandaloneMmPkg/Core/Dispatcher.c
index 8a2ad5118d..bede4832cf 100644
--- a/StandaloneMmPkg/Core/Dispatcher.c
+++ b/StandaloneMmPkg/Core/Dispatcher.c
@@ -575,7 +575,6 @@ MmDispatcher (
LIST_ENTRY *Link;
EFI_MM_DRIVER_ENTRY *DriverEntry;
BOOLEAN ReadyToRun;
- BOOLEAN PreviousMmEntryPointRegistered;
DEBUG ((DEBUG_INFO, "MmDispatcher\n"));
@@ -640,11 +639,6 @@ MmDispatcher (
RemoveEntryList (&DriverEntry->ScheduledLink);
//
- // Cache state of MmEntryPointRegistered before calling entry point
- //
- PreviousMmEntryPointRegistered = gMmCorePrivate->MmEntryPointRegistered;
-
- //
// For each MM driver, pass NULL as ImageHandle
//
if (mEfiSystemTable == NULL) {
@@ -661,20 +655,6 @@ MmDispatcher (
DEBUG ((DEBUG_INFO, "StartImage Status - %r\n", Status));
MmFreePages(DriverEntry->ImageBuffer, DriverEntry->NumberOfPage);
}
-
- if (!PreviousMmEntryPointRegistered && gMmCorePrivate->MmEntryPointRegistered) {
- //
- // Return immediately if the MM Entry Point was registered by the MM
- // Driver that was just dispatched. The MM IPL will reinvoke the MM
- // Core Dispatcher. This is required so MM Mode may be enabled as soon
- // as all the dependent MM Drivers for MM Mode have been dispatched.
- // Once the MM Entry Point has been registered, then MM Mode will be
- // used.
- //
- gRequestDispatch = TRUE;
- gDispatcherRunning = FALSE;
- return EFI_NOT_READY;
- }
}
//
@@ -907,78 +887,6 @@ MmAddToDriverList (
This function is the main entry point for an MM handler dispatch
or communicate-based callback.
- Event notification that is fired every time a FV dispatch protocol is added.
- More than one protocol may have been added when this event is fired, so you
- must loop on MmLocateHandle () to see how many protocols were added and
- do the following to each FV:
- If the Fv has already been processed, skip it. If the Fv has not been
- processed then mark it as being processed, as we are about to process it.
- Read the Fv and add any driver in the Fv to the mDiscoveredList.The
- mDiscoveredList is never free'ed and contains variables that define
- the other states the MM driver transitions to..
- While you are at it read the A Priori file into memory.
- Place drivers in the A Priori list onto the mScheduledQueue.
-
- @param DispatchHandle The unique handle assigned to this handler by SmiHandlerRegister().
- @param Context Points to an optional handler context which was specified when the handler was registered.
- @param CommBuffer A pointer to a collection of data in memory that will
- be conveyed from a non-MM environment into an MM environment.
- @param CommBufferSize The size of the CommBuffer.
-
- @return Status Code
-
-**/
-EFI_STATUS
-EFIAPI
-MmDriverDispatchHandler (
- IN EFI_HANDLE DispatchHandle,
- IN CONST VOID *Context, OPTIONAL
- IN OUT VOID *CommBuffer, OPTIONAL
- IN OUT UINTN *CommBufferSize OPTIONAL
- )
-{
- EFI_STATUS Status;
-
- DEBUG ((DEBUG_INFO, "MmDriverDispatchHandler\n"));
-
- //
- // Execute the MM Dispatcher on any newly discovered FVs and previously
- // discovered MM drivers that have been discovered but not dispatched.
- //
- Status = MmDispatcher ();
-
- //
- // Check to see if CommBuffer and CommBufferSize are valid
- //
- if (CommBuffer != NULL && CommBufferSize != NULL) {
- if (*CommBufferSize > 0) {
- if (Status == EFI_NOT_READY) {
- //
- // If a the MM Core Entry Point was just registered, then set flag to
- // request the MM Dispatcher to be restarted.
- //
- *(UINT8 *)CommBuffer = COMM_BUFFER_MM_DISPATCH_RESTART;
- } else if (!EFI_ERROR (Status)) {
- //
- // Set the flag to show that the MM Dispatcher executed without errors
- //
- *(UINT8 *)CommBuffer = COMM_BUFFER_MM_DISPATCH_SUCCESS;
- } else {
- //
- // Set the flag to show that the MM Dispatcher encountered an error
- //
- *(UINT8 *)CommBuffer = COMM_BUFFER_MM_DISPATCH_ERROR;
- }
- }
- }
-
- return EFI_SUCCESS;
-}
-
-/**
- This function is the main entry point for an MM handler dispatch
- or communicate-based callback.
-
@param DispatchHandle The unique handle assigned to this handler by SmiHandlerRegister().
@param Context Points to an optional handler context which was specified when the handler was registered.
@param CommBuffer A pointer to a collection of data in memory that will
diff --git a/StandaloneMmPkg/Core/StandaloneMmCore.c b/StandaloneMmPkg/Core/StandaloneMmCore.c
index 74432320bf..ec53b8d8be 100644
--- a/StandaloneMmPkg/Core/StandaloneMmCore.c
+++ b/StandaloneMmPkg/Core/StandaloneMmCore.c
@@ -100,7 +100,6 @@ BOOLEAN mInLegacyBoot = FALSE;
//
MM_CORE_MMI_HANDLERS mMmCoreMmiHandlers[] = {
{ MmFvDispatchHandler, &gMmFvDispatchGuid, NULL, TRUE },
- { MmDriverDispatchHandler, &gEfiEventDxeDispatchGuid, NULL, TRUE },
{ MmReadyToLockHandler, &gEfiDxeMmReadyToLockProtocolGuid, NULL, TRUE },
{ MmEndOfDxeHandler, &gEfiEndOfDxeEventGroupGuid, NULL, FALSE },
{ MmLegacyBootHandler, &gEfiEventLegacyBootGuid, NULL, FALSE },