1/* 2 * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 3 * Use is subject to license terms. 4 */ 5 6#ifndef _SYS_IPW2100_H 7#define _SYS_IPW2100_H 8 9#ifdef __cplusplus 10extern "C" { 11#endif 12 13/* 14 * Intel Wireless PRO/2100 mini-PCI adapter driver 15 * ipw2100.h: common definitions and interface to user land application 16 */ 17#include <sys/types.h> 18#include <sys/ddi.h> 19#include <sys/sunddi.h> 20 21#define IPW2100_DRV_NAME "ipw" 22#define IPW2100_DRV_DESC "Intel Wireless 2100" 23 24/* 25 * Debug functionalities 26 */ 27#define IPW2100_DBG_INIT (0x00000001) /* initialization */ 28#define IPW2100_DBG_GLD (0x00000002) /* GLD */ 29#define IPW2100_DBG_WIFI (0x00000004) /* WiFi */ 30#define IPW2100_DBG_DMA (0x00000008) /* DMA */ 31#define IPW2100_DBG_CSR (0x00000010) /* low-level CSR access */ 32#define IPW2100_DBG_FW (0x00000020) /* uc & fw */ 33#define IPW2100_DBG_RING (0x00000040) /* ring operations */ 34#define IPW2100_DBG_IOCTL (0x00000080) /* ioctl */ 35#define IPW2100_DBG_INT (0x00000100) /* interrupt */ 36#define IPW2100_DBG_TABLE (0x00000200) /* ipw2100 tables */ 37#define IPW2100_DBG_HWCAP (0x00001000) /* hardware capabilities */ 38#define IPW2100_DBG_SOFTINT (0x00008000) /* softinterrupt */ 39#define IPW2100_DBG_STATISTIC (0x00010000) /* statistic */ 40#define IPW2100_DBG_FATAL (0x00020000) /* interrup report error */ 41#define IPW2100_DBG_BRUSSELS (0x00040000) /* brussels support */ 42 43extern uint32_t ipw2100_debug; 44extern void ipw2100_dbg(dev_info_t *dip, int level, const char *fmt, ...); 45 46#ifdef DEBUG 47#define IPW2100_DBG(l, x) do { \ 48 _NOTE(CONSTANTCONDITION) \ 49 if ((l) & ipw2100_debug) \ 50 ipw2100_dbg x; \ 51 _NOTE(CONSTANTCONDITION) \ 52} while (0) 53#else 54#define IPW2100_DBG(l, x) 55#endif 56 57#define IPW2100_WARN(x) ipw2100_dbg x 58#define IPW2100_REPORT(x) ipw2100_dbg x 59 60#ifdef __cplusplus 61} 62#endif 63 64#endif /* _SYS_IPW2100_H */ 65