aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2008-05-16 18:57:14 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-05-21 21:48:14 -0400
commite2530083609148a7835b54c431f6b8956407c1f6 (patch)
tree8ed43347541444c7a72d2c79f550f69a93cad591 /net/mac80211/ieee80211_i.h
parenteefce91a384a64c7bbf913eb08c4adfb911c3639 (diff)
mac80211: use multi-queue master netdevice
This patch updates mac80211 and drivers to be multi-queue aware and use that instead of the internal queue mapping. Also does a number of cleanups in various pieces of the code that fall out and reduces internal mac80211 state size. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h16
1 files changed, 10 insertions, 6 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index 86a861251e8c..7d614cdcefcb 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -594,7 +594,7 @@ struct ieee80211_local {
594 struct sta_info *sta_hash[STA_HASH_SIZE]; 594 struct sta_info *sta_hash[STA_HASH_SIZE];
595 struct timer_list sta_cleanup; 595 struct timer_list sta_cleanup;
596 596
597 unsigned long state[IEEE80211_MAX_QUEUES + IEEE80211_MAX_AMPDU_QUEUES]; 597 unsigned long queues_pending[BITS_TO_LONGS(IEEE80211_MAX_QUEUES)];
598 struct ieee80211_tx_stored_packet pending_packet[IEEE80211_MAX_QUEUES]; 598 struct ieee80211_tx_stored_packet pending_packet[IEEE80211_MAX_QUEUES];
599 struct tasklet_struct tx_pending_tasklet; 599 struct tasklet_struct tx_pending_tasklet;
600 600
@@ -758,6 +758,15 @@ struct ieee80211_local {
758#endif 758#endif
759}; 759};
760 760
761static inline int ieee80211_is_multiqueue(struct ieee80211_local *local)
762{
763#ifdef CONFIG_MAC80211_QOS
764 return netif_is_multiqueue(local->mdev);
765#else
766 return 0;
767#endif
768}
769
761/* this struct represents 802.11n's RA/TID combination */ 770/* this struct represents 802.11n's RA/TID combination */
762struct ieee80211_ra_tid { 771struct ieee80211_ra_tid {
763 u8 ra[ETH_ALEN]; 772 u8 ra[ETH_ALEN];
@@ -827,11 +836,6 @@ static inline struct ieee80211_hw *local_to_hw(
827 return &local->hw; 836 return &local->hw;
828} 837}
829 838
830enum ieee80211_link_state_t {
831 IEEE80211_LINK_STATE_XOFF = 0,
832 IEEE80211_LINK_STATE_PENDING,
833};
834
835struct sta_attribute { 839struct sta_attribute {
836 struct attribute attr; 840 struct attribute attr;
837 ssize_t (*show)(const struct sta_info *, char *buf); 841 ssize_t (*show)(const struct sta_info *, char *buf);