#define KNOWN_FWVOL_SIGNATURE SIGNATURE_32('k','n','o','w')\r
\r
typedef struct {\r
- UINTN Signature;\r
- LIST_ENTRY Link; // mFwVolList\r
- EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader;\r
+ UINTN Signature;\r
+ LIST_ENTRY Link; // mFwVolList\r
+ EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader;\r
} KNOWN_FWVOL;\r
\r
//\r
**/\r
VOID\r
MmInsertOnScheduledQueueWhileProcessingBeforeAndAfter (\r
- IN EFI_MM_DRIVER_ENTRY *InsertedDriverEntry\r
+ IN EFI_MM_DRIVER_ENTRY *InsertedDriverEntry\r
);\r
\r
//\r
// memory range usage. It is a bit mapped array in which every bit indicates the correspoding\r
// memory page available or not.\r
//\r
-GLOBAL_REMOVE_IF_UNREFERENCED UINT64 *mMmCodeMemoryRangeUsageBitMap=NULL;\r
+GLOBAL_REMOVE_IF_UNREFERENCED UINT64 *mMmCodeMemoryRangeUsageBitMap = NULL;\r
\r
/**\r
To check memory usage bit map array to figure out if the memory range in which the image will be loaded\r
**/\r
EFI_STATUS\r
CheckAndMarkFixLoadingMemoryUsageBitMap (\r
- IN EFI_PHYSICAL_ADDRESS ImageBase,\r
- IN UINTN ImageSize\r
+ IN EFI_PHYSICAL_ADDRESS ImageBase,\r
+ IN UINTN ImageSize\r
)\r
{\r
- UINT32 MmCodePageNumber;\r
- UINT64 MmCodeSize;\r
- EFI_PHYSICAL_ADDRESS MmCodeBase;\r
- UINTN BaseOffsetPageNumber;\r
- UINTN TopOffsetPageNumber;\r
- UINTN Index;\r
+ UINT32 MmCodePageNumber;\r
+ UINT64 MmCodeSize;\r
+ EFI_PHYSICAL_ADDRESS MmCodeBase;\r
+ UINTN BaseOffsetPageNumber;\r
+ UINTN TopOffsetPageNumber;\r
+ UINTN Index;\r
\r
//\r
// Build tool will calculate the smm code size and then patch the PcdLoadFixAddressMmCodePageNumber\r
//\r
MmCodePageNumber = 0;\r
- MmCodeSize = EFI_PAGES_TO_SIZE (MmCodePageNumber);\r
- MmCodeBase = gLoadModuleAtFixAddressMmramBase;\r
+ MmCodeSize = EFI_PAGES_TO_SIZE (MmCodePageNumber);\r
+ MmCodeBase = gLoadModuleAtFixAddressMmramBase;\r
\r
//\r
// If the memory usage bit map is not initialized, do it. Every bit in the array\r
//\r
// see if the memory range for loading the image is in the MM code range.\r
//\r
- if (MmCodeBase + MmCodeSize < ImageBase + ImageSize || MmCodeBase > ImageBase) {\r
+ if ((MmCodeBase + MmCodeSize < ImageBase + ImageSize) || (MmCodeBase > ImageBase)) {\r
return EFI_NOT_FOUND;\r
}\r
\r
//\r
BaseOffsetPageNumber = (UINTN)EFI_SIZE_TO_PAGES ((UINT32)(ImageBase - MmCodeBase));\r
TopOffsetPageNumber = (UINTN)EFI_SIZE_TO_PAGES ((UINT32)(ImageBase + ImageSize - MmCodeBase));\r
- for (Index = BaseOffsetPageNumber; Index < TopOffsetPageNumber; Index ++) {\r
+ for (Index = BaseOffsetPageNumber; Index < TopOffsetPageNumber; Index++) {\r
if ((mMmCodeMemoryRangeUsageBitMap[Index / 64] & LShiftU64 (1, (Index % 64))) != 0) {\r
//\r
// This page is already used.\r
//\r
// Being here means the memory range is available. So mark the bits for the memory range\r
//\r
- for (Index = BaseOffsetPageNumber; Index < TopOffsetPageNumber; Index ++) {\r
+ for (Index = BaseOffsetPageNumber; Index < TopOffsetPageNumber; Index++) {\r
mMmCodeMemoryRangeUsageBitMap[Index / 64] |= LShiftU64 (1, (Index % 64));\r
}\r
- return EFI_SUCCESS;\r
+\r
+ return EFI_SUCCESS;\r
}\r
\r
/**\r
\r
**/\r
EFI_STATUS\r
-GetPeCoffImageFixLoadingAssignedAddress(\r
+GetPeCoffImageFixLoadingAssignedAddress (\r
IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext\r
)\r
{\r
- UINTN SectionHeaderOffset;\r
- EFI_STATUS Status;\r
- EFI_IMAGE_SECTION_HEADER SectionHeader;\r
- EFI_IMAGE_OPTIONAL_HEADER_UNION *ImgHdr;\r
- EFI_PHYSICAL_ADDRESS FixLoadingAddress;\r
- UINT16 Index;\r
- UINTN Size;\r
- UINT16 NumberOfSections;\r
- UINT64 ValueInSectionHeader;\r
+ UINTN SectionHeaderOffset;\r
+ EFI_STATUS Status;\r
+ EFI_IMAGE_SECTION_HEADER SectionHeader;\r
+ EFI_IMAGE_OPTIONAL_HEADER_UNION *ImgHdr;\r
+ EFI_PHYSICAL_ADDRESS FixLoadingAddress;\r
+ UINT16 Index;\r
+ UINTN Size;\r
+ UINT16 NumberOfSections;\r
+ UINT64 ValueInSectionHeader;\r
\r
FixLoadingAddress = 0;\r
- Status = EFI_NOT_FOUND;\r
+ Status = EFI_NOT_FOUND;\r
\r
//\r
// Get PeHeader pointer\r
//\r
- ImgHdr = (EFI_IMAGE_OPTIONAL_HEADER_UNION *)((CHAR8* )ImageContext->Handle + ImageContext->PeCoffHeaderOffset);\r
+ ImgHdr = (EFI_IMAGE_OPTIONAL_HEADER_UNION *)((CHAR8 *)ImageContext->Handle + ImageContext->PeCoffHeaderOffset);\r
SectionHeaderOffset = ImageContext->PeCoffHeaderOffset + sizeof (UINT32) + sizeof (EFI_IMAGE_FILE_HEADER) +\r
- ImgHdr->Pe32.FileHeader.SizeOfOptionalHeader;\r
+ ImgHdr->Pe32.FileHeader.SizeOfOptionalHeader;\r
NumberOfSections = ImgHdr->Pe32.FileHeader.NumberOfSections;\r
\r
//\r
//\r
// Read section header from file\r
//\r
- Size = sizeof (EFI_IMAGE_SECTION_HEADER);\r
+ Size = sizeof (EFI_IMAGE_SECTION_HEADER);\r
Status = ImageContext->ImageRead (\r
ImageContext->Handle,\r
SectionHeaderOffset,\r
// assigned by tools, the PointerToRelocations & PointerToLineNumbers fields should not be\r
// Zero, or else, these 2 fields should be set to Zero\r
//\r
- ValueInSectionHeader = ReadUnaligned64 ((UINT64*)&SectionHeader.PointerToRelocations);\r
+ ValueInSectionHeader = ReadUnaligned64 ((UINT64 *)&SectionHeader.PointerToRelocations);\r
if (ValueInSectionHeader != 0) {\r
//\r
// Found first section header that doesn't point to code section in which build tool saves the\r
// Check if the memory range is available.\r
//\r
Status = CheckAndMarkFixLoadingMemoryUsageBitMap (FixLoadingAddress, (UINTN)(ImageContext->ImageSize + ImageContext->SectionAlignment));\r
- if (!EFI_ERROR(Status)) {\r
+ if (!EFI_ERROR (Status)) {\r
//\r
// The assigned address is valid. Return the specified loading address\r
//\r
ImageContext->ImageAddress = FixLoadingAddress;\r
}\r
}\r
+\r
break;\r
}\r
+\r
SectionHeaderOffset += sizeof (EFI_IMAGE_SECTION_HEADER);\r
}\r
- DEBUG ((DEBUG_INFO|DEBUG_LOAD, "LOADING MODULE FIXED INFO: Loading module at fixed address %x, Status = %r\n",\r
- FixLoadingAddress, Status));\r
+\r
+ DEBUG ((\r
+ DEBUG_INFO|DEBUG_LOAD,\r
+ "LOADING MODULE FIXED INFO: Loading module at fixed address %x, Status = %r\n",\r
+ FixLoadingAddress,\r
+ Status\r
+ ));\r
return Status;\r
}\r
+\r
/**\r
Loads an EFI image into SMRAM.\r
\r
IN OUT EFI_MM_DRIVER_ENTRY *DriverEntry\r
)\r
{\r
- UINTN PageCount;\r
- EFI_STATUS Status;\r
- EFI_PHYSICAL_ADDRESS DstBuffer;\r
- PE_COFF_LOADER_IMAGE_CONTEXT ImageContext;\r
+ UINTN PageCount;\r
+ EFI_STATUS Status;\r
+ EFI_PHYSICAL_ADDRESS DstBuffer;\r
+ PE_COFF_LOADER_IMAGE_CONTEXT ImageContext;\r
\r
DEBUG ((DEBUG_INFO, "MmLoadImage - %g\n", &DriverEntry->FileName));\r
\r
- Status = EFI_SUCCESS;\r
+ Status = EFI_SUCCESS;\r
\r
//\r
// Initialize ImageContext\r
//\r
- ImageContext.Handle = DriverEntry->Pe32Data;\r
+ ImageContext.Handle = DriverEntry->Pe32Data;\r
ImageContext.ImageRead = PeCoffLoaderImageReadFromMemory;\r
\r
//\r
//\r
// Flush the instruction cache so the image data are written before we execute it\r
//\r
- InvalidateInstructionCacheRange ((VOID *)(UINTN) ImageContext.ImageAddress, (UINTN) ImageContext.ImageSize);\r
+ InvalidateInstructionCacheRange ((VOID *)(UINTN)ImageContext.ImageAddress, (UINTN)ImageContext.ImageSize);\r
\r
//\r
// Save Image EntryPoint in DriverEntry\r
//\r
- DriverEntry->ImageEntryPoint = ImageContext.EntryPoint;\r
- DriverEntry->ImageBuffer = DstBuffer;\r
- DriverEntry->NumberOfPage = PageCount;\r
+ DriverEntry->ImageEntryPoint = ImageContext.EntryPoint;\r
+ DriverEntry->ImageBuffer = DstBuffer;\r
+ DriverEntry->NumberOfPage = PageCount;\r
\r
if (mEfiSystemTable != NULL) {\r
Status = mEfiSystemTable->BootServices->AllocatePool (\r
// Fill in the remaining fields of the Loaded Image Protocol instance.\r
// Note: ImageBase is an SMRAM address that can not be accessed outside of SMRAM if SMRAM window is closed.\r
//\r
- DriverEntry->LoadedImage->Revision = EFI_LOADED_IMAGE_PROTOCOL_REVISION;\r
- DriverEntry->LoadedImage->ParentHandle = NULL;\r
- DriverEntry->LoadedImage->SystemTable = mEfiSystemTable;\r
- DriverEntry->LoadedImage->DeviceHandle = NULL;\r
- DriverEntry->LoadedImage->FilePath = NULL;\r
+ DriverEntry->LoadedImage->Revision = EFI_LOADED_IMAGE_PROTOCOL_REVISION;\r
+ DriverEntry->LoadedImage->ParentHandle = NULL;\r
+ DriverEntry->LoadedImage->SystemTable = mEfiSystemTable;\r
+ DriverEntry->LoadedImage->DeviceHandle = NULL;\r
+ DriverEntry->LoadedImage->FilePath = NULL;\r
\r
DriverEntry->LoadedImage->ImageBase = (VOID *)(UINTN)DriverEntry->ImageBuffer;\r
DriverEntry->LoadedImage->ImageSize = ImageContext.ImageSize;\r
// Create a new image handle in the UEFI handle database for the MM Driver\r
//\r
DriverEntry->ImageHandle = NULL;\r
- Status = mEfiSystemTable->BootServices->InstallMultipleProtocolInterfaces (\r
- &DriverEntry->ImageHandle,\r
- &gEfiLoadedImageProtocolGuid,\r
- DriverEntry->LoadedImage,\r
- NULL\r
- );\r
+ Status = mEfiSystemTable->BootServices->InstallMultipleProtocolInterfaces (\r
+ &DriverEntry->ImageHandle,\r
+ &gEfiLoadedImageProtocolGuid,\r
+ DriverEntry->LoadedImage,\r
+ NULL\r
+ );\r
}\r
\r
//\r
//\r
DEBUG_CODE_BEGIN ();\r
\r
- UINTN Index;\r
- UINTN StartIndex;\r
- CHAR8 EfiFileName[256];\r
+ UINTN Index;\r
+ UINTN StartIndex;\r
+ CHAR8 EfiFileName[256];\r
\r
- DEBUG ((DEBUG_INFO | DEBUG_LOAD,\r
- "Loading MM driver at 0x%11p EntryPoint=0x%11p ",\r
- (VOID *)(UINTN) ImageContext.ImageAddress,\r
- FUNCTION_ENTRY_POINT (ImageContext.EntryPoint)));\r
+ DEBUG ((\r
+ DEBUG_INFO | DEBUG_LOAD,\r
+ "Loading MM driver at 0x%11p EntryPoint=0x%11p ",\r
+ (VOID *)(UINTN)ImageContext.ImageAddress,\r
+ FUNCTION_ENTRY_POINT (ImageContext.EntryPoint)\r
+ ));\r
\r
//\r
// Print Module Name by Pdb file path.\r
if (EfiFileName[Index] == 0) {\r
EfiFileName[Index] = '.';\r
}\r
+\r
if (EfiFileName[Index] == '.') {\r
EfiFileName[Index + 1] = 'e';\r
EfiFileName[Index + 2] = 'f';\r
if (Index == sizeof (EfiFileName) - 4) {\r
EfiFileName[Index] = 0;\r
}\r
+\r
DEBUG ((DEBUG_INFO | DEBUG_LOAD, "%a", EfiFileName));\r
}\r
+\r
DEBUG ((DEBUG_INFO | DEBUG_LOAD, "\n"));\r
\r
DEBUG_CODE_END ();\r
{\r
UINT8 *Iterator;\r
\r
- Iterator = DriverEntry->Depex;\r
+ Iterator = DriverEntry->Depex;\r
DriverEntry->Dependent = TRUE;\r
\r
if (*Iterator == EFI_DEP_BEFORE) {\r
IN EFI_MM_DRIVER_ENTRY *DriverEntry\r
)\r
{\r
- EFI_STATUS Status;\r
+ EFI_STATUS Status;\r
\r
//\r
// Data already read\r
} else {\r
Status = EFI_SUCCESS;\r
}\r
+\r
if (EFI_ERROR (Status)) {\r
if (Status == EFI_PROTOCOL_ERROR) {\r
//\r
//\r
// If no Depex assume depend on all architectural protocols\r
//\r
- DriverEntry->Depex = NULL;\r
- DriverEntry->Dependent = TRUE;\r
+ DriverEntry->Depex = NULL;\r
+ DriverEntry->Dependent = TRUE;\r
DriverEntry->DepexProtocolError = FALSE;\r
}\r
} else {\r
VOID\r
)\r
{\r
- EFI_STATUS Status;\r
- LIST_ENTRY *Link;\r
+ EFI_STATUS Status;\r
+ LIST_ENTRY *Link;\r
EFI_MM_DRIVER_ENTRY *DriverEntry;\r
- BOOLEAN ReadyToRun;\r
+ BOOLEAN ReadyToRun;\r
\r
DEBUG ((DEBUG_INFO, "MmDispatcher\n"));\r
\r
// The MM Driver could not be loaded, and do not attempt to load or start it again.\r
// Take driver from Scheduled to Initialized.\r
//\r
- DriverEntry->Initialized = TRUE;\r
- DriverEntry->Scheduled = FALSE;\r
+ DriverEntry->Initialized = TRUE;\r
+ DriverEntry->Scheduled = FALSE;\r
RemoveEntryList (&DriverEntry->ScheduledLink);\r
\r
//\r
}\r
}\r
\r
- DriverEntry->Scheduled = FALSE;\r
- DriverEntry->Initialized = TRUE;\r
+ DriverEntry->Scheduled = FALSE;\r
+ DriverEntry->Initialized = TRUE;\r
RemoveEntryList (&DriverEntry->ScheduledLink);\r
\r
//\r
//\r
if (mEfiSystemTable == NULL) {\r
DEBUG ((DEBUG_INFO, "StartImage - 0x%x (Standalone Mode)\n", DriverEntry->ImageEntryPoint));\r
- Status = ((MM_IMAGE_ENTRY_POINT)(UINTN)DriverEntry->ImageEntryPoint) (DriverEntry->ImageHandle, &gMmCoreMmst);\r
+ Status = ((MM_IMAGE_ENTRY_POINT)(UINTN)DriverEntry->ImageEntryPoint)(DriverEntry->ImageHandle, &gMmCoreMmst);\r
} else {\r
DEBUG ((DEBUG_INFO, "StartImage - 0x%x (Tradition Mode)\n", DriverEntry->ImageEntryPoint));\r
- Status = ((EFI_IMAGE_ENTRY_POINT)(UINTN)DriverEntry->ImageEntryPoint) (\r
- DriverEntry->ImageHandle,\r
- mEfiSystemTable\r
- );\r
+ Status = ((EFI_IMAGE_ENTRY_POINT)(UINTN)DriverEntry->ImageEntryPoint)(\r
+ DriverEntry->ImageHandle,\r
+ mEfiSystemTable\r
+ );\r
}\r
- if (EFI_ERROR(Status)) {\r
+\r
+ if (EFI_ERROR (Status)) {\r
DEBUG ((DEBUG_INFO, "StartImage Status - %r\n", Status));\r
- MmFreePages(DriverEntry->ImageBuffer, DriverEntry->NumberOfPage);\r
+ MmFreePages (DriverEntry->ImageBuffer, DriverEntry->NumberOfPage);\r
}\r
}\r
\r
**/\r
VOID\r
MmInsertOnScheduledQueueWhileProcessingBeforeAndAfter (\r
- IN EFI_MM_DRIVER_ENTRY *InsertedDriverEntry\r
+ IN EFI_MM_DRIVER_ENTRY *InsertedDriverEntry\r
)\r
{\r
- LIST_ENTRY *Link;\r
- EFI_MM_DRIVER_ENTRY *DriverEntry;\r
+ LIST_ENTRY *Link;\r
+ EFI_MM_DRIVER_ENTRY *DriverEntry;\r
\r
//\r
// Process Before Dependency\r
//\r
for (Link = mDiscoveredList.ForwardLink; Link != &mDiscoveredList; Link = Link->ForwardLink) {\r
- DriverEntry = CR(Link, EFI_MM_DRIVER_ENTRY, Link, EFI_MM_DRIVER_ENTRY_SIGNATURE);\r
- if (DriverEntry->Before && DriverEntry->Dependent && DriverEntry != InsertedDriverEntry) {\r
+ DriverEntry = CR (Link, EFI_MM_DRIVER_ENTRY, Link, EFI_MM_DRIVER_ENTRY_SIGNATURE);\r
+ if (DriverEntry->Before && DriverEntry->Dependent && (DriverEntry != InsertedDriverEntry)) {\r
DEBUG ((DEBUG_DISPATCH, "Evaluate MM DEPEX for FFS(%g)\n", &DriverEntry->FileName));\r
DEBUG ((DEBUG_DISPATCH, " BEFORE FFS(%g) = ", &DriverEntry->BeforeAfterGuid));\r
if (CompareGuid (&InsertedDriverEntry->FileName, &DriverEntry->BeforeAfterGuid)) {\r
InsertedDriverEntry->Scheduled = TRUE;\r
InsertTailList (&mScheduledQueue, &InsertedDriverEntry->ScheduledLink);\r
\r
-\r
//\r
// Process After Dependency\r
//\r
for (Link = mDiscoveredList.ForwardLink; Link != &mDiscoveredList; Link = Link->ForwardLink) {\r
- DriverEntry = CR(Link, EFI_MM_DRIVER_ENTRY, Link, EFI_MM_DRIVER_ENTRY_SIGNATURE);\r
- if (DriverEntry->After && DriverEntry->Dependent && DriverEntry != InsertedDriverEntry) {\r
+ DriverEntry = CR (Link, EFI_MM_DRIVER_ENTRY, Link, EFI_MM_DRIVER_ENTRY_SIGNATURE);\r
+ if (DriverEntry->After && DriverEntry->Dependent && (DriverEntry != InsertedDriverEntry)) {\r
DEBUG ((DEBUG_DISPATCH, "Evaluate MM DEPEX for FFS(%g)\n", &DriverEntry->FileName));\r
DEBUG ((DEBUG_DISPATCH, " AFTER FFS(%g) = ", &DriverEntry->BeforeAfterGuid));\r
if (CompareGuid (&InsertedDriverEntry->FileName, &DriverEntry->BeforeAfterGuid)) {\r
**/\r
BOOLEAN\r
FvHasBeenProcessed (\r
- IN EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader\r
+ IN EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader\r
)\r
{\r
- LIST_ENTRY *Link;\r
- KNOWN_FWVOL *KnownFwVol;\r
+ LIST_ENTRY *Link;\r
+ KNOWN_FWVOL *KnownFwVol;\r
\r
for (Link = mFwVolList.ForwardLink;\r
Link != &mFwVolList;\r
- Link = Link->ForwardLink) {\r
+ Link = Link->ForwardLink)\r
+ {\r
KnownFwVol = CR (Link, KNOWN_FWVOL, Link, KNOWN_FWVOL_SIGNATURE);\r
if (KnownFwVol->FwVolHeader == FwVolHeader) {\r
return TRUE;\r
}\r
}\r
+\r
return FALSE;\r
}\r
\r
**/\r
VOID\r
FvIsBeingProcessed (\r
- IN EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader\r
+ IN EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader\r
)\r
{\r
- KNOWN_FWVOL *KnownFwVol;\r
+ KNOWN_FWVOL *KnownFwVol;\r
\r
DEBUG ((DEBUG_INFO, "FvIsBeingProcessed - 0x%08x\n", FwVolHeader));\r
\r
KnownFwVol = AllocatePool (sizeof (KNOWN_FWVOL));\r
ASSERT (KnownFwVol != NULL);\r
\r
- KnownFwVol->Signature = KNOWN_FWVOL_SIGNATURE;\r
+ KnownFwVol->Signature = KNOWN_FWVOL_SIGNATURE;\r
KnownFwVol->FwVolHeader = FwVolHeader;\r
InsertTailList (&mFwVolList, &KnownFwVol->Link);\r
}\r
**/\r
EFI_STATUS\r
MmAddToDriverList (\r
- IN EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader,\r
- IN VOID *Pe32Data,\r
- IN UINTN Pe32DataSize,\r
- IN VOID *Depex,\r
- IN UINTN DepexSize,\r
- IN EFI_GUID *DriverName\r
+ IN EFI_FIRMWARE_VOLUME_HEADER *FwVolHeader,\r
+ IN VOID *Pe32Data,\r
+ IN UINTN Pe32DataSize,\r
+ IN VOID *Depex,\r
+ IN UINTN DepexSize,\r
+ IN EFI_GUID *DriverName\r
)\r
{\r
EFI_MM_DRIVER_ENTRY *DriverEntry;\r
DriverEntry = AllocateZeroPool (sizeof (EFI_MM_DRIVER_ENTRY));\r
ASSERT (DriverEntry != NULL);\r
\r
- DriverEntry->Signature = EFI_MM_DRIVER_ENTRY_SIGNATURE;\r
+ DriverEntry->Signature = EFI_MM_DRIVER_ENTRY_SIGNATURE;\r
CopyGuid (&DriverEntry->FileName, DriverName);\r
- DriverEntry->FwVolHeader = FwVolHeader;\r
- DriverEntry->Pe32Data = Pe32Data;\r
- DriverEntry->Pe32DataSize = Pe32DataSize;\r
- DriverEntry->Depex = Depex;\r
- DriverEntry->DepexSize = DepexSize;\r
+ DriverEntry->FwVolHeader = FwVolHeader;\r
+ DriverEntry->Pe32Data = Pe32Data;\r
+ DriverEntry->Pe32DataSize = Pe32DataSize;\r
+ DriverEntry->Depex = Depex;\r
+ DriverEntry->DepexSize = DepexSize;\r
\r
MmGetDepexSectionAndPreProccess (DriverEntry);\r
\r
VOID\r
)\r
{\r
- LIST_ENTRY *Link;\r
- EFI_MM_DRIVER_ENTRY *DriverEntry;\r
+ LIST_ENTRY *Link;\r
+ EFI_MM_DRIVER_ENTRY *DriverEntry;\r
\r
- for (Link = mDiscoveredList.ForwardLink;Link !=&mDiscoveredList; Link = Link->ForwardLink) {\r
+ for (Link = mDiscoveredList.ForwardLink; Link != &mDiscoveredList; Link = Link->ForwardLink) {\r
DriverEntry = CR (Link, EFI_MM_DRIVER_ENTRY, Link, EFI_MM_DRIVER_ENTRY_SIGNATURE);\r
if (DriverEntry->Dependent) {\r
DEBUG ((DEBUG_LOAD, "MM Driver %g was discovered but not loaded!!\n", &DriverEntry->FileName));\r