Commit | Line | Data |
---|---|---|
17d87c45 SK |
1 | /* bnx2fc_debug.h: QLogic NetXtreme II Linux FCoE offload driver. |
2 | * Handles operations such as session offload/upload etc, and manages | |
3 | * session resources such as connection id and qp resources. | |
4 | * | |
97586090 CD |
5 | * Copyright (c) 2008-2013 Broadcom Corporation |
6 | * Copyright (c) 2014-2015 QLogic Corporation | |
17d87c45 SK |
7 | * |
8 | * This program is free software; you can redistribute it and/or modify | |
9 | * it under the terms of the GNU General Public License as published by | |
10 | * the Free Software Foundation. | |
11 | * | |
12 | */ | |
13 | ||
853e2bd2 BG |
14 | #ifndef __BNX2FC_DEBUG__ |
15 | #define __BNX2FC_DEBUG__ | |
16 | ||
17 | /* Log level bit mask */ | |
18 | #define LOG_IO 0x01 /* scsi cmd error, cleanup */ | |
19 | #define LOG_TGT 0x02 /* Session setup, cleanup, etc' */ | |
20 | #define LOG_HBA 0x04 /* lport events, link, mtu, etc' */ | |
21 | #define LOG_ELS 0x08 /* ELS logs */ | |
22 | #define LOG_MISC 0x10 /* fcoe L2 frame related logs*/ | |
23 | #define LOG_ALL 0xff /* LOG all messages */ | |
24 | ||
25 | extern unsigned int bnx2fc_debug_level; | |
26 | ||
3db8cc10 JP |
27 | #define BNX2FC_ELS_DBG(fmt, ...) \ |
28 | do { \ | |
29 | if (unlikely(bnx2fc_debug_level & LOG_ELS)) \ | |
30 | pr_info(fmt, ##__VA_ARGS__); \ | |
31 | } while (0) | |
32 | ||
33 | #define BNX2FC_MISC_DBG(fmt, ...) \ | |
34 | do { \ | |
35 | if (unlikely(bnx2fc_debug_level & LOG_MISC)) \ | |
36 | pr_info(fmt, ##__VA_ARGS__); \ | |
37 | } while (0) | |
38 | ||
39 | __printf(2, 3) | |
40 | void BNX2FC_IO_DBG(const struct bnx2fc_cmd *io_req, const char *fmt, ...); | |
41 | __printf(2, 3) | |
42 | void BNX2FC_TGT_DBG(const struct bnx2fc_rport *tgt, const char *fmt, ...); | |
43 | __printf(2, 3) | |
44 | void BNX2FC_HBA_DBG(const struct fc_lport *lport, const char *fmt, ...); | |
853e2bd2 BG |
45 | |
46 | #endif |