aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/rtl8192e/rtl_debug.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/rtl8192e/rtl_debug.h')
-rw-r--r--drivers/staging/rtl8192e/rtl_debug.h299
1 files changed, 299 insertions, 0 deletions
diff --git a/drivers/staging/rtl8192e/rtl_debug.h b/drivers/staging/rtl8192e/rtl_debug.h
new file mode 100644
index 000000000000..50fb9a9b828a
--- /dev/null
+++ b/drivers/staging/rtl8192e/rtl_debug.h
@@ -0,0 +1,299 @@
+/******************************************************************************
+ * Copyright(c) 2008 - 2010 Realtek Corporation. All rights reserved.
+ *
+ * Based on the r8180 driver, which is:
+ * Copyright 2004-2005 Andrea Merello <andreamrl@tiscali.it>, et al.
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of version 2 of the GNU General Public License as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
+ *
+ * The full GNU General Public License is included in this distribution in the
+ * file called LICENSE.
+ *
+ * Contact Information:
+ * wlanfae <wlanfae@realtek.com>
+******************************************************************************/
+#ifndef _RTL_DEBUG_H
+#define _RTL_DEBUG_H
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <linux/version.h>
+#include <linux/debugfs.h>
+
+struct r8192_priv;
+struct _tx_desc_8192se;
+struct _TX_DESC_8192CE;
+struct net_device;
+
+#define DBG_LOUD 4
+
+#define RT_ASSERT(_Exp, Fmt) \
+ if (!(_Exp)) { \
+ printk("Rtl819x: "); \
+ printk Fmt; \
+ }
+
+enum dbgp_flag {
+ FQoS = 0,
+ FTX = 1,
+ FRX = 2,
+ FSEC = 3,
+ FMGNT = 4,
+ FMLME = 5,
+ FRESOURCE = 6,
+ FBEACON = 7,
+ FISR = 8,
+ FPHY = 9,
+ FMP = 10,
+ FEEPROM = 11,
+ FPWR = 12,
+ FDM = 13,
+ FDBGCtrl = 14,
+ FC2H = 15,
+ FBT = 16,
+ FINIT = 17,
+ FIOCTL = 18,
+ DBGP_TYPE_MAX
+};
+
+#define QoS_INIT BIT0
+#define QoS_VISTA BIT1
+
+#define TX_DESC BIT0
+#define TX_DESC_TID BIT1
+
+#define RX_DATA BIT0
+#define RX_PHY_STS BIT1
+#define RX_PHY_SS BIT2
+#define RX_PHY_SQ BIT3
+#define RX_PHY_ASTS BIT4
+#define RX_ERR_LEN BIT5
+#define RX_DEFRAG BIT6
+#define RX_ERR_RATE BIT7
+
+
+
+#define MEDIA_STS BIT0
+#define LINK_STS BIT1
+
+#define OS_CHK BIT0
+
+#define BCN_SHOW BIT0
+#define BCN_PEER BIT1
+
+#define ISR_CHK BIT0
+
+#define PHY_BBR BIT0
+#define PHY_BBW BIT1
+#define PHY_RFR BIT2
+#define PHY_RFW BIT3
+#define PHY_MACR BIT4
+#define PHY_MACW BIT5
+#define PHY_ALLR BIT6
+#define PHY_ALLW BIT7
+#define PHY_TXPWR BIT8
+#define PHY_PWRDIFF BIT9
+
+#define MP_RX BIT0
+#define MP_SWICH_CH BIT1
+
+#define EEPROM_W BIT0
+#define EFUSE_PG BIT1
+#define EFUSE_READ_ALL BIT2
+
+#define LPS BIT0
+#define IPS BIT1
+#define PWRSW BIT2
+#define PWRHW BIT3
+#define PWRHAL BIT4
+
+#define WA_IOT BIT0
+#define DM_PWDB BIT1
+#define DM_Monitor BIT2
+#define DM_DIG BIT3
+#define DM_EDCA_Turbo BIT4
+
+#define DbgCtrl_Trace BIT0
+#define DbgCtrl_InbandNoise BIT1
+
+#define BT_TRACE BIT0
+#define BT_RFPoll BIT1
+
+#define C2H_Summary BIT0
+#define C2H_PacketData BIT1
+#define C2H_ContentData BIT2
+#define BT_TRACE BIT0
+#define BT_RFPoll BIT1
+
+#define INIT_EEPROM BIT0
+#define INIT_TxPower BIT1
+#define INIT_IQK BIT2
+#define INIT_RF BIT3
+
+#define IOCTL_TRACE BIT0
+#define IOCTL_BT_EVENT BIT1
+#define IOCTL_BT_EVENT_DETAIL BIT2
+#define IOCTL_BT_TX_ACLDATA BIT3
+#define IOCTL_BT_TX_ACLDATA_DETAIL BIT4
+#define IOCTL_BT_RX_ACLDATA BIT5
+#define IOCTL_BT_RX_ACLDATA_DETAIL BIT6
+#define IOCTL_BT_HCICMD BIT7
+#define IOCTL_BT_HCICMD_DETAIL BIT8
+#define IOCTL_IRP BIT9
+#define IOCTL_IRP_DETAIL BIT10
+#define IOCTL_CALLBACK_FUN BIT11
+#define IOCTL_STATE BIT12
+#define IOCTL_BT_TP BIT13
+#define IOCTL_BT_LOGO BIT14
+
+/* 2007/07/13 MH ------For DeBuG Print modeue------*/
+/*------------------------------Define structure----------------------------*/
+
+
+/*------------------------Export Marco Definition---------------------------*/
+#define DEBUG_PRINT 1
+
+#if (DEBUG_PRINT == 1)
+#define RTPRINT(dbgtype, dbgflag, printstr) \
+{ \
+ if (DBGP_Type[dbgtype] & dbgflag) { \
+ printk printstr; \
+ } \
+}
+
+#define RTPRINT_ADDR(dbgtype, dbgflag, printstr, _Ptr) \
+{ \
+ if (DBGP_Type[dbgtype] & dbgflag) { \
+ int __i; \
+ u8 *ptr = (u8 *)_Ptr; \
+ printk printstr; \
+ printk(" "); \
+ for (__i = 0; __i < 6; __i++) \
+ printk("%02X%s", ptr[__i], \
+ (__i == 5) ? "" : "-"); \
+ printk("\n"); \
+ } \
+}
+
+#define RTPRINT_DATA(dbgtype, dbgflag, _TitleString, _HexData, _HexDataLen)\
+{ \
+ if (DBGP_Type[dbgtype] & dbgflag) { \
+ int __i; \
+ u8 *ptr = (u8 *)_HexData; \
+ printk(_TitleString); \
+ for (__i = 0; __i < (int)_HexDataLen; __i++) { \
+ printk("%02X%s", ptr[__i], (((__i + 1) \
+ % 4) == 0) ? " " : " "); \
+ if (((__i + 1) % 16) == 0) \
+ printk("\n"); \
+ } \
+ printk("\n"); \
+ } \
+}
+#else
+#define RTPRINT(dbgtype, dbgflag, printstr)
+#define RTPRINT_ADDR(dbgtype, dbgflag, printstr, _Ptr)
+#define RTPRINT_DATA(dbgtype, dbgflag, _TitleString, _HexData, _HexDataLen)
+#endif
+
+extern u32 DBGP_Type[DBGP_TYPE_MAX];
+
+#define RT_PRINT_DATA(_Comp, _Level, _TitleString, _HexData, _HexDataLen) \
+do {\
+ if (((_Comp) & rt_global_debug_component) && \
+ (_Level <= rt_global_debug_component)) { \
+ int __i; \
+ u8* ptr = (u8 *)_HexData; \
+ printk(KERN_INFO "Rtl819x: "); \
+ printk(_TitleString); \
+ for (__i = 0; __i < (int)_HexDataLen; __i++) { \
+ printk("%02X%s", ptr[__i], (((__i + 1) % \
+ 4) == 0) ? " " : " "); \
+ if (((__i + 1) % 16) == 0) \
+ printk("\n"); \
+ } \
+ printk("\n"); \
+ } \
+} while (0);
+
+#define DMESG(x, a...)
+#define DMESGW(x, a...)
+#define DMESGE(x, a...)
+extern u32 rt_global_debug_component;
+#define RT_TRACE(component, x, args...) \
+do { \
+ if (rt_global_debug_component & component) \
+ printk(KERN_DEBUG DRV_NAME ":" x "\n" , \
+ ##args);\
+} while (0);
+
+#define assert(expr) \
+ if (!(expr)) { \
+ printk(KERN_INFO "Assertion failed! %s,%s,%s,line=%d\n", \
+ #expr, __FILE__, __func__, __LINE__); \
+ }
+#define RT_DEBUG_DATA(level, data, datalen) \
+ do { \
+ if ((rt_global_debug_component & (level)) == (level)) {\
+ int _i; \
+ u8 *_pdata = (u8 *)data; \
+ printk(KERN_DEBUG DRV_NAME ": %s()\n", __func__); \
+ for (_i = 0; _i < (int)(datalen); _i++) { \
+ printk(KERN_INFO "%2x ", _pdata[_i]); \
+ if ((_i+1) % 16 == 0) \
+ printk("\n"); \
+ } \
+ printk(KERN_INFO "\n"); \
+ } \
+ } while (0)
+
+struct rtl_fs_debug {
+ const char *name;
+ struct dentry *dir_drv;
+ struct dentry *debug_register;
+ u32 hw_type;
+ u32 hw_offset;
+ bool hw_holding;
+};
+
+void print_buffer(u32 *buffer, int len);
+void dump_eprom(struct net_device *dev);
+void rtl8192_dump_reg(struct net_device *dev);
+
+/* debugfs stuff */
+static inline int rtl_debug_module_init(struct r8192_priv *priv,
+ const char *name)
+{
+ return 0;
+}
+
+static inline void rtl_debug_module_remove(struct r8192_priv *priv)
+{
+}
+
+static inline int rtl_create_debugfs_root(void)
+{
+ return 0;
+}
+
+static inline void rtl_remove_debugfs_root(void)
+{
+}
+
+/* proc stuff */
+void rtl8192_proc_init_one(struct net_device *dev);
+void rtl8192_proc_remove_one(struct net_device *dev);
+void rtl8192_proc_module_init(void);
+void rtl8192_proc_module_remove(void);
+void rtl8192_dbgp_flag_init(struct net_device *dev);
+
+#endif