aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index 18b91601770a..a74d6738b30a 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -538,6 +538,10 @@ enum {
538 IEEE80211_ADDBA_MSG = 4, 538 IEEE80211_ADDBA_MSG = 4,
539}; 539};
540 540
541enum queue_stop_reason {
542 IEEE80211_QUEUE_STOP_REASON_DRIVER,
543};
544
541/* maximum number of hardware queues we support. */ 545/* maximum number of hardware queues we support. */
542#define QD_MAX_QUEUES (IEEE80211_MAX_AMPDU_QUEUES + IEEE80211_MAX_QUEUES) 546#define QD_MAX_QUEUES (IEEE80211_MAX_AMPDU_QUEUES + IEEE80211_MAX_QUEUES)
543 547
@@ -554,7 +558,8 @@ struct ieee80211_local {
554 const struct ieee80211_ops *ops; 558 const struct ieee80211_ops *ops;
555 559
556 unsigned long queue_pool[BITS_TO_LONGS(QD_MAX_QUEUES)]; 560 unsigned long queue_pool[BITS_TO_LONGS(QD_MAX_QUEUES)];
557 561 unsigned long queue_stop_reasons[IEEE80211_MAX_QUEUES];
562 spinlock_t queue_stop_reason_lock;
558 struct net_device *mdev; /* wmaster# - "master" 802.11 device */ 563 struct net_device *mdev; /* wmaster# - "master" 802.11 device */
559 int open_count; 564 int open_count;
560 int monitors, cooked_mntrs; 565 int monitors, cooked_mntrs;
@@ -972,6 +977,11 @@ int ieee80211_set_freq(struct ieee80211_sub_if_data *sdata, int freq);
972u64 ieee80211_mandatory_rates(struct ieee80211_local *local, 977u64 ieee80211_mandatory_rates(struct ieee80211_local *local,
973 enum ieee80211_band band); 978 enum ieee80211_band band);
974 979
980void ieee80211_wake_queues_by_reason(struct ieee80211_hw *hw,
981 enum queue_stop_reason reason);
982void ieee80211_stop_queues_by_reason(struct ieee80211_hw *hw,
983 enum queue_stop_reason reason);
984
975#ifdef CONFIG_MAC80211_NOINLINE 985#ifdef CONFIG_MAC80211_NOINLINE
976#define debug_noinline noinline 986#define debug_noinline noinline
977#else 987#else