\hypertarget{ql__dbg_8h_source}{}\doxysection{ql\+\_\+dbg.\+h}
\label{ql__dbg_8h_source}\index{dev/qlxgbe/ql\_dbg.h@{dev/qlxgbe/ql\_dbg.h}}
\mbox{\hyperlink{ql__dbg_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00001}00001 \textcolor{comment}{/*-\/}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00002}00002 \textcolor{comment}{ * SPDX-\/License-\/Identifier: BSD-\/2-\/Clause-\/FreeBSD}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00003}00003 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00004}00004 \textcolor{comment}{ * Copyright (c) 2013-\/2016 Qlogic Corporation}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00005}00005 \textcolor{comment}{ * All rights reserved.}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00006}00006 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00007}00007 \textcolor{comment}{ *  Redistribution and use in source and binary forms, with or without}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00008}00008 \textcolor{comment}{ *  modification, are permitted provided that the following conditions}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00009}00009 \textcolor{comment}{ *  are met:}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00010}00010 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00011}00011 \textcolor{comment}{ *  1. Redistributions of source code must retain the above copyright}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00012}00012 \textcolor{comment}{ *     notice, this list of conditions and the following disclaimer.}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00013}00013 \textcolor{comment}{ *  2. Redistributions in binary form must reproduce the above copyright}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00014}00014 \textcolor{comment}{ *     notice, this list of conditions and the following disclaimer in the}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00015}00015 \textcolor{comment}{ *     documentation and/or other materials provided with the distribution.}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00016}00016 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00017}00017 \textcolor{comment}{ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "{}AS IS"{}}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00018}00018 \textcolor{comment}{ *  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00019}00019 \textcolor{comment}{ *  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00020}00020 \textcolor{comment}{ *  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00021}00021 \textcolor{comment}{ *  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00022}00022 \textcolor{comment}{ *  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00023}00023 \textcolor{comment}{ *  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00024}00024 \textcolor{comment}{ *  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00025}00025 \textcolor{comment}{ *  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00026}00026 \textcolor{comment}{ *  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00027}00027 \textcolor{comment}{ *  POSSIBILITY OF SUCH DAMAGE.}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00028}00028 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00029}00029 \textcolor{comment}{ * \$FreeBSD\$}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00030}00030 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00031}00031 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00032}00032 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00033}00033 \textcolor{comment}{ * File : ql\_dbg.h}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00034}00034 \textcolor{comment}{ * Author : David C Somayajulu, Qlogic Corporation, Aliso Viejo, CA 92656.}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00035}00035 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00036}00036 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00037}00037 \textcolor{preprocessor}{\#ifndef \_QL\_DBG\_H\_}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00038}00038 \textcolor{preprocessor}{\#define \_QL\_DBG\_H\_}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00039}00039 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00040}00040 \textcolor{keyword}{extern} \textcolor{keywordtype}{void} \mbox{\hyperlink{ql__dbg_8h_adffa8a8b8e5290cd9f73f847bd7524fd}{ql\_dump\_buf8}}(\mbox{\hyperlink{structqla__host}{qla\_host\_t}} *ha, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *str, \textcolor{keywordtype}{void} *dbuf,}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00041}00041                 uint32\_t len);}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00042}00042 \textcolor{keyword}{extern} \textcolor{keywordtype}{void} \mbox{\hyperlink{ql__dbg_8h_a22864ed76476e919b4c274daee8dbbc0}{ql\_dump\_buf16}}(\mbox{\hyperlink{structqla__host}{qla\_host\_t}} *ha, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *str, \textcolor{keywordtype}{void} *dbuf,}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00043}00043                 uint32\_t len16);}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00044}00044 \textcolor{keyword}{extern} \textcolor{keywordtype}{void} \mbox{\hyperlink{ql__dbg_8h_aab33b4538e54d6269aa05a0dfacef17f}{ql\_dump\_buf32}}(\mbox{\hyperlink{structqla__host}{qla\_host\_t}} *ha, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *str, \textcolor{keywordtype}{void} *dbuf,}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00045}00045                 uint32\_t len32);}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00046}00046 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00047}\mbox{\hyperlink{ql__dbg_8h_afa0fca039d2c90b9dd68175bf0de5582}{00047}} \textcolor{preprocessor}{\#define INJCT\_RX\_RXB\_INVAL                              0x00001}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00048}\mbox{\hyperlink{ql__dbg_8h_a3d616125b8b41b0352ca30f9ce35a4d5}{00048}} \textcolor{preprocessor}{\#define INJCT\_RX\_MP\_NULL                                0x00002}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00049}\mbox{\hyperlink{ql__dbg_8h_aae6b5b6f1e1c8d7c056b4b9da0d33d4e}{00049}} \textcolor{preprocessor}{\#define INJCT\_LRO\_RXB\_INVAL                             0x00003}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00050}\mbox{\hyperlink{ql__dbg_8h_a5f22dc8eefeebe619ba5416fd0461802}{00050}} \textcolor{preprocessor}{\#define INJCT\_LRO\_MP\_NULL                               0x00004}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00051}\mbox{\hyperlink{ql__dbg_8h_a0a448a6868c9334bf6027118c58e0732}{00051}} \textcolor{preprocessor}{\#define INJCT\_NUM\_HNDLE\_INVALID                         0x00005}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00052}\mbox{\hyperlink{ql__dbg_8h_aa171cf6b9798558f124e02ecf7fb5f5b}{00052}} \textcolor{preprocessor}{\#define INJCT\_RDWR\_INDREG\_FAILURE                       0x00006}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00053}\mbox{\hyperlink{ql__dbg_8h_a0e4faabfeb50cd99843202370e47ec00}{00053}} \textcolor{preprocessor}{\#define INJCT\_RDWR\_OFFCHIPMEM\_FAILURE                   0x00007}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00054}\mbox{\hyperlink{ql__dbg_8h_a17e73a2ed76ea7aed3e33258d4415653}{00054}} \textcolor{preprocessor}{\#define INJCT\_MBX\_CMD\_FAILURE                           0x00008}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00055}\mbox{\hyperlink{ql__dbg_8h_a6e371c3a1e30a8abdb364155d8ec059f}{00055}} \textcolor{preprocessor}{\#define INJCT\_HEARTBEAT\_FAILURE                         0x00009}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00056}\mbox{\hyperlink{ql__dbg_8h_a793931e37d40a8c1988749ff7a0a0898}{00056}} \textcolor{preprocessor}{\#define INJCT\_TEMPERATURE\_FAILURE                       0x0000A}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00057}\mbox{\hyperlink{ql__dbg_8h_a1b3d8e82fd854a9f68fdf79c818908d6}{00057}} \textcolor{preprocessor}{\#define INJCT\_M\_GETCL\_M\_GETJCL\_FAILURE                  0x0000B}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00058}\mbox{\hyperlink{ql__dbg_8h_a918bf57595ee053a644c264021cba20d}{00058}} \textcolor{preprocessor}{\#define INJCT\_INV\_CONT\_OPCODE                           0x0000C}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00059}\mbox{\hyperlink{ql__dbg_8h_ae5c48c2452f2e30c504047722c8587b1}{00059}} \textcolor{preprocessor}{\#define INJCT\_SGL\_RCV\_INV\_DESC\_COUNT                    0x0000D}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00060}\mbox{\hyperlink{ql__dbg_8h_ae7ed411b3d90f11114700bc1f1f34bcb}{00060}} \textcolor{preprocessor}{\#define INJCT\_SGL\_LRO\_INV\_DESC\_COUNT                    0x0000E}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00061}\mbox{\hyperlink{ql__dbg_8h_a21702a91b5354dcf4c5d8c13ba6c4c75}{00061}} \textcolor{preprocessor}{\#define INJCT\_PEER\_PORT\_FAILURE\_ERR\_RECOVERY            0x0000F}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00062}\mbox{\hyperlink{ql__dbg_8h_a3827158b0f44ae38bc8b67476b878145}{00062}} \textcolor{preprocessor}{\#define INJCT\_TXBUF\_MBUF\_NON\_NULL                       0x00010}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00063}00063 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00064}00064 \textcolor{preprocessor}{\#ifdef QL\_DBG}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00065}00065 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00066}00066 \textcolor{preprocessor}{\#define QL\_DPRINT1(ha, x)       if (ha-\/>dbg\_level \& 0x0001) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00067}00067 \textcolor{preprocessor}{\#define QL\_DPRINT2(ha, x)       if (ha-\/>dbg\_level \& 0x0002) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00068}00068 \textcolor{preprocessor}{\#define QL\_DPRINT4(ha, x)       if (ha-\/>dbg\_level \& 0x0004) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00069}00069 \textcolor{preprocessor}{\#define QL\_DPRINT8(ha, x)       if (ha-\/>dbg\_level \& 0x0008) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00070}00070 \textcolor{preprocessor}{\#define QL\_DPRINT10(ha, x)      if (ha-\/>dbg\_level \& 0x0010) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00071}00071 \textcolor{preprocessor}{\#define QL\_DPRINT20(ha, x)      if (ha-\/>dbg\_level \& 0x0020) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00072}00072 \textcolor{preprocessor}{\#define QL\_DPRINT40(ha, x)      if (ha-\/>dbg\_level \& 0x0040) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00073}00073 \textcolor{preprocessor}{\#define QL\_DPRINT80(ha, x)      if (ha-\/>dbg\_level \& 0x0080) device\_printf x}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00074}00074 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00075}00075 \textcolor{preprocessor}{\#define QL\_DUMP\_BUFFER8(h, s, b, n) if (h-\/>dbg\_level \& 0x08000000)\(\backslash\)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00076}00076 \textcolor{preprocessor}{                                        qla\_dump\_buf8(h, s, b, n)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00077}00077 \textcolor{preprocessor}{\#define QL\_DUMP\_BUFFER16(h, s, b, n) if (h-\/>dbg\_level \& 0x08000000)\(\backslash\)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00078}00078 \textcolor{preprocessor}{                                        qla\_dump\_buf16(h, s, b, n)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00079}00079 \textcolor{preprocessor}{\#define QL\_DUMP\_BUFFER32(h, s, b, n) if (h-\/>dbg\_level \& 0x08000000)\(\backslash\)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00080}00080 \textcolor{preprocessor}{                                        qla\_dump\_buf32(h, s, b, n)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00081}00081 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00082}00082 \textcolor{preprocessor}{\#define QL\_ASSERT(ha, x, y)             if (!x \&\& !ha-\/>err\_inject) panic y}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00083}00083 \textcolor{preprocessor}{\#define QL\_ERR\_INJECT(ha, val)          (ha-\/>err\_inject == val)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00084}00084 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00085}00085 \textcolor{preprocessor}{\#else}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00086}00086 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00087}\mbox{\hyperlink{ql__dbg_8h_a785a1b70f8092094e1fdd6497e08c320}{00087}} \textcolor{preprocessor}{\#define QL\_DPRINT1(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00088}\mbox{\hyperlink{ql__dbg_8h_adddba7e1e336ba256778164a0852597f}{00088}} \textcolor{preprocessor}{\#define QL\_DPRINT2(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00089}\mbox{\hyperlink{ql__dbg_8h_a34f800fbdbc395795c32097ead82c4bd}{00089}} \textcolor{preprocessor}{\#define QL\_DPRINT4(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00090}\mbox{\hyperlink{ql__dbg_8h_a92559fa0652d238a9f643596d40c9a45}{00090}} \textcolor{preprocessor}{\#define QL\_DPRINT8(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00091}\mbox{\hyperlink{ql__dbg_8h_a1f5e992668240fa4d679efd30ba361c8}{00091}} \textcolor{preprocessor}{\#define QL\_DPRINT10(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00092}\mbox{\hyperlink{ql__dbg_8h_a737dd7a798c917e5d39281a65fc9f77a}{00092}} \textcolor{preprocessor}{\#define QL\_DPRINT20(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00093}\mbox{\hyperlink{ql__dbg_8h_aa556e3e2461a8834367352e64ad56d56}{00093}} \textcolor{preprocessor}{\#define QL\_DPRINT40(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00094}\mbox{\hyperlink{ql__dbg_8h_a3ee97b86fd1d689182e8d614bedb0b54}{00094}} \textcolor{preprocessor}{\#define QL\_DPRINT80(ha, x)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00095}00095 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00096}\mbox{\hyperlink{ql__dbg_8h_a668af07a7b971c03335d05adf9cb401a}{00096}} \textcolor{preprocessor}{\#define QL\_DUMP\_BUFFER8(h, s, b, n)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00097}\mbox{\hyperlink{ql__dbg_8h_a14914ce8d3035dcbb7386e2b024f3264}{00097}} \textcolor{preprocessor}{\#define QL\_DUMP\_BUFFER16(h, s, b, n)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00098}\mbox{\hyperlink{ql__dbg_8h_a4453b9cd2372482def744e45955da451}{00098}} \textcolor{preprocessor}{\#define QL\_DUMP\_BUFFER32(h, s, b, n)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00099}00099 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00100}\mbox{\hyperlink{ql__dbg_8h_a08cf5e8d46423f8bd7b1ecbf2927a634}{00100}} \textcolor{preprocessor}{\#define QL\_ASSERT(ha, x, y)}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00101}\mbox{\hyperlink{ql__dbg_8h_ac42fa1e13a6c5b1369da8538caeb6c1f}{00101}} \textcolor{preprocessor}{\#define QL\_ERR\_INJECT(ha, val)          0}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00102}00102 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00103}00103 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00104}00104 }
\DoxyCodeLine{\Hypertarget{ql__dbg_8h_source_l00105}00105 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \#ifndef \_QL\_DBG\_H\_ */}\textcolor{preprocessor}{}}

\end{DoxyCode}
