aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorWey-Yi Guy <wey-yi.w.guy@intel.com>2009-03-10 17:35:09 -0400
committerJohn W. Linville <linville@tuxdriver.com>2009-03-16 18:09:44 -0400
commit86b4766b059e071c5e8d680be48cf730355dca5a (patch)
tree2e1ad5e8fb36c0215c21d605d710a64f2f2c6251 /drivers
parentadb7b5e62ba84b57692ebfa12f4b80d6cf0801a9 (diff)
iwlwifi: remove un-necessary rs_tl_turn_on_agg() after agg enabled
After the MLME handshaking complete and tx aggregation started for the tid. Do not send unnecessary turn on aggregation request to mac80211. Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-agn-rs.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c
index 9bcebf2f4607..a6f4c74ff2b4 100644
--- a/drivers/net/wireless/iwlwifi/iwl-agn-rs.c
+++ b/drivers/net/wireless/iwlwifi/iwl-agn-rs.c
@@ -1700,6 +1700,7 @@ static void rs_rate_scale_perform(struct iwl_priv *priv,
1700 u16 high_low; 1700 u16 high_low;
1701 s32 sr; 1701 s32 sr;
1702 u8 tid = MAX_TID_COUNT; 1702 u8 tid = MAX_TID_COUNT;
1703 struct iwl_tid_data *tid_data;
1703 1704
1704 IWL_DEBUG_RATE(priv, "rate scale calculate new rate for skb\n"); 1705 IWL_DEBUG_RATE(priv, "rate scale calculate new rate for skb\n");
1705 1706
@@ -2035,8 +2036,15 @@ lq_update:
2035 if ((lq_sta->last_tpt > IWL_AGG_TPT_THREHOLD) && 2036 if ((lq_sta->last_tpt > IWL_AGG_TPT_THREHOLD) &&
2036 (lq_sta->tx_agg_tid_en & (1 << tid)) && 2037 (lq_sta->tx_agg_tid_en & (1 << tid)) &&
2037 (tid != MAX_TID_COUNT)) { 2038 (tid != MAX_TID_COUNT)) {
2038 IWL_DEBUG_RATE(priv, "try to aggregate tid %d\n", tid); 2039 tid_data =
2039 rs_tl_turn_on_agg(priv, tid, lq_sta, sta); 2040 &priv->stations[lq_sta->lq.sta_id].tid[tid];
2041 if (tid_data->agg.state == IWL_AGG_OFF) {
2042 IWL_DEBUG_RATE(priv,
2043 "try to aggregate tid %d\n",
2044 tid);
2045 rs_tl_turn_on_agg(priv, tid,
2046 lq_sta, sta);
2047 }
2040 } 2048 }
2041 lq_sta->action_counter = 0; 2049 lq_sta->action_counter = 0;
2042 rs_set_stay_in_table(priv, 0, lq_sta); 2050 rs_set_stay_in_table(priv, 0, lq_sta);