diff options
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 62 |
1 files changed, 10 insertions, 52 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index 156e42a003ae..155a20410017 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -23,6 +23,7 @@ | |||
23 | #include <linux/types.h> | 23 | #include <linux/types.h> |
24 | #include <linux/spinlock.h> | 24 | #include <linux/spinlock.h> |
25 | #include <linux/etherdevice.h> | 25 | #include <linux/etherdevice.h> |
26 | #include <net/cfg80211.h> | ||
26 | #include <net/wireless.h> | 27 | #include <net/wireless.h> |
27 | #include <net/iw_handler.h> | 28 | #include <net/iw_handler.h> |
28 | #include <net/mac80211.h> | 29 | #include <net/mac80211.h> |
@@ -142,7 +143,6 @@ typedef unsigned __bitwise__ ieee80211_tx_result; | |||
142 | #define IEEE80211_TX_FRAGMENTED BIT(0) | 143 | #define IEEE80211_TX_FRAGMENTED BIT(0) |
143 | #define IEEE80211_TX_UNICAST BIT(1) | 144 | #define IEEE80211_TX_UNICAST BIT(1) |
144 | #define IEEE80211_TX_PS_BUFFERED BIT(2) | 145 | #define IEEE80211_TX_PS_BUFFERED BIT(2) |
145 | #define IEEE80211_TX_PROBE_LAST_FRAG BIT(3) | ||
146 | 146 | ||
147 | struct ieee80211_tx_data { | 147 | struct ieee80211_tx_data { |
148 | struct sk_buff *skb; | 148 | struct sk_buff *skb; |
@@ -153,11 +153,6 @@ struct ieee80211_tx_data { | |||
153 | struct ieee80211_key *key; | 153 | struct ieee80211_key *key; |
154 | 154 | ||
155 | struct ieee80211_channel *channel; | 155 | struct ieee80211_channel *channel; |
156 | s8 rate_idx; | ||
157 | /* use this rate (if set) for last fragment; rate can | ||
158 | * be set to lower rate for the first fragments, e.g., | ||
159 | * when using CTS protection with IEEE 802.11g. */ | ||
160 | s8 last_frag_rate_idx; | ||
161 | 156 | ||
162 | /* Extra fragments (in addition to the first fragment | 157 | /* Extra fragments (in addition to the first fragment |
163 | * in skb) */ | 158 | * in skb) */ |
@@ -203,9 +198,7 @@ struct ieee80211_rx_data { | |||
203 | struct ieee80211_tx_stored_packet { | 198 | struct ieee80211_tx_stored_packet { |
204 | struct sk_buff *skb; | 199 | struct sk_buff *skb; |
205 | struct sk_buff **extra_frag; | 200 | struct sk_buff **extra_frag; |
206 | s8 last_frag_rate_idx; | ||
207 | int num_extra_frag; | 201 | int num_extra_frag; |
208 | bool last_frag_rate_ctrl_probe; | ||
209 | }; | 202 | }; |
210 | 203 | ||
211 | struct beacon_data { | 204 | struct beacon_data { |
@@ -219,9 +212,6 @@ struct ieee80211_if_ap { | |||
219 | 212 | ||
220 | struct list_head vlans; | 213 | struct list_head vlans; |
221 | 214 | ||
222 | u8 ssid[IEEE80211_MAX_SSID_LEN]; | ||
223 | size_t ssid_len; | ||
224 | |||
225 | /* yes, this looks ugly, but guarantees that we can later use | 215 | /* yes, this looks ugly, but guarantees that we can later use |
226 | * bitmap_empty :) | 216 | * bitmap_empty :) |
227 | * NB: don't touch this bitmap, use sta_info_{set,clear}_tim_bit */ | 217 | * NB: don't touch this bitmap, use sta_info_{set,clear}_tim_bit */ |
@@ -255,26 +245,6 @@ struct mesh_preq_queue { | |||
255 | u8 flags; | 245 | u8 flags; |
256 | }; | 246 | }; |
257 | 247 | ||
258 | struct mesh_config { | ||
259 | /* Timeouts in ms */ | ||
260 | /* Mesh plink management parameters */ | ||
261 | u16 dot11MeshRetryTimeout; | ||
262 | u16 dot11MeshConfirmTimeout; | ||
263 | u16 dot11MeshHoldingTimeout; | ||
264 | u16 dot11MeshMaxPeerLinks; | ||
265 | u8 dot11MeshMaxRetries; | ||
266 | u8 dot11MeshTTL; | ||
267 | bool auto_open_plinks; | ||
268 | /* HWMP parameters */ | ||
269 | u8 dot11MeshHWMPmaxPREQretries; | ||
270 | u32 path_refresh_time; | ||
271 | u16 min_discovery_timeout; | ||
272 | u32 dot11MeshHWMPactivePathTimeout; | ||
273 | u16 dot11MeshHWMPpreqMinInterval; | ||
274 | u16 dot11MeshHWMPnetDiameterTraversalTime; | ||
275 | }; | ||
276 | |||
277 | |||
278 | /* flags used in struct ieee80211_if_sta.flags */ | 248 | /* flags used in struct ieee80211_if_sta.flags */ |
279 | #define IEEE80211_STA_SSID_SET BIT(0) | 249 | #define IEEE80211_STA_SSID_SET BIT(0) |
280 | #define IEEE80211_STA_BSSID_SET BIT(1) | 250 | #define IEEE80211_STA_BSSID_SET BIT(1) |
@@ -438,8 +408,7 @@ struct ieee80211_sub_if_data { | |||
438 | struct ieee80211_key *keys[NUM_DEFAULT_KEYS]; | 408 | struct ieee80211_key *keys[NUM_DEFAULT_KEYS]; |
439 | struct ieee80211_key *default_key; | 409 | struct ieee80211_key *default_key; |
440 | 410 | ||
441 | /* BSS configuration for this interface. */ | 411 | u16 sequence_number; |
442 | struct ieee80211_bss_conf bss_conf; | ||
443 | 412 | ||
444 | /* | 413 | /* |
445 | * AP this belongs to: self in AP mode and | 414 | * AP this belongs to: self in AP mode and |
@@ -633,8 +602,6 @@ struct ieee80211_local { | |||
633 | 602 | ||
634 | int rts_threshold; | 603 | int rts_threshold; |
635 | int fragmentation_threshold; | 604 | int fragmentation_threshold; |
636 | int short_retry_limit; /* dot11ShortRetryLimit */ | ||
637 | int long_retry_limit; /* dot11LongRetryLimit */ | ||
638 | 605 | ||
639 | struct crypto_blkcipher *wep_tx_tfm; | 606 | struct crypto_blkcipher *wep_tx_tfm; |
640 | struct crypto_blkcipher *wep_rx_tfm; | 607 | struct crypto_blkcipher *wep_rx_tfm; |
@@ -727,8 +694,6 @@ struct ieee80211_local { | |||
727 | struct dentry *rcdir; | 694 | struct dentry *rcdir; |
728 | struct dentry *rcname; | 695 | struct dentry *rcname; |
729 | struct dentry *frequency; | 696 | struct dentry *frequency; |
730 | struct dentry *antenna_sel_tx; | ||
731 | struct dentry *antenna_sel_rx; | ||
732 | struct dentry *rts_threshold; | 697 | struct dentry *rts_threshold; |
733 | struct dentry *fragmentation_threshold; | 698 | struct dentry *fragmentation_threshold; |
734 | struct dentry *short_retry_limit; | 699 | struct dentry *short_retry_limit; |
@@ -817,7 +782,7 @@ struct ieee802_11_elems { | |||
817 | u8 *wmm_info; | 782 | u8 *wmm_info; |
818 | u8 *wmm_param; | 783 | u8 *wmm_param; |
819 | struct ieee80211_ht_cap *ht_cap_elem; | 784 | struct ieee80211_ht_cap *ht_cap_elem; |
820 | struct ieee80211_ht_addt_info *ht_info_elem; | 785 | struct ieee80211_ht_info *ht_info_elem; |
821 | u8 *mesh_config; | 786 | u8 *mesh_config; |
822 | u8 *mesh_id; | 787 | u8 *mesh_id; |
823 | u8 *peer_link; | 788 | u8 *peer_link; |
@@ -869,11 +834,6 @@ static inline struct ieee80211_hw *local_to_hw( | |||
869 | return &local->hw; | 834 | return &local->hw; |
870 | } | 835 | } |
871 | 836 | ||
872 | struct sta_attribute { | ||
873 | struct attribute attr; | ||
874 | ssize_t (*show)(const struct sta_info *, char *buf); | ||
875 | ssize_t (*store)(struct sta_info *, const char *buf, size_t count); | ||
876 | }; | ||
877 | 837 | ||
878 | static inline int ieee80211_bssid_match(const u8 *raddr, const u8 *addr) | 838 | static inline int ieee80211_bssid_match(const u8 *raddr, const u8 *addr) |
879 | { | 839 | { |
@@ -882,12 +842,9 @@ static inline int ieee80211_bssid_match(const u8 *raddr, const u8 *addr) | |||
882 | } | 842 | } |
883 | 843 | ||
884 | 844 | ||
885 | int ieee80211_hw_config(struct ieee80211_local *local); | 845 | int ieee80211_hw_config(struct ieee80211_local *local, u32 changed); |
886 | int ieee80211_if_config(struct ieee80211_sub_if_data *sdata, u32 changed); | 846 | int ieee80211_if_config(struct ieee80211_sub_if_data *sdata, u32 changed); |
887 | void ieee80211_tx_set_protected(struct ieee80211_tx_data *tx); | 847 | void ieee80211_tx_set_protected(struct ieee80211_tx_data *tx); |
888 | u32 ieee80211_handle_ht(struct ieee80211_local *local, int enable_ht, | ||
889 | struct ieee80211_ht_info *req_ht_cap, | ||
890 | struct ieee80211_ht_bss_info *req_bss_cap); | ||
891 | void ieee80211_bss_info_change_notify(struct ieee80211_sub_if_data *sdata, | 848 | void ieee80211_bss_info_change_notify(struct ieee80211_sub_if_data *sdata, |
892 | u32 changed); | 849 | u32 changed); |
893 | void ieee80211_configure_filter(struct ieee80211_local *local); | 850 | void ieee80211_configure_filter(struct ieee80211_local *local); |
@@ -968,11 +925,12 @@ int ieee80211_monitor_start_xmit(struct sk_buff *skb, struct net_device *dev); | |||
968 | int ieee80211_subif_start_xmit(struct sk_buff *skb, struct net_device *dev); | 925 | int ieee80211_subif_start_xmit(struct sk_buff *skb, struct net_device *dev); |
969 | 926 | ||
970 | /* HT */ | 927 | /* HT */ |
971 | int ieee80211_ht_cap_ie_to_ht_info(struct ieee80211_ht_cap *ht_cap_ie, | 928 | void ieee80211_ht_cap_ie_to_sta_ht_cap(struct ieee80211_supported_band *sband, |
972 | struct ieee80211_ht_info *ht_info); | 929 | struct ieee80211_ht_cap *ht_cap_ie, |
973 | int ieee80211_ht_addt_info_ie_to_ht_bss_info( | 930 | struct ieee80211_sta_ht_cap *ht_cap); |
974 | struct ieee80211_ht_addt_info *ht_add_info_ie, | 931 | u32 ieee80211_enable_ht(struct ieee80211_sub_if_data *sdata, |
975 | struct ieee80211_ht_bss_info *bss_info); | 932 | struct ieee80211_ht_info *hti, |
933 | u16 ap_ht_cap_flags); | ||
976 | void ieee80211_send_bar(struct ieee80211_sub_if_data *sdata, u8 *ra, u16 tid, u16 ssn); | 934 | void ieee80211_send_bar(struct ieee80211_sub_if_data *sdata, u8 *ra, u16 tid, u16 ssn); |
977 | 935 | ||
978 | void ieee80211_sta_stop_rx_ba_session(struct ieee80211_sub_if_data *sdata, u8 *da, | 936 | void ieee80211_sta_stop_rx_ba_session(struct ieee80211_sub_if_data *sdata, u8 *da, |