EFIAPI\r
\r
SecWinNtPeiLoadFile (\r
- IN VOID *Pe32Data,\r
- IN EFI_PHYSICAL_ADDRESS *ImageAddress,\r
- IN UINT64 *ImageSize,\r
- IN EFI_PHYSICAL_ADDRESS *EntryPoint\r
+ IN VOID *Pe32Data,\r
+ IN EFI_PHYSICAL_ADDRESS *ImageAddress,\r
+ IN UINT64 *ImageSize,\r
+ IN EFI_PHYSICAL_ADDRESS *EntryPoint\r
);\r
\r
STATIC\r
-VOID*\r
+VOID *\r
EFIAPI\r
AllocateCodePages (\r
- IN UINTN Pages\r
+ IN UINTN Pages\r
)\r
{\r
- VOID *Alloc;\r
- EFI_PEI_HOB_POINTERS Hob;\r
+ VOID *Alloc;\r
+ EFI_PEI_HOB_POINTERS Hob;\r
\r
Alloc = AllocatePages (Pages);\r
if (Alloc == NULL) {\r
Hob.MemoryAllocation->AllocDescriptor.MemoryType = EfiBootServicesCode;\r
return Alloc;\r
}\r
+\r
Hob.Raw = GetNextHob (EFI_HOB_TYPE_MEMORY_ALLOCATION, GET_NEXT_HOB (Hob));\r
}\r
\r
return NULL;\r
}\r
\r
-\r
EFI_STATUS\r
EFIAPI\r
LoadPeCoffImage (\r
- IN VOID *PeCoffImage,\r
- OUT EFI_PHYSICAL_ADDRESS *ImageAddress,\r
- OUT UINT64 *ImageSize,\r
- OUT EFI_PHYSICAL_ADDRESS *EntryPoint\r
+ IN VOID *PeCoffImage,\r
+ OUT EFI_PHYSICAL_ADDRESS *ImageAddress,\r
+ OUT UINT64 *ImageSize,\r
+ OUT EFI_PHYSICAL_ADDRESS *EntryPoint\r
)\r
{\r
RETURN_STATUS Status;\r
PE_COFF_LOADER_IMAGE_CONTEXT ImageContext;\r
- VOID *Buffer;\r
+ VOID *Buffer;\r
\r
ZeroMem (&ImageContext, sizeof (ImageContext));\r
\r
Status = PeCoffLoaderGetImageInfo (&ImageContext);\r
ASSERT_EFI_ERROR (Status);\r
\r
-\r
//\r
// Allocate Memory for the image\r
//\r
- Buffer = AllocateCodePages (EFI_SIZE_TO_PAGES((UINT32)ImageContext.ImageSize));\r
+ Buffer = AllocateCodePages (EFI_SIZE_TO_PAGES ((UINT32)ImageContext.ImageSize));\r
ASSERT (Buffer != 0);\r
\r
-\r
ImageContext.ImageAddress = (EFI_PHYSICAL_ADDRESS)(UINTN)Buffer;\r
\r
//\r
Status = PeCoffLoaderRelocateImage (&ImageContext);\r
ASSERT_EFI_ERROR (Status);\r
\r
-\r
*ImageAddress = ImageContext.ImageAddress;\r
*ImageSize = ImageContext.ImageSize;\r
*EntryPoint = ImageContext.EntryPoint;\r
return Status;\r
}\r
\r
-\r
-\r
typedef\r
VOID\r
-(EFIAPI *DXE_CORE_ENTRY_POINT) (\r
+(EFIAPI *DXE_CORE_ENTRY_POINT)(\r
IN VOID *HobStart\r
);\r
\r
IN UINTN StackSize\r
)\r
{\r
- EFI_STATUS Status;\r
- VOID *PeCoffImage;\r
- EFI_PHYSICAL_ADDRESS ImageAddress;\r
- UINT64 ImageSize;\r
- EFI_PHYSICAL_ADDRESS EntryPoint;\r
- VOID *BaseOfStack;\r
- VOID *TopOfStack;\r
- VOID *Hob;\r
- EFI_FV_FILE_INFO FvFileInfo;\r
+ EFI_STATUS Status;\r
+ VOID *PeCoffImage;\r
+ EFI_PHYSICAL_ADDRESS ImageAddress;\r
+ UINT64 ImageSize;\r
+ EFI_PHYSICAL_ADDRESS EntryPoint;\r
+ VOID *BaseOfStack;\r
+ VOID *TopOfStack;\r
+ VOID *Hob;\r
+ EFI_FV_FILE_INFO FvFileInfo;\r
\r
Status = FfsFindSectionData (EFI_SECTION_PE32, FileHandle, &PeCoffImage);\r
- if (EFI_ERROR (Status)) {\r
+ if (EFI_ERROR (Status)) {\r
return Status;\r
}\r
\r
-\r
Status = LoadPeCoffImage (PeCoffImage, &ImageAddress, &ImageSize, &EntryPoint);\r
-// For NT32 Debug Status = SecWinNtPeiLoadFile (PeCoffImage, &ImageAddress, &ImageSize, &EntryPoint);\r
+ // For NT32 Debug Status = SecWinNtPeiLoadFile (PeCoffImage, &ImageAddress, &ImageSize, &EntryPoint);\r
ASSERT_EFI_ERROR (Status);\r
\r
//\r
Status = FfsGetFileInfo (FileHandle, &FvFileInfo);\r
ASSERT_EFI_ERROR (Status);\r
\r
- BuildModuleHob (&FvFileInfo.FileName, (EFI_PHYSICAL_ADDRESS)(UINTN)ImageAddress, EFI_SIZE_TO_PAGES ((UINT32) ImageSize) * EFI_PAGE_SIZE, EntryPoint);\r
+ BuildModuleHob (&FvFileInfo.FileName, (EFI_PHYSICAL_ADDRESS)(UINTN)ImageAddress, EFI_SIZE_TO_PAGES ((UINT32)ImageSize) * EFI_PAGE_SIZE, EntryPoint);\r
\r
DEBUG ((DEBUG_INFO | DEBUG_LOAD, "Loading DxeCore at 0x%10p EntryPoint=0x%10p\n", (VOID *)(UINTN)ImageAddress, (VOID *)(UINTN)EntryPoint));\r
\r
if (StackSize == 0) {\r
// User the current stack\r
\r
- ((DXE_CORE_ENTRY_POINT)(UINTN)EntryPoint) (Hob);\r
+ ((DXE_CORE_ENTRY_POINT)(UINTN)EntryPoint)(Hob);\r
} else {\r
-\r
//\r
// Allocate 128KB for the Stack\r
//\r
// Compute the top of the stack we were allocated. Pre-allocate a UINTN\r
// for safety.\r
//\r
- TopOfStack = (VOID *) ((UINTN) BaseOfStack + EFI_SIZE_TO_PAGES (StackSize) * EFI_PAGE_SIZE - CPU_STACK_ALIGNMENT);\r
+ TopOfStack = (VOID *)((UINTN)BaseOfStack + EFI_SIZE_TO_PAGES (StackSize) * EFI_PAGE_SIZE - CPU_STACK_ALIGNMENT);\r
TopOfStack = ALIGN_POINTER (TopOfStack, CPU_STACK_ALIGNMENT);\r
\r
//\r
// Update the contents of BSP stack HOB to reflect the real stack info passed to DxeCore.\r
//\r
- UpdateStackHob ((EFI_PHYSICAL_ADDRESS)(UINTN) BaseOfStack, StackSize);\r
+ UpdateStackHob ((EFI_PHYSICAL_ADDRESS)(UINTN)BaseOfStack, StackSize);\r
\r
SwitchStack (\r
(SWITCH_STACK_ENTRY_POINT)(UINTN)EntryPoint,\r
NULL,\r
TopOfStack\r
);\r
-\r
}\r
\r
// Should never get here as DXE Core does not return\r
return EFI_DEVICE_ERROR;\r
}\r
\r
-\r
-\r
EFI_STATUS\r
EFIAPI\r
LoadDxeCoreFromFv (\r
IN UINTN StackSize\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_PEI_FV_HANDLE VolumeHandle;\r
- EFI_PEI_FILE_HANDLE FileHandle = NULL;\r
+ EFI_STATUS Status;\r
+ EFI_PEI_FV_HANDLE VolumeHandle;\r
+ EFI_PEI_FILE_HANDLE FileHandle = NULL;\r
\r
if (FvInstance != NULL) {\r
//\r
return Status;\r
}\r
\r
-\r
EFI_STATUS\r
EFIAPI\r
DecompressFirstFv (\r
VOID\r
)\r
{\r
- EFI_STATUS Status;\r
- EFI_PEI_FV_HANDLE VolumeHandle;\r
- EFI_PEI_FILE_HANDLE FileHandle;\r
+ EFI_STATUS Status;\r
+ EFI_PEI_FV_HANDLE VolumeHandle;\r
+ EFI_PEI_FILE_HANDLE FileHandle;\r
\r
Status = FfsAnyFvFindFirstFile (EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE, &VolumeHandle, &FileHandle);\r
if (!EFI_ERROR (Status)) {\r