aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorRon Rindjunsky <ron.rindjunsky@intel.com>2008-01-28 07:07:17 -0500
committerJohn W. Linville <linville@tuxdriver.com>2008-02-29 15:19:14 -0500
commiteadc8d9e9047266a8914eb2ed4d36e797ce540d1 (patch)
treed4abb405e46c279aae81f32106000090f70e9a53 /net/mac80211/ieee80211_i.h
parent80656c20315558a9bc5c5b7f7c6949fa72277afd (diff)
mac80211: A-MPDU Tx adding basic functionality
This patch adds the following abilities to mac80211: - start A-MPDU Tx session - stop A-MPDU Tx session - call backs to start/stop A-MPDU Tx session - sending addBA request - processing addBA response Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index 72ecbf7bf962..8a24c2c6ebc1 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -407,6 +407,8 @@ struct ieee80211_sub_if_data *vif_to_sdata(struct ieee80211_vif *p)
407enum { 407enum {
408 IEEE80211_RX_MSG = 1, 408 IEEE80211_RX_MSG = 1,
409 IEEE80211_TX_STATUS_MSG = 2, 409 IEEE80211_TX_STATUS_MSG = 2,
410 IEEE80211_DELBA_MSG = 3,
411 IEEE80211_ADDBA_MSG = 4,
410}; 412};
411 413
412struct ieee80211_local { 414struct ieee80211_local {
@@ -627,6 +629,12 @@ struct ieee80211_local {
627#endif 629#endif
628}; 630};
629 631
632/* this struct represents 802.11n's RA/TID combination */
633struct ieee80211_ra_tid {
634 u8 ra[ETH_ALEN];
635 u16 tid;
636};
637
630static inline struct ieee80211_local *hw_to_local( 638static inline struct ieee80211_local *hw_to_local(
631 struct ieee80211_hw *hw) 639 struct ieee80211_hw *hw)
632{ 640{
@@ -782,9 +790,15 @@ int ieee80211_ht_cap_ie_to_ht_info(struct ieee80211_ht_cap *ht_cap_ie,
782int ieee80211_ht_addt_info_ie_to_ht_bss_info( 790int ieee80211_ht_addt_info_ie_to_ht_bss_info(
783 struct ieee80211_ht_addt_info *ht_add_info_ie, 791 struct ieee80211_ht_addt_info *ht_add_info_ie,
784 struct ieee80211_ht_bss_info *bss_info); 792 struct ieee80211_ht_bss_info *bss_info);
793void ieee80211_send_addba_request(struct net_device *dev, const u8 *da,
794 u16 tid, u8 dialog_token, u16 start_seq_num,
795 u16 agg_size, u16 timeout);
796void ieee80211_send_delba(struct net_device *dev, const u8 *da, u16 tid,
797 u16 initiator, u16 reason_code);
785void ieee80211_sta_stop_rx_ba_session(struct net_device *dev, u8 *da, 798void ieee80211_sta_stop_rx_ba_session(struct net_device *dev, u8 *da,
786 u16 tid, u16 initiator, u16 reason); 799 u16 tid, u16 initiator, u16 reason);
787void sta_rx_agg_session_timer_expired(unsigned long data); 800void sta_rx_agg_session_timer_expired(unsigned long data);
801void sta_addba_resp_timer_expired(unsigned long data);
788/* ieee80211_iface.c */ 802/* ieee80211_iface.c */
789int ieee80211_if_add(struct net_device *dev, const char *name, 803int ieee80211_if_add(struct net_device *dev, const char *name,
790 struct net_device **new_dev, int type); 804 struct net_device **new_dev, int type);