1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22/* 23 * Copyright 2010 QLogic Corporation. All rights reserved. 24 */ 25 26#ifndef _QLGE_DBG_H 27#define _QLGE_DBG_H 28 29#ifdef __cplusplus 30extern "C" { 31#endif 32 33/* 34 * Driver debug definitions in makefile. 35 */ 36 37#define QL_DEBUG_LEVELS 0x2 38 39#define DBG_NVRAM 0x01 /* Registers, PCI */ 40#define DBG_INIT 0x02 41#define DBG_GLD 0x04 42#define DBG_MBX 0x08 43#define DBG_FLASH 0x08 44#define DBG_RX 0x10 45#define DBG_RX_RING 0x20 46#define DBG_TX 0x40 47#define DBG_STATS 0x80 48#define DBG_INTR 0x100 49 50#ifdef QL_DUMPFW 51#define QLA_CORE_DUMP(qlge) ql_core_dump(qlge); 52#define QLA_DUMP_CRASH_RECORD(qlge) ql_dump_crash_record(qlge) 53#else 54#define QLA_CORE_DUMP(qlge) 55#define QLA_DUMP_CRASH_RECORD(qlge) 56#endif 57 58#if QL_DEBUG 59 60#define QL_DUMP_BUFFER(a, b, c, d) \ 61 ql_dump_buf((char *)a, (uint8_t *)b, (uint8_t)c, (uint32_t)d) 62 63#define QL_PRINT_1(x) ql_printf x 64 65#define QL_PRINT(dbg_level, x) \ 66 if (qlge->ql_dbgprnt & dbg_level) ql_printf x 67#define QL_DUMP(dbg_level, a, b, c, d) \ 68 if (qlge->ql_dbgprnt & dbg_level) QL_DUMP_BUFFER(a, b, c, d) 69 70#define QL_DUMP_REQ_PKT(qlge, pkt, oal, num) if (qlge->ql_dbgprnt & DBG_TX) \ 71 ql_dump_req_pkt(qlge, pkt, oal, num) 72 73#define QL_DUMP_CQICB(qlge, cqicb) if (qlge->ql_dbgprnt & DBG_INIT) \ 74 ql_dump_cqicb(qlge, cqicb) 75 76#define QL_DUMP_WQICB(qlge, wqicb) if (qlge->ql_dbgprnt & DBG_INIT) \ 77 ql_dump_wqicb(qlge, wqicb) 78 79#else 80 81#define QLA_HOST_PCI_REGS(qlge) 82 83#define QL_DUMP_BUFFER(a, b, c, d) 84#define QL_DUMP(dbg_level, a, b, c, d) 85#define QL_DEBUG_PRINT(x) 86#define QL_PRINT(dbg_level, x) 87#define QL_DUMP_REQ_PKT(qlge, pkt, oal, num) 88#define QL_DUMP_CQICB 89#define QL_DUMP_WQICB 90 91#endif /* QLGE_DEBUG */ 92 93/* 94 * Error and Extended Logging Macros. 95 */ 96#define QL_BANG "!" 97#define QL_QUESTION "?" 98#define QL_CAROT "^" 99 100#ifdef __cplusplus 101} 102#endif 103 104#endif /* _QLGE_DBG_H */ 105