linux/drivers/net/wireless/ath/debug.h
<<
>>
Prefs
   1/*
   2 * Copyright (c) 2008-2009 Atheros Communications Inc.
   3 *
   4 * Permission to use, copy, modify, and/or distribute this software for any
   5 * purpose with or without fee is hereby granted, provided that the above
   6 * copyright notice and this permission notice appear in all copies.
   7 *
   8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
   9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
  11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
  13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  15 */
  16
  17#ifndef ATH_DEBUG_H
  18#define ATH_DEBUG_H
  19
  20#include "ath.h"
  21
  22/**
  23 * enum ath_debug_level - atheros wireless debug level
  24 *
  25 * @ATH_DBG_RESET: reset processing
  26 * @ATH_DBG_QUEUE: hardware queue management
  27 * @ATH_DBG_EEPROM: eeprom processing
  28 * @ATH_DBG_CALIBRATE: periodic calibration
  29 * @ATH_DBG_INTERRUPT: interrupt processing
  30 * @ATH_DBG_REGULATORY: regulatory processing
  31 * @ATH_DBG_ANI: adaptive noise immunitive processing
  32 * @ATH_DBG_XMIT: basic xmit operation
  33 * @ATH_DBG_BEACON: beacon handling
  34 * @ATH_DBG_CONFIG: configuration of the hardware
  35 * @ATH_DBG_FATAL: fatal errors, this is the default, DBG_DEFAULT
  36 * @ATH_DBG_PS: power save processing
  37 * @ATH_DBG_HWTIMER: hardware timer handling
  38 * @ATH_DBG_BTCOEX: bluetooth coexistance
  39 * @ATH_DBG_BSTUCK: stuck beacons
  40 * @ATH_DBG_ANY: enable all debugging
  41 *
  42 * The debug level is used to control the amount and type of debugging output
  43 * we want to see. Each driver has its own method for enabling debugging and
  44 * modifying debug level states -- but this is typically done through a
  45 * module parameter 'debug' along with a respective 'debug' debugfs file
  46 * entry.
  47 */
  48enum ATH_DEBUG {
  49        ATH_DBG_RESET           = 0x00000001,
  50        ATH_DBG_QUEUE           = 0x00000002,
  51        ATH_DBG_EEPROM          = 0x00000004,
  52        ATH_DBG_CALIBRATE       = 0x00000008,
  53        ATH_DBG_INTERRUPT       = 0x00000010,
  54        ATH_DBG_REGULATORY      = 0x00000020,
  55        ATH_DBG_ANI             = 0x00000040,
  56        ATH_DBG_XMIT            = 0x00000080,
  57        ATH_DBG_BEACON          = 0x00000100,
  58        ATH_DBG_CONFIG          = 0x00000200,
  59        ATH_DBG_FATAL           = 0x00000400,
  60        ATH_DBG_PS              = 0x00000800,
  61        ATH_DBG_HWTIMER         = 0x00001000,
  62        ATH_DBG_BTCOEX          = 0x00002000,
  63        ATH_DBG_WMI             = 0x00004000,
  64        ATH_DBG_BSTUCK          = 0x00008000,
  65        ATH_DBG_ANY             = 0xffffffff
  66};
  67
  68#define ATH_DBG_DEFAULT (ATH_DBG_FATAL)
  69
  70#ifdef CONFIG_ATH_DEBUG
  71void ath_print(struct ath_common *common, int dbg_mask, const char *fmt, ...)
  72        __attribute__ ((format (printf, 3, 4)));
  73#else
  74static inline void __attribute__ ((format (printf, 3, 4)))
  75ath_print(struct ath_common *common, int dbg_mask, const char *fmt, ...)
  76{
  77}
  78#endif /* CONFIG_ATH_DEBUG */
  79
  80/** Returns string describing opmode, or NULL if unknown mode. */
  81#ifdef CONFIG_ATH_DEBUG
  82const char *ath_opmode_to_string(enum nl80211_iftype opmode);
  83#else
  84static inline const char *ath_opmode_to_string(enum nl80211_iftype opmode)
  85{
  86        return "UNKNOWN";
  87}
  88#endif
  89
  90#endif /* ATH_DEBUG_H */
  91
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.