MdeModulePkg: Add HobPrintLib header file
Interface PrintHobList() is added to dump all HOBs info in the HobList. Caller could specify a custom HOB print handler to replace the default print handler when calling the interface. Cc: Ray Ni <ray.ni@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Signed-off-by: Wei6 Xu <wei6.xu@intel.com>
This commit is contained in:
46
MdeModulePkg/Include/Library/HobPrintLib.h
Normal file
46
MdeModulePkg/Include/Library/HobPrintLib.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/** @file
|
||||
The library to print all the HOBs.
|
||||
|
||||
Copyright (c) 2024, Intel Corporation. All rights reserved.<BR>
|
||||
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
|
||||
**/
|
||||
|
||||
#ifndef HOB_PRINT_LIB_H_
|
||||
#define HOB_PRINT_LIB_H_
|
||||
|
||||
/**
|
||||
HOB Print Handler to print HOB information.
|
||||
|
||||
@param[in] HobStart A pointer to the HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
|
||||
@param[in] HobLength The length in bytes of the HOB of type EFI_HOB_TYPE_GUID_EXTENSION.
|
||||
|
||||
@retval EFI_SUCCESS If it completed successfully.
|
||||
@retval EFI_UNSUPPORTED If the HOB type is not supported.
|
||||
|
||||
**/
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(*HOB_PRINT_HANDLER)(
|
||||
IN VOID *Hob,
|
||||
IN UINT16 HobLength
|
||||
);
|
||||
|
||||
/**
|
||||
Print all HOBs info from the HOB list.
|
||||
If the input PrintHandler is not NULL, the PrintHandler will be processed first.
|
||||
If PrintHandler returns EFI_SUCCESS, default HOB info print logic in PrintHobList
|
||||
will be skipped.
|
||||
|
||||
@param[in] HobStart A pointer to the HOB list.
|
||||
@param[in] PrintHandler A custom handler to print HOB info.
|
||||
|
||||
**/
|
||||
VOID
|
||||
EFIAPI
|
||||
PrintHobList (
|
||||
IN CONST VOID *HobStart,
|
||||
IN HOB_PRINT_HANDLER PrintHandler OPTIONAL
|
||||
);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user