//\r
// Globals used to initialize the protocol\r
//\r
-EFI_HANDLE mMmCpuHandle = NULL;\r
+EFI_HANDLE mMmCpuHandle = NULL;\r
\r
//\r
// Physical pointer to private structure shared between MM IPL and the MM Core\r
// MM Core global variable for MM System Table. Only accessed as a physical structure in MMRAM.\r
//\r
EFI_MM_SYSTEM_TABLE gMmCoreMmst = {\r
-\r
// The table header for the MMST.\r
{\r
MM_MMST_SIGNATURE,\r
// I/O Service\r
{\r
{\r
- (EFI_MM_CPU_IO) MmEfiNotAvailableYetArg5, // MmMemRead\r
- (EFI_MM_CPU_IO) MmEfiNotAvailableYetArg5 // MmMemWrite\r
+ (EFI_MM_CPU_IO)MmEfiNotAvailableYetArg5, // MmMemRead\r
+ (EFI_MM_CPU_IO)MmEfiNotAvailableYetArg5 // MmMemWrite\r
},\r
{\r
- (EFI_MM_CPU_IO) MmEfiNotAvailableYetArg5, // MmIoRead\r
- (EFI_MM_CPU_IO) MmEfiNotAvailableYetArg5 // MmIoWrite\r
+ (EFI_MM_CPU_IO)MmEfiNotAvailableYetArg5, // MmIoRead\r
+ (EFI_MM_CPU_IO)MmEfiNotAvailableYetArg5 // MmIoWrite\r
}\r
},\r
// Runtime memory services\r
// Table of MMI Handlers that are registered by the MM Core when it is initialized\r
//\r
MM_CORE_MMI_HANDLERS mMmCoreMmiHandlers[] = {\r
- { MmReadyToLockHandler, &gEfiDxeMmReadyToLockProtocolGuid, NULL, TRUE },\r
- { MmEndOfDxeHandler, &gEfiEndOfDxeEventGroupGuid, NULL, FALSE },\r
- { MmExitBootServiceHandler,&gEfiEventExitBootServicesGuid, NULL, FALSE },\r
- { MmReadyToBootHandler, &gEfiEventReadyToBootGuid, NULL, FALSE },\r
- { NULL, NULL, NULL, FALSE },\r
+ { MmReadyToLockHandler, &gEfiDxeMmReadyToLockProtocolGuid, NULL, TRUE },\r
+ { MmEndOfDxeHandler, &gEfiEndOfDxeEventGroupGuid, NULL, FALSE },\r
+ { MmExitBootServiceHandler, &gEfiEventExitBootServicesGuid, NULL, FALSE },\r
+ { MmReadyToBootHandler, &gEfiEventReadyToBootGuid, NULL, FALSE },\r
+ { NULL, NULL, NULL, FALSE },\r
};\r
\r
-EFI_SYSTEM_TABLE *mEfiSystemTable;\r
-UINTN mMmramRangeCount;\r
-EFI_MMRAM_DESCRIPTOR *mMmramRanges;\r
+EFI_SYSTEM_TABLE *mEfiSystemTable;\r
+UINTN mMmramRangeCount;\r
+EFI_MMRAM_DESCRIPTOR *mMmramRanges;\r
\r
/**\r
Place holder function until all the MM System Table Service are available.\r
EFI_STATUS\r
EFIAPI\r
MmEfiNotAvailableYetArg5 (\r
- UINTN Arg1,\r
- UINTN Arg2,\r
- UINTN Arg3,\r
- UINTN Arg4,\r
- UINTN Arg5\r
+ UINTN Arg1,\r
+ UINTN Arg2,\r
+ UINTN Arg3,\r
+ UINTN Arg4,\r
+ UINTN Arg5\r
)\r
{\r
//\r
IN OUT UINTN *CommBufferSize OPTIONAL\r
)\r
{\r
- EFI_HANDLE MmHandle;\r
- EFI_STATUS Status;\r
- STATIC BOOLEAN mInExitBootServices = FALSE;\r
+ EFI_HANDLE MmHandle;\r
+ EFI_STATUS Status;\r
+ STATIC BOOLEAN mInExitBootServices = FALSE;\r
\r
Status = EFI_SUCCESS;\r
if (!mInExitBootServices) {\r
MmHandle = NULL;\r
- Status = MmInstallProtocolInterface (\r
- &MmHandle,\r
- &gEfiEventExitBootServicesGuid,\r
- EFI_NATIVE_INTERFACE,\r
- NULL\r
- );\r
+ Status = MmInstallProtocolInterface (\r
+ &MmHandle,\r
+ &gEfiEventExitBootServicesGuid,\r
+ EFI_NATIVE_INTERFACE,\r
+ NULL\r
+ );\r
}\r
+\r
mInExitBootServices = TRUE;\r
return Status;\r
}\r
IN OUT UINTN *CommBufferSize OPTIONAL\r
)\r
{\r
- EFI_HANDLE MmHandle;\r
- EFI_STATUS Status;\r
- STATIC BOOLEAN mInReadyToBoot = FALSE;\r
+ EFI_HANDLE MmHandle;\r
+ EFI_STATUS Status;\r
+ STATIC BOOLEAN mInReadyToBoot = FALSE;\r
\r
Status = EFI_SUCCESS;\r
if (!mInReadyToBoot) {\r
MmHandle = NULL;\r
- Status = MmInstallProtocolInterface (\r
- &MmHandle,\r
- &gEfiEventReadyToBootGuid,\r
- EFI_NATIVE_INTERFACE,\r
- NULL\r
- );\r
+ Status = MmInstallProtocolInterface (\r
+ &MmHandle,\r
+ &gEfiEventReadyToBootGuid,\r
+ EFI_NATIVE_INTERFACE,\r
+ NULL\r
+ );\r
}\r
+\r
mInReadyToBoot = TRUE;\r
return Status;\r
}\r
// Install MM Ready to lock protocol\r
//\r
MmHandle = NULL;\r
- Status = MmInstallProtocolInterface (\r
- &MmHandle,\r
- &gEfiMmReadyToLockProtocolGuid,\r
- EFI_NATIVE_INTERFACE,\r
- NULL\r
- );\r
+ Status = MmInstallProtocolInterface (\r
+ &MmHandle,\r
+ &gEfiMmReadyToLockProtocolGuid,\r
+ EFI_NATIVE_INTERFACE,\r
+ NULL\r
+ );\r
\r
//\r
// Make sure MM CPU I/O 2 Protocol has been installed into the handle database\r
//\r
- //Status = MmLocateProtocol (&EFI_MM_CPU_IO_PROTOCOL_GUID, NULL, &Interface);\r
+ // Status = MmLocateProtocol (&EFI_MM_CPU_IO_PROTOCOL_GUID, NULL, &Interface);\r
\r
//\r
// Print a message on a debug build if the MM CPU I/O 2 Protocol is not installed\r
//\r
- //if (EFI_ERROR (Status)) {\r
- //DEBUG ((DEBUG_ERROR, "\nSMM: SmmCpuIo Arch Protocol not present!!\n"));\r
- //}\r
-\r
+ // if (EFI_ERROR (Status)) {\r
+ // DEBUG ((DEBUG_ERROR, "\nSMM: SmmCpuIo Arch Protocol not present!!\n"));\r
+ // }\r
\r
//\r
// Assert if the CPU I/O 2 Protocol is not installed\r
//\r
- //ASSERT_EFI_ERROR (Status);\r
+ // ASSERT_EFI_ERROR (Status);\r
\r
//\r
// Display any drivers that were not dispatched because dependency expression\r
// evaluated to false if this is a debug build\r
//\r
- //MmDisplayDiscoveredNotDispatched ();\r
+ // MmDisplayDiscoveredNotDispatched ();\r
\r
return Status;\r
}\r
// Install MM EndOfDxe protocol\r
//\r
MmHandle = NULL;\r
- Status = MmInstallProtocolInterface (\r
- &MmHandle,\r
- &gEfiMmEndOfDxeProtocolGuid,\r
- EFI_NATIVE_INTERFACE,\r
- NULL\r
- );\r
+ Status = MmInstallProtocolInterface (\r
+ &MmHandle,\r
+ &gEfiMmEndOfDxeProtocolGuid,\r
+ EFI_NATIVE_INTERFACE,\r
+ NULL\r
+ );\r
return Status;\r
}\r
\r
-\r
-\r
/**\r
The main entry point to MM Foundation.\r
\r
EFIAPI\r
MmEntryPoint (\r
IN CONST EFI_MM_ENTRY_CONTEXT *MmEntryContext\r
-)\r
+ )\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
EFI_MM_COMMUNICATE_HEADER *CommunicateHeader;\r
\r
DEBUG ((DEBUG_INFO, "MmEntryPoint ...\n"));\r
//\r
// Call platform hook before Mm Dispatch\r
//\r
- //PlatformHookBeforeMmDispatch ();\r
+ // PlatformHookBeforeMmDispatch ();\r
\r
//\r
// If a legacy boot has occurred, then make sure gMmCorePrivate is not accessed\r
// If CommunicationBuffer is not in valid address scope, return EFI_INVALID_PARAMETER\r
//\r
gMmCorePrivate->CommunicationBuffer = 0;\r
- gMmCorePrivate->ReturnStatus = EFI_INVALID_PARAMETER;\r
+ gMmCorePrivate->ReturnStatus = EFI_INVALID_PARAMETER;\r
} else {\r
- CommunicateHeader = (EFI_MM_COMMUNICATE_HEADER *)(UINTN)gMmCorePrivate->CommunicationBuffer;\r
+ CommunicateHeader = (EFI_MM_COMMUNICATE_HEADER *)(UINTN)gMmCorePrivate->CommunicationBuffer;\r
gMmCorePrivate->BufferSize -= OFFSET_OF (EFI_MM_COMMUNICATE_HEADER, Data);\r
- Status = MmiManage (\r
- &CommunicateHeader->HeaderGuid,\r
- NULL,\r
- CommunicateHeader->Data,\r
- (UINTN *)&gMmCorePrivate->BufferSize\r
- );\r
+ Status = MmiManage (\r
+ &CommunicateHeader->HeaderGuid,\r
+ NULL,\r
+ CommunicateHeader->Data,\r
+ (UINTN *)&gMmCorePrivate->BufferSize\r
+ );\r
//\r
// Update CommunicationBuffer, BufferSize and ReturnStatus\r
// Communicate service finished, reset the pointer to CommBuffer to NULL\r
//\r
- gMmCorePrivate->BufferSize += OFFSET_OF (EFI_MM_COMMUNICATE_HEADER, Data);\r
+ gMmCorePrivate->BufferSize += OFFSET_OF (EFI_MM_COMMUNICATE_HEADER, Data);\r
gMmCorePrivate->CommunicationBuffer = 0;\r
- gMmCorePrivate->ReturnStatus = (Status == EFI_SUCCESS) ? EFI_SUCCESS : EFI_NOT_FOUND;\r
+ gMmCorePrivate->ReturnStatus = (Status == EFI_SUCCESS) ? EFI_SUCCESS : EFI_NOT_FOUND;\r
}\r
}\r
\r
EFI_STATUS\r
EFIAPI\r
MmConfigurationMmNotify (\r
- IN CONST EFI_GUID *Protocol,\r
- IN VOID *Interface,\r
+ IN CONST EFI_GUID *Protocol,\r
+ IN VOID *Interface,\r
IN EFI_HANDLE Handle\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
EFI_MM_CONFIGURATION_PROTOCOL *MmConfiguration;\r
\r
DEBUG ((DEBUG_INFO, "MmConfigurationMmNotify(%g) - %x\n", Protocol, Interface));\r
**/\r
UINTN\r
GetHobListSize (\r
- IN VOID *HobStart\r
+ IN VOID *HobStart\r
)\r
{\r
EFI_PEI_HOB_POINTERS Hob;\r
\r
ASSERT (HobStart != NULL);\r
\r
- Hob.Raw = (UINT8 *) HobStart;\r
+ Hob.Raw = (UINT8 *)HobStart;\r
while (!END_OF_HOB_LIST (Hob)) {\r
Hob.Raw = GET_NEXT_HOB (Hob);\r
}\r
+\r
//\r
// Need plus END_OF_HOB_LIST\r
//\r
// Allocate and zero memory for a MM_CORE_PRIVATE_DATA table and then\r
// initialise it\r
//\r
- gMmCorePrivate = (MM_CORE_PRIVATE_DATA *) AllocateRuntimePages(EFI_SIZE_TO_PAGES(sizeof (MM_CORE_PRIVATE_DATA)));\r
+ gMmCorePrivate = (MM_CORE_PRIVATE_DATA *)AllocateRuntimePages (EFI_SIZE_TO_PAGES (sizeof (MM_CORE_PRIVATE_DATA)));\r
SetMem ((VOID *)(UINTN)gMmCorePrivate, sizeof (MM_CORE_PRIVATE_DATA), 0);\r
- gMmCorePrivate->Signature = MM_CORE_PRIVATE_DATA_SIGNATURE;\r
+ gMmCorePrivate->Signature = MM_CORE_PRIVATE_DATA_SIGNATURE;\r
gMmCorePrivate->MmEntryPointRegistered = FALSE;\r
- gMmCorePrivate->InMm = FALSE;\r
- gMmCorePrivate->ReturnStatus = EFI_SUCCESS;\r
+ gMmCorePrivate->InMm = FALSE;\r
+ gMmCorePrivate->ReturnStatus = EFI_SUCCESS;\r
\r
//\r
// Extract the MMRAM ranges from the MMRAM descriptor HOB\r
//\r
MmramRangesHob = GetNextGuidHob (&gEfiMmPeiMmramMemoryReserveGuid, HobStart);\r
- if (MmramRangesHob == NULL)\r
+ if (MmramRangesHob == NULL) {\r
return EFI_UNSUPPORTED;\r
+ }\r
\r
MmramRangesHobData = GET_GUID_HOB_DATA (MmramRangesHob);\r
ASSERT (MmramRangesHobData != NULL);\r
- MmramRanges = MmramRangesHobData->Descriptor;\r
+ MmramRanges = MmramRangesHobData->Descriptor;\r
MmramRangeCount = (UINTN)MmramRangesHobData->NumberOfMmReservedRegions;\r
ASSERT (MmramRanges);\r
ASSERT (MmramRangeCount);\r
// code relies on them being present there\r
//\r
gMmCorePrivate->MmramRangeCount = (UINT64)MmramRangeCount;\r
- gMmCorePrivate->MmramRanges =\r
+ gMmCorePrivate->MmramRanges =\r
(EFI_PHYSICAL_ADDRESS)(UINTN)AllocatePool (MmramRangeCount * sizeof (EFI_MMRAM_DESCRIPTOR));\r
ASSERT (gMmCorePrivate->MmramRanges != 0);\r
CopyMem (\r
);\r
} else {\r
DataInHob = GET_GUID_HOB_DATA (GuidHob);\r
- gMmCorePrivate = (MM_CORE_PRIVATE_DATA *)(UINTN)DataInHob->Address;\r
+ gMmCorePrivate = (MM_CORE_PRIVATE_DATA *)(UINTN)DataInHob->Address;\r
MmramRanges = (EFI_MMRAM_DESCRIPTOR *)(UINTN)gMmCorePrivate->MmramRanges;\r
MmramRangeCount = (UINTN)gMmCorePrivate->MmramRangeCount;\r
}\r
//\r
DEBUG ((DEBUG_INFO, "MmramRangeCount - 0x%x\n", MmramRangeCount));\r
for (Index = 0; Index < MmramRangeCount; Index++) {\r
- DEBUG ((DEBUG_INFO, "MmramRanges[%d]: 0x%016lx - 0x%lx\n", Index,\r
- MmramRanges[Index].CpuStart,\r
- MmramRanges[Index].PhysicalSize));\r
+ DEBUG ((\r
+ DEBUG_INFO,\r
+ "MmramRanges[%d]: 0x%016lx - 0x%lx\n",\r
+ Index,\r
+ MmramRanges[Index].CpuStart,\r
+ MmramRanges[Index].PhysicalSize\r
+ ));\r
}\r
\r
//\r
gMmCorePrivate->StandaloneBfvAddress = BfvHob->BaseAddress;\r
}\r
\r
- gMmCorePrivate->Mmst = (EFI_PHYSICAL_ADDRESS)(UINTN)&gMmCoreMmst;\r
+ gMmCorePrivate->Mmst = (EFI_PHYSICAL_ADDRESS)(UINTN)&gMmCoreMmst;\r
gMmCorePrivate->MmEntryPoint = (EFI_PHYSICAL_ADDRESS)(UINTN)MmEntryPoint;\r
\r
//\r