aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/main.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2015-03-27 16:30:37 -0400
committerJohannes Berg <johannes.berg@intel.com>2015-04-01 14:44:34 -0400
commitba8c3d6f16a1f9305c23ac1d2fd3992508c5ac03 (patch)
treec03bbdf0affccbd1f3a4fd0c239e59bb44f28e99 /net/mac80211/main.c
parentcef2fc1ce4326f7f24c3cf938b94a661fbe773e3 (diff)
mac80211: add an intermediate software queue implementation
This allows drivers to request per-vif and per-sta-tid queues from which they can pull frames. This makes it easier to keep the hardware queues short, and to improve fairness between clients and vifs. The task of scheduling packet transmission is left up to the driver - queueing is controlled by mac80211. Drivers can only dequeue packets by calling ieee80211_tx_dequeue. This makes it possible to add active queue management later without changing drivers using this code. This can also be used as a starting point to implement A-MSDU aggregation in a way that does not add artificially induced latency. Signed-off-by: Felix Fietkau <nbd@openwrt.org> [resolved minor context conflict, minor changes, endian annotations] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r--net/mac80211/main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c
index 51e0332a4589..df3051d96aff 100644
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
@@ -1039,6 +1039,9 @@ int ieee80211_register_hw(struct ieee80211_hw *hw)
1039 1039
1040 local->dynamic_ps_forced_timeout = -1; 1040 local->dynamic_ps_forced_timeout = -1;
1041 1041
1042 if (!local->hw.txq_ac_max_pending)
1043 local->hw.txq_ac_max_pending = 64;
1044
1042 result = ieee80211_wep_init(local); 1045 result = ieee80211_wep_init(local);
1043 if (result < 0) 1046 if (result < 0)
1044 wiphy_debug(local->hw.wiphy, "Failed to initialize wep: %d\n", 1047 wiphy_debug(local->hw.wiphy, "Failed to initialize wep: %d\n",