1/****************************************************************************** 2 * 3 * Copyright(c) 2009-2012 Realtek Corporation. 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 * The full GNU General Public License is included in this distribution in the 15 * file called LICENSE. 16 * 17 * Contact Information: 18 * wlanfae <wlanfae@realtek.com> 19 * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park, 20 * Hsinchu 300, Taiwan. 21 * 22 * Larry Finger <Larry.Finger@lwfinger.net> 23 * 24 *****************************************************************************/ 25 26#ifndef __RTL_CORE_H__ 27#define __RTL_CORE_H__ 28 29#define RTL_SUPPORTED_FILTERS \ 30 (FIF_PROMISC_IN_BSS | \ 31 FIF_ALLMULTI | FIF_CONTROL | \ 32 FIF_OTHER_BSS | \ 33 FIF_FCSFAIL | \ 34 FIF_BCN_PRBRESP_PROMISC) 35 36#define DM_DIG_THRESH_HIGH 40 37#define DM_DIG_THRESH_LOW 35 38#define DM_FALSEALARM_THRESH_LOW 400 39#define DM_FALSEALARM_THRESH_HIGH 1000 40 41#define DM_DIG_MAX 0x3e 42#define DM_DIG_MIN 0x1e 43#define DM_DIG_MAX_AP 0x32 44#define DM_DIG_BACKOFF_MAX 12 45#define DM_DIG_BACKOFF_MIN -4 46#define DM_DIG_BACKOFF_DEFAULT 10 47 48enum cck_packet_detection_threshold { 49 CCK_PD_STAGE_LOWRSSI = 0, 50 CCK_PD_STAGE_HIGHRSSI = 1, 51 CCK_FA_STAGE_LOW = 2, 52 CCK_FA_STAGE_HIGH = 3, 53 CCK_PD_STAGE_MAX = 4, 54}; 55 56enum dm_dig_ext_port_alg_e { 57 DIG_EXT_PORT_STAGE_0 = 0, 58 DIG_EXT_PORT_STAGE_1 = 1, 59 DIG_EXT_PORT_STAGE_2 = 2, 60 DIG_EXT_PORT_STAGE_3 = 3, 61 DIG_EXT_PORT_STAGE_MAX = 4, 62}; 63 64enum dm_dig_connect_e { 65 DIG_STA_DISCONNECT, 66 DIG_STA_CONNECT, 67 DIG_STA_BEFORE_CONNECT, 68 DIG_MULTISTA_DISCONNECT, 69 DIG_MULTISTA_CONNECT, 70 DIG_AP_DISCONNECT, 71 DIG_AP_CONNECT, 72 DIG_AP_ADD_STATION, 73 DIG_CONNECT_MAX 74}; 75 76extern const struct ieee80211_ops rtl_ops; 77void rtl_fw_cb(const struct firmware *firmware, void *context); 78void rtl_wowlan_fw_cb(const struct firmware *firmware, void *context); 79void rtl_addr_delay(u32 addr); 80void rtl_rfreg_delay(struct ieee80211_hw *hw, enum radio_path rfpath, u32 addr, 81 u32 mask, u32 data); 82void rtl_bb_delay(struct ieee80211_hw *hw, u32 addr, u32 data); 83bool rtl_cmd_send_packet(struct ieee80211_hw *hw, struct sk_buff *skb); 84bool rtl_btc_status_false(void); 85void rtl_dm_diginit(struct ieee80211_hw *hw, u32 cur_igval); 86 87#endif 88