aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rtlwifi/base.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/rtlwifi/base.h')
-rw-r--r--drivers/net/wireless/rtlwifi/base.h55
1 files changed, 30 insertions, 25 deletions
diff --git a/drivers/net/wireless/rtlwifi/base.h b/drivers/net/wireless/rtlwifi/base.h
index 0cd07420777a..982f2450feea 100644
--- a/drivers/net/wireless/rtlwifi/base.h
+++ b/drivers/net/wireless/rtlwifi/base.h
@@ -11,10 +11,6 @@
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details. 12 * more details.
13 * 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 * The full GNU General Public License is included in this distribution in the 14 * The full GNU General Public License is included in this distribution in the
19 * file called LICENSE. 15 * file called LICENSE.
20 * 16 *
@@ -41,7 +37,7 @@ enum ap_peer {
41 PEER_MARV = 7, 37 PEER_MARV = 7,
42 PEER_AIRGO = 9, 38 PEER_AIRGO = 9,
43 PEER_MAX = 10, 39 PEER_MAX = 10,
44} ; 40};
45 41
46#define RTL_DUMMY_OFFSET 0 42#define RTL_DUMMY_OFFSET 0
47#define RTL_DUMMY_UNIT 8 43#define RTL_DUMMY_UNIT 8
@@ -55,6 +51,16 @@ enum ap_peer {
55#define MAX_BIT_RATE_40MHZ_MCS15 300 /* Mbps */ 51#define MAX_BIT_RATE_40MHZ_MCS15 300 /* Mbps */
56#define MAX_BIT_RATE_40MHZ_MCS7 150 /* Mbps */ 52#define MAX_BIT_RATE_40MHZ_MCS7 150 /* Mbps */
57 53
54#define MAX_BIT_RATE_SHORT_GI_2NSS_80MHZ_MCS9 867 /* Mbps */
55#define MAX_BIT_RATE_SHORT_GI_2NSS_80MHZ_MCS7 650 /* Mbps */
56#define MAX_BIT_RATE_LONG_GI_2NSS_80MHZ_MCS9 780 /* Mbps */
57#define MAX_BIT_RATE_LONG_GI_2NSS_80MHZ_MCS7 585 /* Mbps */
58
59#define MAX_BIT_RATE_SHORT_GI_1NSS_80MHZ_MCS9 434 /* Mbps */
60#define MAX_BIT_RATE_SHORT_GI_1NSS_80MHZ_MCS7 325 /* Mbps */
61#define MAX_BIT_RATE_LONG_GI_1NSS_80MHZ_MCS9 390 /* Mbps */
62#define MAX_BIT_RATE_LONG_GI_1NSS_80MHZ_MCS7 293 /* Mbps */
63
58#define RTL_RATE_COUNT_LEGACY 12 64#define RTL_RATE_COUNT_LEGACY 12
59#define RTL_CHANNEL_COUNT 14 65#define RTL_CHANNEL_COUNT 14
60 66
@@ -78,9 +84,9 @@ enum ap_peer {
78#define SET_80211_PS_POLL_AID(_hdr, _val) \ 84#define SET_80211_PS_POLL_AID(_hdr, _val) \
79 (*(u16 *)((u8 *)(_hdr) + 2) = _val) 85 (*(u16 *)((u8 *)(_hdr) + 2) = _val)
80#define SET_80211_PS_POLL_BSSID(_hdr, _val) \ 86#define SET_80211_PS_POLL_BSSID(_hdr, _val) \
81 memcpy(((u8 *)(_hdr)) + 4, (u8 *)(_val), ETH_ALEN) 87 ether_addr_copy(((u8 *)(_hdr)) + 4, (u8 *)(_val))
82#define SET_80211_PS_POLL_TA(_hdr, _val) \ 88#define SET_80211_PS_POLL_TA(_hdr, _val) \
83 memcpy(((u8 *)(_hdr)) + 10, (u8 *)(_val), ETH_ALEN) 89 ether_addr_copy(((u8 *)(_hdr))+10, (u8 *)(_val))
84 90
85#define SET_80211_HDR_DURATION(_hdr, _val) \ 91#define SET_80211_HDR_DURATION(_hdr, _val) \
86 (*(u16 *)((u8 *)(_hdr) + FRAME_OFFSET_DURATION) = le16_to_cpu(_val)) 92 (*(u16 *)((u8 *)(_hdr) + FRAME_OFFSET_DURATION) = le16_to_cpu(_val))
@@ -113,23 +119,27 @@ void rtl_init_rx_config(struct ieee80211_hw *hw);
113void rtl_init_rfkill(struct ieee80211_hw *hw); 119void rtl_init_rfkill(struct ieee80211_hw *hw);
114void rtl_deinit_rfkill(struct ieee80211_hw *hw); 120void rtl_deinit_rfkill(struct ieee80211_hw *hw);
115 121
116void rtl_beacon_statistic(struct ieee80211_hw *hw, struct sk_buff *skb); 122void rtl_watch_dog_timer_callback(unsigned long data);
117void rtl_deinit_deferred_work(struct ieee80211_hw *hw); 123void rtl_deinit_deferred_work(struct ieee80211_hw *hw);
118 124
119bool rtl_action_proc(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx); 125bool rtl_action_proc(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx);
126int rtlwifi_rate_mapping(struct ieee80211_hw *hw,
127 bool isht, u8 desc_rate, bool first_ampdu);
128bool rtl_tx_mgmt_proc(struct ieee80211_hw *hw, struct sk_buff *skb);
120u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx); 129u8 rtl_is_special_data(struct ieee80211_hw *hw, struct sk_buff *skb, u8 is_tx);
121 130
131void rtl_beacon_statistic(struct ieee80211_hw *hw, struct sk_buff *skb);
122void rtl_watch_dog_timer_callback(unsigned long data); 132void rtl_watch_dog_timer_callback(unsigned long data);
123int rtl_tx_agg_start(struct ieee80211_hw *hw, struct ieee80211_sta *sta, 133int rtl_tx_agg_start(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
124 u16 tid, u16 *ssn); 134 struct ieee80211_sta *sta, u16 tid, u16 *ssn);
125int rtl_tx_agg_stop(struct ieee80211_hw *hw, struct ieee80211_sta *sta, 135int rtl_tx_agg_stop(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
126 u16 tid); 136 struct ieee80211_sta *sta, u16 tid);
127int rtl_tx_agg_oper(struct ieee80211_hw *hw, struct ieee80211_sta *sta, 137int rtl_tx_agg_oper(struct ieee80211_hw *hw,
128 u16 tid); 138 struct ieee80211_sta *sta, u16 tid);
129int rtl_rx_agg_start(struct ieee80211_hw *hw, struct ieee80211_sta *sta, 139int rtl_rx_agg_start(struct ieee80211_hw *hw,
130 u16 tid); 140 struct ieee80211_sta *sta, u16 tid);
131int rtl_rx_agg_stop(struct ieee80211_hw *hw, struct ieee80211_sta *sta, 141int rtl_rx_agg_stop(struct ieee80211_hw *hw,
132 u16 tid); 142 struct ieee80211_sta *sta, u16 tid);
133void rtl_watchdog_wq_callback(void *data); 143void rtl_watchdog_wq_callback(void *data);
134void rtl_fwevt_wq_callback(void *data); 144void rtl_fwevt_wq_callback(void *data);
135 145
@@ -139,19 +149,14 @@ void rtl_get_tcb_desc(struct ieee80211_hw *hw,
139 struct sk_buff *skb, struct rtl_tcb_desc *tcb_desc); 149 struct sk_buff *skb, struct rtl_tcb_desc *tcb_desc);
140 150
141int rtl_send_smps_action(struct ieee80211_hw *hw, 151int rtl_send_smps_action(struct ieee80211_hw *hw,
142 struct ieee80211_sta *sta, 152 struct ieee80211_sta *sta,
143 enum ieee80211_smps_mode smps); 153 enum ieee80211_smps_mode smps);
144u8 *rtl_find_ie(u8 *data, unsigned int len, u8 ie); 154u8 *rtl_find_ie(u8 *data, unsigned int len, u8 ie);
145void rtl_recognize_peer(struct ieee80211_hw *hw, u8 *data, unsigned int len); 155void rtl_recognize_peer(struct ieee80211_hw *hw, u8 *data, unsigned int len);
146u8 rtl_tid_to_ac(u8 tid); 156u8 rtl_tid_to_ac(u8 tid);
147extern struct attribute_group rtl_attribute_group; 157extern struct attribute_group rtl_attribute_group;
148void rtl_easy_concurrent_retrytimer_callback(unsigned long data); 158void rtl_easy_concurrent_retrytimer_callback(unsigned long data);
149extern struct rtl_global_var rtl_global_var; 159extern struct rtl_global_var rtl_global_var;
150int rtlwifi_rate_mapping(struct ieee80211_hw *hw,
151 bool isht, u8 desc_rate, bool first_ampdu);
152bool rtl_tx_mgmt_proc(struct ieee80211_hw *hw, struct sk_buff *skb);
153struct sk_buff *rtl_make_del_ba(struct ieee80211_hw *hw,
154 u8 *sa, u8 *bssid, u16 tid);
155void rtl_phy_scan_operation_backup(struct ieee80211_hw *hw, u8 operation); 160void rtl_phy_scan_operation_backup(struct ieee80211_hw *hw, u8 operation);
156 161
157#endif 162#endif