TianoCore EDK2 master
|
#include "UefiPayloadEntry.h"
Go to the source code of this file.
Macros | |
#define | MEMORY_ATTRIBUTE_MASK |
#define | TESTED_MEMORY_ATTRIBUTES |
Functions | |
VOID | PrintHob (IN CONST VOID *HobStart) |
EFI_STATUS | FixUpPcdDatabase (IN EFI_FIRMWARE_VOLUME_HEADER *DxeFv) |
VOID | AddNewHob (IN EFI_PEI_HOB_POINTERS *Hob) |
EFI_HOB_RESOURCE_DESCRIPTOR * | FindResourceDescriptorByRange (IN VOID *HobList, IN EFI_PHYSICAL_ADDRESS Base, IN EFI_PHYSICAL_ADDRESS Top) |
EFI_HOB_RESOURCE_DESCRIPTOR * | FindAnotherHighestBelow4GResourceDescriptor (IN VOID *HobList, IN UINTN MinimalNeededSize, IN EFI_HOB_RESOURCE_DESCRIPTOR *ExceptResourceHob) |
BOOLEAN | IsHobNeed (EFI_PEI_HOB_POINTERS Hob) |
EFI_STATUS | BuildHobs (IN UINTN BootloaderParameter, OUT EFI_FIRMWARE_VOLUME_HEADER **DxeFv) |
EFI_STATUS EFIAPI | _ModuleEntryPoint (IN UINTN BootloaderParameter) |
Variables | |
VOID * | mHobList |
Copyright (c) 2021, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file UniversalPayloadEntry.c.
#define MEMORY_ATTRIBUTE_MASK |
Definition at line 10 of file UniversalPayloadEntry.c.
#define TESTED_MEMORY_ATTRIBUTES |
Definition at line 22 of file UniversalPayloadEntry.c.
EFI_STATUS EFIAPI _ModuleEntryPoint | ( | IN UINTN | BootloaderParameter | ) |
Entry point to the C language phase of UEFI payload.
[in] | BootloaderParameter | The starting address of bootloader parameter block. |
It | will not return if SUCCESS, and return error when passing bootloader parameter. |
Definition at line 454 of file UniversalPayloadEntry.c.
VOID AddNewHob | ( | IN EFI_PEI_HOB_POINTERS * | Hob | ) |
Add HOB into HOB list
[in] | Hob | The HOB to be added into the HOB list. |
Definition at line 103 of file UniversalPayloadEntry.c.
EFI_STATUS BuildHobs | ( | IN UINTN | BootloaderParameter, |
OUT EFI_FIRMWARE_VOLUME_HEADER ** | DxeFv | ||
) |
It will build HOBs based on information from bootloaders.
[in] | BootloaderParameter | The starting memory address of bootloader parameter block. |
[out] | DxeFv | The pointer to the DXE FV in memory. |
EFI_SUCCESS | If it completed successfully. |
Others | If it failed to build required HOBs. |
Definition at line 296 of file UniversalPayloadEntry.c.
EFI_HOB_RESOURCE_DESCRIPTOR * FindAnotherHighestBelow4GResourceDescriptor | ( | IN VOID * | HobList, |
IN UINTN | MinimalNeededSize, | ||
IN EFI_HOB_RESOURCE_DESCRIPTOR * | ExceptResourceHob | ||
) |
Find the highest below 4G memory resource descriptor, except the input Resource Descriptor.
[in] | HobList | Hob start address |
[in] | MinimalNeededSize | Minimal needed size. |
[in] | ExceptResourceHob | Ignore this Resource Descriptor. |
The | pointer to the Resource Descriptor HOB. |
Definition at line 188 of file UniversalPayloadEntry.c.
EFI_HOB_RESOURCE_DESCRIPTOR * FindResourceDescriptorByRange | ( | IN VOID * | HobList, |
IN EFI_PHYSICAL_ADDRESS | Base, | ||
IN EFI_PHYSICAL_ADDRESS | Top | ||
) |
Found the Resource Descriptor HOB that contains a range (Base, Top)
[in] | HobList | Hob start address |
[in] | Base | Memory start address |
[in] | Top | Memory end address. |
The | pointer to the Resource Descriptor HOB. |
Definition at line 132 of file UniversalPayloadEntry.c.
EFI_STATUS FixUpPcdDatabase | ( | IN EFI_FIRMWARE_VOLUME_HEADER * | DxeFv | ) |
Some bootloader may pass a pcd database, and UPL also contain a PCD database. Dxe PCD driver has the assumption that the two PCD database can be catenated and the local token number should be successive. This function will fix up the UPL PCD database to meet that assumption.
[in] | DxeFv | The FV where to find the Universal PCD database. |
EFI_SUCCESS | If it completed successfully. |
other | Failed to fix up. |
Definition at line 50 of file UniversalPayloadEntry.c.
BOOLEAN IsHobNeed | ( | EFI_PEI_HOB_POINTERS | Hob | ) |
Check the HOB and decide if it is need inside Payload
Payload maintainer may make decision which HOB is need or needn't Then add the check logic in the function.
[in] | Hob | The HOB to check |
TRUE | If HOB is need inside Payload |
FALSE | If HOB is needn't inside Payload |
Definition at line 268 of file UniversalPayloadEntry.c.
Print all HOBs info from the HOB list.
Print all HOBs info from the HOB list.
[in] | HobStart | A pointer to the HOB list |
Definition at line 362 of file PrintHob.c.