1 #ifndef _EFI_DEBUG_H 2 #define _EFI_DEBUG_H 3 4 /*++ 5 6 Copyright (c) 1998 Intel Corporation 7 8 Module Name: 9 10 efidebug.h 11 12 Abstract: 13 14 EFI library debug functions 15 16 17 18 Revision History 19 20 --*/ 21 22 extern UINTN EFIDebug; 23 24 #if EFI_DEBUG 25 26 #define DBGASSERT(a) DbgAssert(__FILE__, __LINE__, #a) 27 #define DEBUG(a) DbgPrint a 28 29 #else 30 31 #define DBGASSERT(a) 32 #define DEBUG(a) 33 34 #endif 35 36 #if EFI_DEBUG_CLEAR_MEMORY 37 38 #define DBGSETMEM(a,l) SetMem(a,l,(CHAR8)BAD_POINTER) 39 40 #else 41 42 #define DBGSETMEM(a,l) 43 44 #endif 45 46 #define D_INIT 0x00000001 // Initialization style messages 47 #define D_WARN 0x00000002 // Warnings 48 #define D_LOAD 0x00000004 // Load events 49 #define D_FS 0x00000008 // EFI File system 50 #define D_POOL 0x00000010 // Alloc & Free's 51 #define D_PAGE 0x00000020 // Alloc & Free's 52 #define D_INFO 0x00000040 // Verbose 53 #define D_VAR 0x00000100 // Variable 54 #define D_PARSE 0x00000200 // Command parsing 55 #define D_BM 0x00000400 // Boot manager 56 #define D_BLKIO 0x00001000 // BlkIo Driver 57 #define D_BLKIO_ULTRA 0x00002000 // BlkIo Driver 58 #define D_NET 0x00004000 // SNI Driver 59 #define D_NET_ULTRA 0x00008000 // SNI Driver 60 #define D_TXTIN 0x00010000 // Simple Input Driver 61 #define D_TXTOUT 0x00020000 // Simple Text Output Driver 62 #define D_ERROR_ATA 0x00040000 // ATA error messages 63 #define D_ERROR 0x80000000 // Error 64 65 #define D_RESERVED 0x7fffC880 // Bits not reserved above 66 67 // 68 // Current Debug level of the system, value of EFIDebug 69 // 70 //#define EFI_DBUG_MASK (D_ERROR | D_WARN | D_LOAD | D_BLKIO | D_INIT) 71 #define EFI_DBUG_MASK (D_ERROR) 72 73 // 74 // 75 // 76 77 #if EFI_DEBUG 78 79 #define ASSERT(a) if(!(a)) DBGASSERT(a) 80 #define ASSERT_LOCKED(l) if(!(l)->Lock) DBGASSERT(l not locked) 81 #define ASSERT_STRUCT(p,t) DBGASSERT(t not structure), p 82 83 #else 84 85 #define ASSERT(a) 86 #define ASSERT_LOCKED(l) 87 #define ASSERT_STRUCT(p,t) 88 89 #endif 90 91 // 92 // Prototypes 93 // 94 95 INTN 96 DbgAssert ( 97 CHAR8 *file, 98 INTN lineno, 99 CHAR8 *string 100 ); 101 102 INTN 103 DbgPrint ( 104 INTN mask, 105 CHAR8 *format, 106 ... 107 ); 108 109 #endif 110 111