TianoCore EDK2 master
|
#include "VarCheckHiiGen.h"
Go to the source code of this file.
Data Structures | |
struct | VAR_CHECK_VFR_DRIVER_INFO |
Macros | |
#define | EFI_VFR_ATTRACT_GUID { 0xd0bc7cb4, 0x6a47, 0x495f, { 0xaa, 0x11, 0x71, 0x7, 0x46, 0xda, 0x6, 0xa2 } } |
#define | ALL_FF_GUID { 0xFFFFFFFF, 0xFFFF, 0xFFFF, { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } } |
#define | VAR_CHECK_VFR_DRIVER_INFO_SIGNATURE SIGNATURE_32 ('V', 'D', 'R', 'I') |
#define | VAR_CHECK_VFR_DRIVER_INFO_FROM_LINK(a) CR (a, VAR_CHECK_VFR_DRIVER_INFO, Link, VAR_CHECK_VFR_DRIVER_INFO_SIGNATURE) |
#define | MAX_MATCH_GUID_NUM 100 |
Functions | |
EFI_STATUS | GetAddressByGuid (IN VOID *Ffs, IN EFI_GUID *Guid, IN UINTN Length, OUT UINTN **Offset, OUT UINT8 *NumOfMatchingGuid) |
EFI_STATUS | SearchVfrBinInFfs (IN VOID *Ffs, IN VOID *EfiAddr, IN UINTN Length, OUT UINTN **Offset, OUT UINT8 *NumOfMatchingOffset) |
BOOLEAN | ParseFfs (IN EFI_FIRMWARE_VOLUME2_PROTOCOL *Fv2, IN EFI_GUID *DriverGuid) |
VOID | ParseFv (IN BOOLEAN ScanAll) |
VOID | CreateVfrDriverList (IN EFI_GUID *DriverGuidArray) |
VOID | DestroyVfrDriverList (VOID) |
VOID | VarCheckHiiGenFromFv (VOID) |
Variables | |
EFI_GUID | gVfrArrayAttractGuid = EFI_VFR_ATTRACT_GUID |
EFI_GUID | mAllFfGuid = ALL_FF_GUID |
LIST_ENTRY | mVfrDriverList = INITIALIZE_LIST_HEAD_VARIABLE (mVfrDriverList) |
Var Check Hii generation from FV.
Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file VarCheckHiiGenFromFv.c.
#define ALL_FF_GUID { 0xFFFFFFFF, 0xFFFF, 0xFFFF, { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } } |
Definition at line 17 of file VarCheckHiiGenFromFv.c.
#define EFI_VFR_ATTRACT_GUID { 0xd0bc7cb4, 0x6a47, 0x495f, { 0xaa, 0x11, 0x71, 0x7, 0x46, 0xda, 0x6, 0xa2 } } |
Definition at line 12 of file VarCheckHiiGenFromFv.c.
#define MAX_MATCH_GUID_NUM 100 |
Definition at line 34 of file VarCheckHiiGenFromFv.c.
#define VAR_CHECK_VFR_DRIVER_INFO_FROM_LINK | ( | a | ) | CR (a, VAR_CHECK_VFR_DRIVER_INFO, Link, VAR_CHECK_VFR_DRIVER_INFO_SIGNATURE) |
Definition at line 32 of file VarCheckHiiGenFromFv.c.
#define VAR_CHECK_VFR_DRIVER_INFO_SIGNATURE SIGNATURE_32 ('V', 'D', 'R', 'I') |
Definition at line 22 of file VarCheckHiiGenFromFv.c.
Create Vfr Driver List.
[in] | DriverGuidArray | Driver Guid Array |
Definition at line 365 of file VarCheckHiiGenFromFv.c.
VOID DestroyVfrDriverList | ( | VOID | ) |
Destroy Vfr Driver List.
Definition at line 387 of file VarCheckHiiGenFromFv.c.
EFI_STATUS GetAddressByGuid | ( | IN VOID * | Ffs, |
IN EFI_GUID * | Guid, | ||
IN UINTN | Length, | ||
OUT UINTN ** | Offset, | ||
OUT UINT8 * | NumOfMatchingGuid | ||
) |
Get the address by Guid.
Parse the FFS and find the GUID address. There may be multiple Guids matching the searched Guid.
Ffs | Pointer to the FFS. |
Guid | Guid to find. |
Length | The length of FFS. |
Offset | Pointer to pointer to the offset. |
NumOfMatchingGuid | The number of matching Guid. |
EFI_SUCCESS | One or multiple Guids matching the searched Guid. |
EFI_NOT_FOUND | No Guid matching the searched Guid. |
Definition at line 53 of file VarCheckHiiGenFromFv.c.
BOOLEAN ParseFfs | ( | IN EFI_FIRMWARE_VOLUME2_PROTOCOL * | Fv2, |
IN EFI_GUID * | DriverGuid | ||
) |
Parse FFS.
[in] | Fv2 | Pointer to Fv2 protocol. |
[in] | DriverGuid | Pointer to driver GUID. |
Definition at line 164 of file VarCheckHiiGenFromFv.c.
VOID ParseFv | ( | IN BOOLEAN | ScanAll | ) |
Parse FVs.
[in] | ScanAll | Scan all modules in all FVs or not. |
Definition at line 249 of file VarCheckHiiGenFromFv.c.
EFI_STATUS SearchVfrBinInFfs | ( | IN VOID * | Ffs, |
IN VOID * | EfiAddr, | ||
IN UINTN | Length, | ||
OUT UINTN ** | Offset, | ||
OUT UINT8 * | NumOfMatchingOffset | ||
) |
Search the VfrBin Base address.
According to the known GUID gVfrArrayAttractGuid to get the base address from FFS.
Ffs | Pointer to the FFS. |
EfiAddr | Pointer to the EFI in FFS |
Length | The length of FFS. |
Offset | Pointer to pointer to the Addr (Offset). |
NumOfMatchingOffset | The number of Addr (Offset). |
EFI_SUCCESS | Get the address successfully. |
EFI_NOT_FOUND | No VfrBin found. |
Definition at line 113 of file VarCheckHiiGenFromFv.c.
VOID VarCheckHiiGenFromFv | ( | VOID | ) |
Generate from FV.
Definition at line 407 of file VarCheckHiiGenFromFv.c.
EFI_GUID gVfrArrayAttractGuid = EFI_VFR_ATTRACT_GUID |
Definition at line 15 of file VarCheckHiiGenFromFv.c.
EFI_GUID mAllFfGuid = ALL_FF_GUID |
Definition at line 20 of file VarCheckHiiGenFromFv.c.
LIST_ENTRY mVfrDriverList = INITIALIZE_LIST_HEAD_VARIABLE (mVfrDriverList) |
Definition at line 30 of file VarCheckHiiGenFromFv.c.