1853e2bd2SBhanu Gollapudi #ifndef __BNX2FC_DEBUG__
2853e2bd2SBhanu Gollapudi #define __BNX2FC_DEBUG__
3853e2bd2SBhanu Gollapudi 
4853e2bd2SBhanu Gollapudi /* Log level bit mask */
5853e2bd2SBhanu Gollapudi #define LOG_IO		0x01	/* scsi cmd error, cleanup */
6853e2bd2SBhanu Gollapudi #define LOG_TGT		0x02	/* Session setup, cleanup, etc' */
7853e2bd2SBhanu Gollapudi #define LOG_HBA		0x04	/* lport events, link, mtu, etc' */
8853e2bd2SBhanu Gollapudi #define LOG_ELS		0x08	/* ELS logs */
9853e2bd2SBhanu Gollapudi #define LOG_MISC	0x10	/* fcoe L2 frame related logs*/
10853e2bd2SBhanu Gollapudi #define LOG_ALL		0xff	/* LOG all messages */
11853e2bd2SBhanu Gollapudi 
12853e2bd2SBhanu Gollapudi extern unsigned int bnx2fc_debug_level;
13853e2bd2SBhanu Gollapudi 
143db8cc10SJoe Perches #define BNX2FC_ELS_DBG(fmt, ...)				\
15853e2bd2SBhanu Gollapudi do {								\
163db8cc10SJoe Perches 	if (unlikely(bnx2fc_debug_level & LOG_ELS))		\
173db8cc10SJoe Perches 		pr_info(fmt, ##__VA_ARGS__);			\
18853e2bd2SBhanu Gollapudi } while (0)
19853e2bd2SBhanu Gollapudi 
203db8cc10SJoe Perches #define BNX2FC_MISC_DBG(fmt, ...)				\
21853e2bd2SBhanu Gollapudi do {								\
223db8cc10SJoe Perches 	if (unlikely(bnx2fc_debug_level & LOG_MISC))		\
233db8cc10SJoe Perches 		pr_info(fmt, ##__VA_ARGS__);			\
24853e2bd2SBhanu Gollapudi } while (0)
25853e2bd2SBhanu Gollapudi 
263db8cc10SJoe Perches __printf(2, 3)
273db8cc10SJoe Perches void BNX2FC_IO_DBG(const struct bnx2fc_cmd *io_req, const char *fmt, ...);
283db8cc10SJoe Perches __printf(2, 3)
293db8cc10SJoe Perches void BNX2FC_TGT_DBG(const struct bnx2fc_rport *tgt, const char *fmt, ...);
303db8cc10SJoe Perches __printf(2, 3)
313db8cc10SJoe Perches void BNX2FC_HBA_DBG(const struct fc_lport *lport, const char *fmt, ...);
32853e2bd2SBhanu Gollapudi 
33853e2bd2SBhanu Gollapudi #endif
34