XenevaOS
Loading...
Searching...
No Matches
ReportStatusCodeLib.h
Go to the documentation of this file.
1
15#ifndef __REPORT_STATUS_CODE_LIB_H__
16#define __REPORT_STATUS_CODE_LIB_H__
17
18#include <Uefi/UefiBaseType.h>
19#include <Pi/PiStatusCode.h>
20#include <Protocol/DevicePath.h>
21
22//
23// Declare bits for PcdReportStatusCodePropertyMask
24//
25#define REPORT_STATUS_CODE_PROPERTY_PROGRESS_CODE_ENABLED 0x00000001
26#define REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED 0x00000002
27#define REPORT_STATUS_CODE_PROPERTY_DEBUG_CODE_ENABLED 0x00000004
28
53 IN EFI_STATUS_CODE_TYPE CodeType,
56 );
57
58
95 IN EFI_STATUS_CODE_TYPE CodeType,
98 OUT CHAR8 **Filename,
99 OUT CHAR8 **Description,
101 );
102
103
134EFIAPI
137 OUT UINT32 *ErrorLevel,
138 OUT BASE_LIST *Marker,
140 );
141
142
165EFIAPI
169 );
170
171
202EFIAPI
207 );
208
209
246EFIAPI
250 IN CONST VOID *ExtendedData,
251 IN UINTN ExtendedDataSize
252 );
253
254
298EFIAPI
303 IN CONST EFI_GUID *CallerId OPTIONAL,
304 IN CONST EFI_GUID *ExtendedDataGuid OPTIONAL,
305 IN CONST VOID *ExtendedData OPTIONAL,
306 IN UINTN ExtendedDataSize
307 );
308
309
323EFIAPI
325 VOID
326 );
327
328
342EFIAPI
344 VOID
345 );
346
347
361EFIAPI
363 VOID
364 );
365
366
382#define REPORT_STATUS_CODE(Type,Value) \
383 (ReportProgressCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_PROGRESS_CODE) ? \
384 ReportStatusCode(Type,Value) : \
385 (ReportErrorCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) ? \
386 ReportStatusCode(Type,Value) : \
387 (ReportDebugCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_DEBUG_CODE) ? \
388 ReportStatusCode(Type,Value) : \
389 EFI_UNSUPPORTED
390
391
413#define REPORT_STATUS_CODE_WITH_DEVICE_PATH(Type,Value,DevicePathParameter) \
414 (ReportProgressCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_PROGRESS_CODE) ? \
415 ReportStatusCodeWithDevicePath(Type,Value,DevicePathParameter) : \
416 (ReportErrorCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) ? \
417 ReportStatusCodeWithDevicePath(Type,Value,DevicePathParameter) : \
418 (ReportDebugCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_DEBUG_CODE) ? \
419 ReportStatusCodeWithDevicePath(Type,Value,DevicePathParameter) : \
420 EFI_UNSUPPORTED
421
422
446#define REPORT_STATUS_CODE_WITH_EXTENDED_DATA(Type,Value,ExtendedData,ExtendedDataSize) \
447 (ReportProgressCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_PROGRESS_CODE) ? \
448 ReportStatusCodeWithExtendedData(Type,Value,ExtendedData,ExtendedDataSize) : \
449 (ReportErrorCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) ? \
450 ReportStatusCodeWithExtendedData(Type,Value,ExtendedData,ExtendedDataSize) : \
451 (ReportDebugCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_DEBUG_CODE) ? \
452 ReportStatusCodeWithExtendedData(Type,Value,ExtendedData,ExtendedDataSize) : \
453 EFI_UNSUPPORTED
454
483#define REPORT_STATUS_CODE_EX(Type,Value,Instance,CallerId,ExtendedDataGuid,ExtendedData,ExtendedDataSize) \
484 (ReportProgressCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_PROGRESS_CODE) ? \
485 ReportStatusCodeEx(Type,Value,Instance,CallerId,ExtendedDataGuid,ExtendedData,ExtendedDataSize) : \
486 (ReportErrorCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_ERROR_CODE) ? \
487 ReportStatusCodeEx(Type,Value,Instance,CallerId,ExtendedDataGuid,ExtendedData,ExtendedDataSize) : \
488 (ReportDebugCodeEnabled() && ((Type) & EFI_STATUS_CODE_TYPE_MASK) == EFI_DEBUG_CODE) ? \
489 ReportStatusCodeEx(Type,Value,Instance,CallerId,ExtendedDataGuid,ExtendedData,ExtendedDataSize) : \
490 EFI_UNSUPPORTED
491
492#endif
char CHAR8
Definition ProcessorBind.h:109
UINT64 UINTN
Definition ProcessorBind.h:118
#define EFIAPI
Definition ProcessorBind.h:172
unsigned int UINT32
Definition ProcessorBind.h:102
#define CONST
Definition Base.h:327
#define IN
Definition Base.h:347
UINTN * BASE_LIST
Definition Base.h:801
#define OUT
Definition Base.h:352
#define OPTIONAL
Definition Base.h:358
UINT32 EFI_STATUS_CODE_VALUE
Definition PiStatusCode.h:73
UINT32 EFI_STATUS_CODE_TYPE
Definition PiStatusCode.h:30
UINT32 EFIAPI PostCode(IN UINT32 Value)
BOOLEAN EFIAPI ReportErrorCodeEnabled(VOID)
EFI_STATUS EFIAPI ReportStatusCodeWithExtendedData(IN EFI_STATUS_CODE_TYPE Type, IN EFI_STATUS_CODE_VALUE Value, IN CONST VOID *ExtendedData, IN UINTN ExtendedDataSize)
BOOLEAN EFIAPI ReportProgressCodeEnabled(VOID)
BOOLEAN EFIAPI CodeTypeToPostCode(IN EFI_STATUS_CODE_TYPE CodeType, IN EFI_STATUS_CODE_VALUE Value, OUT UINT8 *PostCode)
EFI_STATUS EFIAPI ReportStatusCodeWithDevicePath(IN EFI_STATUS_CODE_TYPE Type, IN EFI_STATUS_CODE_VALUE Value, IN CONST EFI_DEVICE_PATH_PROTOCOL *DevicePath)
EFI_STATUS EFIAPI ReportStatusCode(IN EFI_STATUS_CODE_TYPE Type, IN EFI_STATUS_CODE_VALUE Value)
EFI_STATUS EFIAPI ReportStatusCodeEx(IN EFI_STATUS_CODE_TYPE Type, IN EFI_STATUS_CODE_VALUE Value, IN UINT32 Instance, IN CONST EFI_GUID *CallerId OPTIONAL, IN CONST EFI_GUID *ExtendedDataGuid OPTIONAL, IN CONST VOID *ExtendedData OPTIONAL, IN UINTN ExtendedDataSize)
BOOLEAN EFIAPI ReportDebugCodeEnabled(VOID)
BOOLEAN EFIAPI ReportStatusCodeExtractDebugInfo(IN CONST EFI_STATUS_CODE_DATA *Data, OUT UINT32 *ErrorLevel, OUT BASE_LIST *Marker, OUT CHAR8 **Format)
BOOLEAN EFIAPI ReportStatusCodeExtractAssertInfo(IN EFI_STATUS_CODE_TYPE CodeType, IN EFI_STATUS_CODE_VALUE Value, IN CONST EFI_STATUS_CODE_DATA *Data, OUT CHAR8 **Filename, OUT CHAR8 **Description, OUT UINT32 *LineNumber)
RETURN_STATUS EFI_STATUS
Definition UefiBaseType.h:33
#define VOID
Definition acefi.h:190
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 LineNumber
Definition acpixf.h:1302
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char * Format
Definition acpixf.h:1304
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn BOOLEAN Physical UINT32 Instance
Definition acpixf.h:691
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn BOOLEAN Physical UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING ACPI_OBJECT_LIST ACPI_BUFFER *ReturnObjectBuffer ACPI_DEVICE_INFO **ReturnBuffer ACPI_HANDLE ACPI_HANDLE ACPI_HANDLE *OutHandle ACPI_HANDLE *OutHandle void *Context void *Context ACPI_EVENT_HANDLER Handler UINT32 UINT32 Type
Definition acpixf.h:894
unsigned char BOOLEAN
Definition actypes.h:235
unsigned char UINT8
Definition actypes.h:236
Definition DevicePath.h:49
Definition PiStatusCode.h:90
Definition Base.h:281