1 /****************************************************************************** 2 * 3 * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved. 4 * 5 * This program is free software; you can redistribute it and/or modify it 6 * under the terms of version 2 of the GNU General Public License as 7 * published by the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 * more details. 13 * 14 * You should have received a copy of the GNU General Public License along with 15 * this program; if not, write to the Free Software Foundation, Inc., 16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA 17 * 18 * 19 ******************************************************************************/ 20 #ifndef __RTW_DEBUG_H__ 21 #define __RTW_DEBUG_H__ 22 23 24 #define _drv_always_ 1 25 #define _drv_emerg_ 2 26 #define _drv_alert_ 3 27 #define _drv_crit_ 4 28 #define _drv_err_ 5 29 #define _drv_warning_ 6 30 #define _drv_notice_ 7 31 #define _drv_info_ 8 32 #define _drv_dump_ 9 33 #define _drv_debug_ 10 34 35 36 #define _module_rtl871x_xmit_c_ BIT(0) 37 #define _module_xmit_osdep_c_ BIT(1) 38 #define _module_rtl871x_recv_c_ BIT(2) 39 #define _module_recv_osdep_c_ BIT(3) 40 #define _module_rtl871x_mlme_c_ BIT(4) 41 #define _module_mlme_osdep_c_ BIT(5) 42 #define _module_rtl871x_sta_mgt_c_ BIT(6) 43 #define _module_rtl871x_cmd_c_ BIT(7) 44 #define _module_cmd_osdep_c_ BIT(8) 45 #define _module_rtl871x_io_c_ BIT(9) 46 #define _module_io_osdep_c_ BIT(10) 47 #define _module_os_intfs_c_ BIT(11) 48 #define _module_rtl871x_security_c_ BIT(12) 49 #define _module_rtl871x_eeprom_c_ BIT(13) 50 #define _module_hal_init_c_ BIT(14) 51 #define _module_hci_hal_init_c_ BIT(15) 52 #define _module_rtl871x_ioctl_c_ BIT(16) 53 #define _module_rtl871x_ioctl_set_c_ BIT(17) 54 #define _module_rtl871x_ioctl_query_c_ BIT(18) 55 #define _module_rtl871x_pwrctrl_c_ BIT(19) 56 #define _module_hci_intfs_c_ BIT(20) 57 #define _module_hci_ops_c_ BIT(21) 58 #define _module_osdep_service_c_ BIT(22) 59 #define _module_mp_ BIT(23) 60 #define _module_hci_ops_os_c_ BIT(24) 61 #define _module_rtl871x_ioctl_os_c BIT(25) 62 #define _module_rtl8712_cmd_c_ BIT(26) 63 //#define _module_efuse_ BIT(27) 64 #define _module_rtl8192c_xmit_c_ BIT(28) 65 #define _module_hal_xmit_c_ BIT(28) 66 #define _module_efuse_ BIT(29) 67 #define _module_rtl8712_recv_c_ BIT(30) 68 #define _module_rtl8712_led_c_ BIT(31) 69 70 #undef _MODULE_DEFINE_ 71 72 #if defined _RTW_XMIT_C_ 73 #define _MODULE_DEFINE_ _module_rtl871x_xmit_c_ 74 #elif defined _XMIT_OSDEP_C_ 75 #define _MODULE_DEFINE_ _module_xmit_osdep_c_ 76 #elif defined _RTW_RECV_C_ 77 #define _MODULE_DEFINE_ _module_rtl871x_recv_c_ 78 #elif defined _RECV_OSDEP_C_ 79 #define _MODULE_DEFINE_ _module_recv_osdep_c_ 80 #elif defined _RTW_MLME_C_ 81 #define _MODULE_DEFINE_ _module_rtl871x_mlme_c_ 82 #elif defined _MLME_OSDEP_C_ 83 #define _MODULE_DEFINE_ _module_mlme_osdep_c_ 84 #elif defined _RTW_MLME_EXT_C_ 85 #define _MODULE_DEFINE_ 1 86 #elif defined _RTW_STA_MGT_C_ 87 #define _MODULE_DEFINE_ _module_rtl871x_sta_mgt_c_ 88 #elif defined _RTW_CMD_C_ 89 #define _MODULE_DEFINE_ _module_rtl871x_cmd_c_ 90 #elif defined _CMD_OSDEP_C_ 91 #define _MODULE_DEFINE_ _module_cmd_osdep_c_ 92 #elif defined _RTW_IO_C_ 93 #define _MODULE_DEFINE_ _module_rtl871x_io_c_ 94 #elif defined _IO_OSDEP_C_ 95 #define _MODULE_DEFINE_ _module_io_osdep_c_ 96 #elif defined _OS_INTFS_C_ 97 #define _MODULE_DEFINE_ _module_os_intfs_c_ 98 #elif defined _RTW_SECURITY_C_ 99 #define _MODULE_DEFINE_ _module_rtl871x_security_c_ 100 #elif defined _RTW_EEPROM_C_ 101 #define _MODULE_DEFINE_ _module_rtl871x_eeprom_c_ 102 #elif defined _HAL_INTF_C_ 103 #define _MODULE_DEFINE_ _module_hal_init_c_ 104 #elif (defined _HCI_HAL_INIT_C_) || (defined _SDIO_HALINIT_C_) 105 #define _MODULE_DEFINE_ _module_hci_hal_init_c_ 106 #elif defined _RTL871X_IOCTL_C_ 107 #define _MODULE_DEFINE_ _module_rtl871x_ioctl_c_ 108 #elif defined _RTL871X_IOCTL_SET_C_ 109 #define _MODULE_DEFINE_ _module_rtl871x_ioctl_set_c_ 110 #elif defined _RTL871X_IOCTL_QUERY_C_ 111 #define _MODULE_DEFINE_ _module_rtl871x_ioctl_query_c_ 112 #elif defined _RTL871X_PWRCTRL_C_ 113 #define _MODULE_DEFINE_ _module_rtl871x_pwrctrl_c_ 114 #elif defined _RTW_PWRCTRL_C_ 115 #define _MODULE_DEFINE_ 1 116 #elif defined _HCI_INTF_C_ 117 #define _MODULE_DEFINE_ _module_hci_intfs_c_ 118 #elif defined _HCI_OPS_C_ 119 #define _MODULE_DEFINE_ _module_hci_ops_c_ 120 #elif defined _SDIO_OPS_C_ 121 #define _MODULE_DEFINE_ 1 122 #elif defined _OSDEP_HCI_INTF_C_ 123 #define _MODULE_DEFINE_ _module_hci_intfs_c_ 124 #elif defined _OSDEP_SERVICE_C_ 125 #define _MODULE_DEFINE_ _module_osdep_service_c_ 126 #elif defined _HCI_OPS_OS_C_ 127 #define _MODULE_DEFINE_ _module_hci_ops_os_c_ 128 #elif defined _RTL871X_IOCTL_LINUX_C_ 129 #define _MODULE_DEFINE_ _module_rtl871x_ioctl_os_c 130 #elif defined _RTL8712_CMD_C_ 131 #define _MODULE_DEFINE_ _module_rtl8712_cmd_c_ 132 #elif defined _RTL8192C_XMIT_C_ 133 #define _MODULE_DEFINE_ 1 134 #elif defined _RTL8723AS_XMIT_C_ 135 #define _MODULE_DEFINE_ 1 136 #elif defined _RTL8712_RECV_C_ 137 #define _MODULE_DEFINE_ _module_rtl8712_recv_c_ 138 #elif defined _RTL8192CU_RECV_C_ 139 #define _MODULE_DEFINE_ _module_rtl8712_recv_c_ 140 #elif defined _RTL871X_MLME_EXT_C_ 141 #define _MODULE_DEFINE_ _module_mlme_osdep_c_ 142 #elif defined _RTW_MP_C_ 143 #define _MODULE_DEFINE_ _module_mp_ 144 #elif defined _RTW_MP_IOCTL_C_ 145 #define _MODULE_DEFINE_ _module_mp_ 146 #elif defined _RTW_EFUSE_C_ 147 #define _MODULE_DEFINE_ _module_efuse_ 148 #endif 149 150 #ifdef PLATFORM_OS_CE 151 extern void rtl871x_cedbg(const char *fmt, ...); 152 #endif 153 154 #define RT_TRACE(_Comp, _Level, Fmt) do{}while(0) 155 #define _func_enter_ do{}while(0) 156 #define _func_exit_ do{}while(0) 157 #define RT_PRINT_DATA(_Comp, _Level, _TitleString, _HexData, _HexDataLen) do{}while(0) 158 159 #ifdef PLATFORM_WINDOWS 160 #define DBG_871X do {} while(0) 161 #define MSG_8192C do {} while(0) 162 #define DBG_8192C do {} while(0) 163 #define DBG_871X_LEVEL do {} while(0) 164 #else 165 #define DBG_871X(x, ...) do {} while(0) 166 #define MSG_8192C(x, ...) do {} while(0) 167 #define DBG_8192C(x,...) do {} while(0) 168 #define DBG_871X_LEVEL(x,...) do {} while(0) 169 #endif 170 171 #undef _dbgdump 172 #undef _seqdump 173 174 #ifndef _RTL871X_DEBUG_C_ 175 extern u32 GlobalDebugLevel; 176 extern u64 GlobalDebugComponents; 177 #endif 178 179 #if defined(PLATFORM_WINDOWS) && defined(PLATFORM_OS_XP) 180 #define _dbgdump DbgPrint 181 #define _seqdump(sel, fmt, arg...) _dbgdump(fmt, ##arg) 182 #elif defined(PLATFORM_WINDOWS) && defined(PLATFORM_OS_CE) 183 #define _dbgdump rtl871x_cedbg 184 #define _seqdump(sel, fmt, arg...) _dbgdump(fmt, ##arg) 185 #elif defined PLATFORM_LINUX 186 #define _dbgdump printk 187 #define _seqdump seq_printf 188 #elif defined PLATFORM_FREEBSD 189 #define _dbgdump printf 190 #define _seqdump(sel, fmt, arg...) _dbgdump(fmt, ##arg) 191 #endif 192 193 #define DRIVER_PREFIX "RTL871X: " 194 195 #if defined(_dbgdump) 196 197 #define DBG_871X_EXP(level, EXP) do { if (level <= GlobalDebugLevel) EXP; } while (0) 198 199 /* with driver-defined prefix */ 200 #undef DBG_871X_LEVEL 201 #define DBG_871X_LEVEL(level, fmt, arg...) \ 202 do {\ 203 if (level <= GlobalDebugLevel) {\ 204 if (level <= _drv_err_ && level > _drv_always_) \ 205 _dbgdump(DRIVER_PREFIX"ERROR " fmt, ##arg);\ 206 else \ 207 _dbgdump(DRIVER_PREFIX fmt, ##arg);\ 208 }\ 209 }while(0) 210 211 /* without driver-defined prefix */ 212 #undef _DBG_871X_LEVEL 213 #define _DBG_871X_LEVEL(level, fmt, arg...) \ 214 do {\ 215 if (level <= GlobalDebugLevel) {\ 216 if (level <= _drv_err_ && level > _drv_always_) \ 217 _dbgdump("ERROR " fmt, ##arg);\ 218 else \ 219 _dbgdump(fmt, ##arg);\ 220 }\ 221 }while(0) 222 223 #if defined(_seqdump) 224 #define RTW_DBGDUMP 0 /* 'stream' for _dbgdump */ 225 226 /* dump message to selected 'stream' */ 227 #define DBG_871X_SEL(sel, fmt, arg...) \ 228 do {\ 229 if (sel == RTW_DBGDUMP)\ 230 _DBG_871X_LEVEL(_drv_always_, fmt, ##arg); \ 231 else {\ 232 _seqdump(sel, fmt, ##arg); \ 233 } \ 234 }while(0) 235 236 /* dump message to selected 'stream' with driver-defined prefix */ 237 #define DBG_871X_SEL_NL(sel, fmt, arg...) \ 238 do {\ 239 if (sel == RTW_DBGDUMP)\ 240 DBG_871X_LEVEL(_drv_always_, fmt, ##arg); \ 241 else {\ 242 _seqdump(sel, fmt, ##arg) /*rtw_warn_on(1)*/; \ 243 } \ 244 }while(0) 245 246 #endif /* defined(_seqdump) */ 247 248 #endif /* defined(_dbgdump) */ 249 250 #ifdef CONFIG_DEBUG 251 #if defined(_dbgdump) 252 #undef DBG_871X 253 #define DBG_871X(...) do {\ 254 _dbgdump(DRIVER_PREFIX __VA_ARGS__);\ 255 }while(0) 256 257 #undef MSG_8192C 258 #define MSG_8192C(...) do {\ 259 _dbgdump(DRIVER_PREFIX __VA_ARGS__);\ 260 }while(0) 261 262 #undef DBG_8192C 263 #define DBG_8192C(...) do {\ 264 _dbgdump(DRIVER_PREFIX __VA_ARGS__);\ 265 }while(0) 266 #endif /* defined(_dbgdump) */ 267 #endif /* CONFIG_DEBUG */ 268 269 #ifdef CONFIG_DEBUG_RTL871X 270 271 #if defined(_dbgdump) && defined(_MODULE_DEFINE_) 272 273 #undef RT_TRACE 274 #define RT_TRACE(_Comp, _Level, Fmt)\ 275 do {\ 276 if((_Comp & GlobalDebugComponents) && (_Level <= GlobalDebugLevel)) {\ 277 _dbgdump("%s [0x%08x,%d]", DRIVER_PREFIX, (unsigned int)_Comp, _Level);\ 278 _dbgdump Fmt;\ 279 }\ 280 }while(0) 281 282 #endif /* defined(_dbgdump) && defined(_MODULE_DEFINE_) */ 283 284 285 #if defined(_dbgdump) 286 #undef _func_enter_ 287 #define _func_enter_ \ 288 do { \ 289 if (GlobalDebugLevel >= _drv_debug_) \ 290 { \ 291 _dbgdump("\n %s : %s enters at %d\n", DRIVER_PREFIX, __FUNCTION__, __LINE__);\ 292 } \ 293 } while(0) 294 295 #undef _func_exit_ 296 #define _func_exit_ \ 297 do { \ 298 if (GlobalDebugLevel >= _drv_debug_) \ 299 { \ 300 _dbgdump("\n %s : %s exits at %d\n", DRIVER_PREFIX, __FUNCTION__, __LINE__); \ 301 } \ 302 } while(0) 303 304 #undef RT_PRINT_DATA 305 #define RT_PRINT_DATA(_Comp, _Level, _TitleString, _HexData, _HexDataLen) \ 306 if(((_Comp) & GlobalDebugComponents) && (_Level <= GlobalDebugLevel)) \ 307 { \ 308 int __i; \ 309 u8 *ptr = (u8 *)_HexData; \ 310 _dbgdump("%s", DRIVER_PREFIX); \ 311 _dbgdump(_TitleString); \ 312 for( __i=0; __i<(int)_HexDataLen; __i++ ) \ 313 { \ 314 _dbgdump("%02X%s", ptr[__i], (((__i + 1) % 4) == 0)?" ":" "); \ 315 if (((__i + 1) % 16) == 0) _dbgdump("\n"); \ 316 } \ 317 _dbgdump("\n"); \ 318 } 319 #endif /* defined(_dbgdump) */ 320 #endif /* CONFIG_DEBUG_RTL871X */ 321 322 #ifdef CONFIG_DBG_COUNTER 323 #define DBG_COUNTER(counter) counter++ 324 #else 325 #define DBG_COUNTER(counter) 326 #endif 327 328 void dump_drv_version(void *sel); 329 void dump_log_level(void *sel); 330 void dump_drv_cfg(void *sel); 331 332 #ifdef CONFIG_SDIO_HCI 333 void sd_f0_reg_dump(void *sel, _adapter *adapter); 334 void sdio_local_reg_dump(void *sel, _adapter *adapter); 335 #endif /* CONFIG_SDIO_HCI */ 336 337 void mac_reg_dump(void *sel, _adapter *adapter); 338 void bb_reg_dump(void *sel, _adapter *adapter); 339 void rf_reg_dump(void *sel, _adapter *adapter); 340 341 bool rtw_fwdl_test_trigger_chksum_fail(void); 342 bool rtw_fwdl_test_trigger_wintint_rdy_fail(void); 343 bool rtw_del_rx_ampdu_test_trigger_no_tx_fail(void); 344 345 u32 rtw_get_wait_hiq_empty_ms(void); 346 void rtw_sink_rtp_seq_dbg( _adapter *adapter,_pkt *pkt); 347 348 struct sta_info; 349 void sta_rx_reorder_ctl_dump(void *sel, struct sta_info *sta); 350 351 struct dvobj_priv; 352 void dump_adapters_status(void *sel, struct dvobj_priv *dvobj); 353 354 #ifdef CONFIG_PROC_DEBUG 355 ssize_t proc_set_write_reg(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 356 int proc_get_read_reg(struct seq_file *m, void *v); 357 ssize_t proc_set_read_reg(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 358 359 int proc_get_fwstate(struct seq_file *m, void *v); 360 int proc_get_sec_info(struct seq_file *m, void *v); 361 int proc_get_mlmext_state(struct seq_file *m, void *v); 362 #ifdef CONFIG_LAYER2_ROAMING 363 int proc_get_roam_flags(struct seq_file *m, void *v); 364 ssize_t proc_set_roam_flags(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 365 int proc_get_roam_param(struct seq_file *m, void *v); 366 ssize_t proc_set_roam_param(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 367 ssize_t proc_set_roam_tgt_addr(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 368 #endif /* CONFIG_LAYER2_ROAMING */ 369 int proc_get_qos_option(struct seq_file *m, void *v); 370 int proc_get_ht_option(struct seq_file *m, void *v); 371 int proc_get_rf_info(struct seq_file *m, void *v); 372 int proc_get_scan_param(struct seq_file *m, void *v); 373 ssize_t proc_set_scan_param(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 374 int proc_get_scan_abort(struct seq_file *m, void *v); 375 #ifdef CONFIG_SCAN_BACKOP 376 int proc_get_backop_flags_sta(struct seq_file *m, void *v); 377 ssize_t proc_set_backop_flags_sta(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 378 int proc_get_backop_flags_ap(struct seq_file *m, void *v); 379 ssize_t proc_set_backop_flags_ap(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 380 #endif /* CONFIG_SCAN_BACKOP */ 381 int proc_get_survey_info(struct seq_file *m, void *v); 382 ssize_t proc_set_survey_info(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 383 int proc_get_ap_info(struct seq_file *m, void *v); 384 ssize_t proc_reset_trx_info(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 385 int proc_get_trx_info(struct seq_file *m, void *v); 386 int proc_get_rate_ctl(struct seq_file *m, void *v); 387 int proc_get_wifi_spec(struct seq_file *m, void *v); 388 ssize_t proc_set_rate_ctl(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 389 #ifdef DBG_RX_COUNTER_DUMP 390 int proc_get_rx_cnt_dump(struct seq_file *m, void *v); 391 ssize_t proc_set_rx_cnt_dump(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 392 #endif 393 int proc_get_dis_pwt(struct seq_file *m, void *v); 394 ssize_t proc_set_dis_pwt(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 395 396 int proc_get_suspend_resume_info(struct seq_file *m, void *v); 397 398 ssize_t proc_set_fwdl_test_case(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 399 ssize_t proc_set_del_rx_ampdu_test_case(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 400 #ifdef CONFIG_DFS_MASTER 401 int proc_get_dfs_master_test_case(struct seq_file *m, void *v); 402 ssize_t proc_set_dfs_master_test_case(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 403 #endif /* CONFIG_DFS_MASTER */ 404 ssize_t proc_set_wait_hiq_empty(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 405 406 #ifdef CONFIG_AP_MODE 407 int proc_get_all_sta_info(struct seq_file *m, void *v); 408 #endif /* CONFIG_AP_MODE */ 409 410 #ifdef DBG_MEMORY_LEAK 411 int proc_get_malloc_cnt(struct seq_file *m, void *v); 412 #endif /* DBG_MEMORY_LEAK */ 413 414 #ifdef CONFIG_FIND_BEST_CHANNEL 415 int proc_get_best_channel(struct seq_file *m, void *v); 416 ssize_t proc_set_best_channel(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 417 #endif /* CONFIG_FIND_BEST_CHANNEL */ 418 419 int proc_get_rx_signal(struct seq_file *m, void *v); 420 ssize_t proc_set_rx_signal(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 421 int proc_get_hw_status(struct seq_file *m, void *v); 422 423 #ifdef CONFIG_80211N_HT 424 int proc_get_ht_enable(struct seq_file *m, void *v); 425 ssize_t proc_set_ht_enable(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 426 427 int proc_get_bw_mode(struct seq_file *m, void *v); 428 ssize_t proc_set_bw_mode(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 429 430 int proc_get_ampdu_enable(struct seq_file *m, void *v); 431 ssize_t proc_set_ampdu_enable(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 432 433 int proc_get_mac_rptbuf(struct seq_file *m, void *v); 434 435 int proc_get_rx_ampdu(struct seq_file *m, void *v); 436 ssize_t proc_set_rx_ampdu(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 437 438 int proc_get_rx_stbc(struct seq_file *m, void *v); 439 ssize_t proc_set_rx_stbc(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 440 441 442 int proc_get_rx_ampdu_factor(struct seq_file *m, void *v); 443 ssize_t proc_set_rx_ampdu_factor(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 444 445 int proc_get_rx_ampdu_density(struct seq_file *m, void *v); 446 ssize_t proc_set_rx_ampdu_density(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 447 448 int proc_get_tx_ampdu_density(struct seq_file *m, void *v); 449 ssize_t proc_set_tx_ampdu_density(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 450 #endif /* CONFIG_80211N_HT */ 451 452 int proc_get_en_fwps(struct seq_file *m, void *v); 453 ssize_t proc_set_en_fwps(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 454 455 //int proc_get_two_path_rssi(struct seq_file *m, void *v); 456 //int proc_get_rssi_disp(struct seq_file *m, void *v); 457 //ssize_t proc_set_rssi_disp(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 458 459 #ifdef CONFIG_BT_COEXIST 460 int proc_get_btcoex_dbg(struct seq_file *m, void *v); 461 ssize_t proc_set_btcoex_dbg(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 462 int proc_get_btcoex_info(struct seq_file *m, void *v); 463 #endif /* CONFIG_BT_COEXIST */ 464 465 #if defined(DBG_CONFIG_ERROR_DETECT) 466 int proc_get_sreset(struct seq_file *m, void *v); 467 ssize_t proc_set_sreset(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 468 #endif /* DBG_CONFIG_ERROR_DETECT */ 469 470 int proc_get_odm_dbg_comp(struct seq_file *m, void *v); 471 ssize_t proc_set_odm_dbg_comp(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 472 int proc_get_odm_dbg_level(struct seq_file *m, void *v); 473 ssize_t proc_set_odm_dbg_level(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 474 475 int proc_get_odm_adaptivity(struct seq_file *m, void *v); 476 ssize_t proc_set_odm_adaptivity(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 477 478 #ifdef CONFIG_DBG_COUNTER 479 int proc_get_rx_logs(struct seq_file *m, void *v); 480 int proc_get_tx_logs(struct seq_file *m, void *v); 481 int proc_get_int_logs(struct seq_file *m, void *v); 482 #endif 483 484 #ifdef CONFIG_PCI_HCI 485 int proc_get_rx_ring(struct seq_file *m, void *v); 486 int proc_get_tx_ring(struct seq_file *m, void *v); 487 #endif 488 489 #ifdef CONFIG_GPIO_WAKEUP 490 int proc_get_wowlan_gpio_info(struct seq_file *m, void *v); 491 ssize_t proc_set_wowlan_gpio_info(struct file *file, const char __user *buffer, 492 size_t count, loff_t *pos, void *data); 493 #endif /*CONFIG_GPIO_WAKEUP*/ 494 495 #ifdef CONFIG_P2P_WOWLAN 496 int proc_get_p2p_wowlan_info(struct seq_file *m, void *v); 497 #endif /* CONFIG_P2P_WOWLAN */ 498 499 int proc_get_new_bcn_max(struct seq_file *m, void *v); 500 ssize_t proc_set_new_bcn_max(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 501 502 #ifdef CONFIG_POWER_SAVING 503 int proc_get_ps_info(struct seq_file *m, void *v); 504 #endif //CONFIG_POWER_SAVING 505 506 #ifdef CONFIG_TDLS 507 int proc_get_tdls_info(struct seq_file *m, void *v); 508 #endif 509 510 int proc_get_monitor(struct seq_file *m, void *v); 511 ssize_t proc_set_monitor(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 512 513 514 #ifdef CONFIG_PREALLOC_RX_SKB_BUFFER 515 int proc_get_rtkm_info(struct seq_file *m, void *v); 516 #endif /* CONFIG_PREALLOC_RX_SKB_BUFFER */ 517 518 #ifdef CONFIG_IEEE80211W 519 ssize_t proc_set_tx_sa_query(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 520 int proc_get_tx_sa_query(struct seq_file *m, void *v); 521 ssize_t proc_set_tx_deauth(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 522 int proc_get_tx_deauth(struct seq_file *m, void *v); 523 ssize_t proc_set_tx_auth(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 524 int proc_get_tx_auth(struct seq_file *m, void *v); 525 #endif /* CONFIG_IEEE80211W */ 526 527 #endif /* CONFIG_PROC_DEBUG */ 528 529 int proc_get_efuse_map(struct seq_file *m, void *v); 530 ssize_t proc_set_efuse_map(struct file *file, const char __user *buffer, size_t count, loff_t *pos, void *data); 531 532 #endif //__RTW_DEBUG_H__ 533 534