1 /* $OpenBSD: scsi_debug.h,v 1.4 1996/11/28 13:20:36 niklas Exp $ */ 2 /* $NetBSD: scsi_debug.h,v 1.5 1994/12/28 19:43:00 mycroft Exp $ */ 3 4 /* 5 * Written by Julian Elischer (julian@tfs.com) 6 */ 7 #ifndef _SCSI_SCSI_DEBUG_H 8 #define _SCSI_SCSI_DEBUG_H 1 9 10 /* 11 * These are the new debug bits. (Sat Oct 2 12:46:46 WST 1993) 12 * the following DEBUG bits are defined to exist in the flags word of 13 * the scsi_link structure. 14 */ 15 #define SDEV_DB1 0x0010 /* scsi commands, errors, data */ 16 #define SDEV_DB2 0x0020 /* routine flow tracking */ 17 #define SDEV_DB3 0x0040 /* internal to routine flows */ 18 #define SDEV_DB4 0x0080 /* level 4 debugging for this dev */ 19 20 /* targets and LUNs we want to debug */ 21 #ifndef SCSIDEBUG_TARGETS 22 #define SCSIDEBUG_TARGETS 0 23 #endif 24 #ifndef SCSIDEBUG_LUNS 25 #define SCSIDEBUG_LUNS 0 26 #endif 27 #ifndef SCSIDEBUG_LEVEL 28 #define SCSIDEBUG_LEVEL (SDEV_DB1|SDEV_DB2) 29 #endif 30 31 extern int scsidebug_targets, scsidebug_luns, scsidebug_level; 32 33 /* 34 * This is the usual debug macro for use with the above bits 35 */ 36 #ifdef SCSIDEBUG 37 #define SC_DEBUG(sc_link,Level,Printstuff) \ 38 if ((sc_link)->flags & (Level)) { \ 39 sc_print_addr(sc_link); \ 40 printf Printstuff; \ 41 } 42 #define SC_DEBUGN(sc_link,Level,Printstuff) \ 43 if ((sc_link)->flags & (Level)) { \ 44 printf Printstuff; \ 45 } 46 #else 47 #define SC_DEBUG(A,B,C) 48 #define SC_DEBUGN(A,B,C) 49 #endif 50 51 #endif /* _SCSI_SCSI_DEBUG_H */ 52