[MLX4] Changed WPP GUID, which was accidentally equal to a MTHCA.
[mirror/winof/.git] / hw / mlx4 / user / hca / mlx4_debug.h
1 /*\r
2  * Copyright (c) 2005 Mellanox Technologies.  All rights reserved.\r
3  *\r
4  * This software is available to you under the OpenIB.org BSD license\r
5  * below:\r
6  *\r
7  *     Redistribution and use in source and binary forms, with or\r
8  *     without modification, are permitted provided that the following\r
9  *     conditions are met:\r
10  *\r
11  *      - Redistributions of source code must retain the above\r
12  *        copyright notice, this list of conditions and the following\r
13  *        disclaimer.\r
14  *\r
15  *      - Redistributions in binary form must reproduce the above\r
16  *        copyright notice, this list of conditions and the following\r
17  *        disclaimer in the documentation and/or other materials\r
18  *        provided with the distribution.\r
19  *\r
20  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
21  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
22  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
23  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS\r
24  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\r
25  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
26  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\r
27  * SOFTWARE.\r
28  *\r
29  */\r
30 \r
31 \r
32 #ifndef  _MLX4_DEBUG_H_\r
33 #define _MLX4_DEBUG_H_\r
34 \r
35 #include <complib/cl_debug.h>\r
36 \r
37 extern uint32_t         g_mlx4_dbg_level;\r
38 extern uint32_t         g_mlx4_dbg_flags;\r
39 \r
40 \r
41 #if defined(EVENT_TRACING)\r
42 //\r
43 // Software Tracing Definitions \r
44 //\r
45 //\r
46 \r
47 #define WPP_CONTROL_GUIDS \\r
48         WPP_DEFINE_CONTROL_GUID(HCACtlGuid,(1752F07C,7E5C,402c,9C5F,AD21E572F852),  \\r
49         WPP_DEFINE_BIT( MLX4_DBG_DEV) \\r
50         WPP_DEFINE_BIT( MLX4_DBG_PNP) \\r
51         WPP_DEFINE_BIT( MLX4_DBG_MAD) \\r
52         WPP_DEFINE_BIT( MLX4_DBG_PO) \\r
53         WPP_DEFINE_BIT( MLX4_DBG_CQ) \\r
54         WPP_DEFINE_BIT( MLX4_DBG_QP) \\r
55         WPP_DEFINE_BIT( MLX4_DBG_MEMORY) \\r
56         WPP_DEFINE_BIT( MLX4_DBG_SRQ) \\r
57         WPP_DEFINE_BIT( MLX4_DBG_AV) \\r
58         WPP_DEFINE_BIT( MLX4_DBG_SEND) \\r
59         WPP_DEFINE_BIT( MLX4_DBG_RECV) \\r
60         WPP_DEFINE_BIT( MLX4_DBG_LOW))\r
61 \r
62 \r
63 #define WPP_LEVEL_FLAGS_ENABLED(lvl, flags) (WPP_LEVEL_ENABLED(flags) && WPP_CONTROL(WPP_BIT_ ## flags).Level  >= lvl)\r
64 #define WPP_LEVEL_FLAGS_LOGGER(lvl,flags) WPP_LEVEL_LOGGER(flags)\r
65 #define WPP_FLAG_ENABLED(flags)(WPP_LEVEL_ENABLED(flags) && WPP_CONTROL(WPP_BIT_ ## flags).Level  >= TRACE_LEVEL_VERBOSE)\r
66 #define WPP_FLAG_LOGGER(flags) WPP_LEVEL_LOGGER(flags)\r
67 \r
68 \r
69 // begin_wpp config\r
70 // MLX4_ENTER(FLAG);\r
71 // MLX4_EXIT(FLAG);\r
72 // USEPREFIX(MLX4_PRINT, "%!FUNC!()  ");\r
73 // USESUFFIX(MLX4_ENTER, "%!FUNC!===>");\r
74 // USESUFFIX(MLX4_EXIT, "%!FUNC!<===");\r
75 // end_wpp\r
76 \r
77 \r
78 #else\r
79 \r
80 #include <wmistr.h>\r
81 #include <evntrace.h>\r
82 \r
83 /*\r
84  * Debug macros\r
85  */\r
86 \r
87 \r
88 #define MLX4_DBG_DEV    (1 << 0)\r
89 #define MLX4_DBG_PNP    (1 << 1)\r
90 #define MLX4_DBG_MAD    (1 << 2)\r
91 #define MLX4_DBG_PO     (1 << 3)\r
92 #define MLX4_DBG_QP     (1 << 4)\r
93 #define MLX4_DBG_CQ     (1 << 5)\r
94 #define MLX4_DBG_MEMORY (1 << 6)\r
95 #define MLX4_DBG_SRQ    (1 << 7)\r
96 #define MLX4_DBG_AV     (1 << 8)\r
97 #define MLX4_DBG_SEND   (1 << 9)\r
98 #define MLX4_DBG_RECV   (1 << 10)\r
99 #define MLX4_DBG_LOW    (1 << 11)\r
100 \r
101 \r
102 VOID\r
103         _MLX4_PRINT(\r
104         IN char* msg,\r
105         ...);\r
106 \r
107 #if DBG\r
108 \r
109 \r
110 extern const int MLX4_PRINT_HELPER;\r
111 \r
112 #define MLX4_PRINT(_level_,_flags_,_msg_)  \\r
113         if ((_level_) <= g_mlx4_dbg_level && (_flags_) & g_mlx4_dbg_flags) {\\r
114                 _MLX4_PRINT("[MLX4] %s():",__FUNCTION__);\\r
115                 if((_level_ | MLX4_PRINT_HELPER) == TRACE_LEVEL_ERROR) _MLX4_PRINT ("***ERROR***  ");\\r
116                 _MLX4_PRINT _msg_  ;    \\r
117         }\r
118         \r
119 \r
120 #else\r
121 \r
122 #define MLX4_PRINT(lvl ,flags, msg) \r
123 \r
124 #endif\r
125 \r
126 \r
127 #define MLX4_ENTER(flags)\\r
128         MLX4_PRINT(TRACE_LEVEL_VERBOSE, flags,("===>\n"));\r
129 \r
130 #define MLX4_EXIT(flags)\\r
131         MLX4_PRINT(TRACE_LEVEL_VERBOSE, flags,("<===\n"));\r
132 \r
133 #define MLX4_PRINT_EXIT(_level_,_flag_,_msg_)   \\r
134         {\\r
135                 if (status != IB_SUCCESS) {\\r
136                         MLX4_PRINT(_level_,_flag_,_msg_);\\r
137                 }\\r
138                 MLX4_EXIT(_flag_);\\r
139         }\r
140 \r
141 #endif //EVENT_TRACING\r
142 \r
143 #endif  /*_MLNX_MLX4_DEBUG_H_ */\r
144 \r