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