55 Status =
gBS->LocateProtocol (&gEfiCallerIdGuid,
NULL, &Interface);
56 if (!EFI_ERROR (Status)) {
57 DEBUG ((DEBUG_INFO,
"FspNotifyDxe - 2nd entry\n"));
61 DEBUG ((DEBUG_INFO,
"FspNotifyDxe - 1st entry\n"));
66 NewImageHandle =
NULL;
67 Status =
gBS->InstallProtocolInterface (
86 ImageContext.
Handle = Buffer;
99 FfsBuffer = 0xFFFFFFFF;
100 Status =
gBS->AllocatePages (
128 gBS->FreePool (Buffer);
137 if (EFI_ERROR (Status)) {
138 DEBUG ((DEBUG_ERROR,
"Error: Image at 0x%08x start failed: %r\n", ImageContext.
ImageAddress, Status));
139 gBS->FreePages (FfsBuffer, Pages);
145 return EFI_ALREADY_STARTED;
VOID *EFIAPI InvalidateInstructionCacheRange(IN VOID *Address, IN UINTN Length)
EFI_STATUS EFIAPI GetSectionFromAnyFv(IN CONST EFI_GUID *NameGuid, IN EFI_SECTION_TYPE SectionType, IN UINTN SectionInstance, OUT VOID **Buffer, OUT UINTN *Size)
EFI_STATUS RelocateImageUnder4GIfNeeded(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
#define ASSERT_EFI_ERROR(StatusParameter)
#define DEBUG(Expression)
RETURN_STATUS EFIAPI PeCoffLoaderLoadImage(IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext)
RETURN_STATUS EFIAPI PeCoffLoaderRelocateImage(IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext)
RETURN_STATUS EFIAPI PeCoffLoaderGetImageInfo(IN OUT PE_COFF_LOADER_IMAGE_CONTEXT *ImageContext)
RETURN_STATUS EFIAPI PeCoffLoaderImageReadFromMemory(IN VOID *FileHandle, IN UINTN FileOffset, IN OUT UINTN *ReadSize, OUT VOID *Buffer)
UINT64 EFI_PHYSICAL_ADDRESS
#define EFI_SIZE_TO_PAGES(Size)
EFI_STATUS(EFIAPI * EFI_IMAGE_ENTRY_POINT)(IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable)
PE_COFF_LOADER_READ_FILE ImageRead
PHYSICAL_ADDRESS EntryPoint
PHYSICAL_ADDRESS ImageAddress