41. DEBUG 출력문 내부 구조와 DEBUG 문 제어를 위한 PCD 분석, 그리고 OVMF 부트 로그 가져오기
DEBUG ((EFI_D_ERROR, "Hello Debug! Check this variable: %d\n", MyVar));#define DEBUG_INIT 0x00000001 // Initialization
#define DEBUG_WARN 0x00000002 // Warnings
#define DEBUG_LOAD 0x00000004 // Load events
#define DEBUG_FS 0x00000008 // EFI File system
#define DEBUG_POOL 0x00000010 // Alloc & Free (pool)
#define DEBUG_PAGE 0x00000020 // Alloc & Free (page)
#define DEBUG_INFO 0x00000040 // Informational debug messages
#define DEBUG_DISPATCH 0x00000080 // PEI/DXE/SMM Dispatchers
#define DEBUG_VARIABLE 0x00000100 // Variable
#define DEBUG_BM 0x00000400 // Boot Manager
#define DEBUG_BLKIO 0x00001000 // BlkIo Driver
#define DEBUG_NET 0x00004000 // Network Io Driver
#define DEBUG_UNDI 0x00010000 // UNDI Driver
#define DEBUG_LOADFILE 0x00020000 // LoadFile
#define DEBUG_EVENT 0x00080000 // Event messages
#define DEBUG_GCD 0x00100000 // Global Coherency Database changes
#define DEBUG_CACHE 0x00200000 // Memory range cachability changes
#define DEBUG_VERBOSE 0x00400000 // Detailed debug messages that may
// significantly impact boot performance
#define DEBUG_ERROR 0x80000000 // ErrorDebugPrintEnabled
DebugPrintLevelEnabled
요약
Check if PcdDebugPropertyMask has DEBUG_PROPERTY_DEBUG_PRINT_ENABLED
PcdDebugPropertyMask has DEBUG_PROPERTY_DEBUG_PRINT_ENABLEDChecks if passed ErrorLevel is set in PcdFixedDebugPrintErrorLevel
ErrorLevel is set in PcdFixedDebugPrintErrorLevelChecks if passed ErrorLevel is set in PcdDebugPrintErrorLevel
ErrorLevel is set in PcdDebugPrintErrorLevelWrites formatted String to I/O port defined by PcdDebugIoPort
PcdDebugIoPortDEBUG 테스트
로그파일에서 GUID 치환하기
DEBUG 메세지 출력길이 제한
Last updated