aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi
diff options
context:
space:
mode:
authorJohn W. Linville <linville@tuxdriver.com>2010-04-09 13:42:26 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-04-09 13:42:26 -0400
commit1805a34fa33b6284ab8139dd43779b94de58669a (patch)
treeeb4c1fb002b5ac26bba7e580c564243535269706 /drivers/net/wireless/iwlwifi
parentace5d5de6bbaff00d3b5dd7ea8f160b570fdb726 (diff)
parentece6444c2fe80dab679beb5f0d58b091f1933b00 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
Conflicts: drivers/net/wireless/iwlwifi/iwl-4965.c
Diffstat (limited to 'drivers/net/wireless/iwlwifi')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-4965.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-4965.c b/drivers/net/wireless/iwlwifi/iwl-4965.c
index 6edae9b83bb..8c889fdddf0 100644
--- a/drivers/net/wireless/iwlwifi/iwl-4965.c
+++ b/drivers/net/wireless/iwlwifi/iwl-4965.c
@@ -2014,7 +2014,9 @@ static void iwl4965_rx_reply_tx(struct iwl_priv *priv,
2014 IWL_DEBUG_TX_REPLY(priv, "Retry scheduler reclaim scd_ssn " 2014 IWL_DEBUG_TX_REPLY(priv, "Retry scheduler reclaim scd_ssn "
2015 "%d index %d\n", scd_ssn , index); 2015 "%d index %d\n", scd_ssn , index);
2016 freed = iwlagn_tx_queue_reclaim(priv, txq_id, index); 2016 freed = iwlagn_tx_queue_reclaim(priv, txq_id, index);
2017 iwl_free_tfds_in_queue(priv, sta_id, tid, freed); 2017 if (qc)
2018 iwl_free_tfds_in_queue(priv, sta_id,
2019 tid, freed);
2018 2020
2019 if (priv->mac80211_registered && 2021 if (priv->mac80211_registered &&
2020 (iwl_queue_space(&txq->q) > txq->q.low_mark) && 2022 (iwl_queue_space(&txq->q) > txq->q.low_mark) &&
@@ -2040,14 +2042,17 @@ static void iwl4965_rx_reply_tx(struct iwl_priv *priv,
2040 tx_resp->failure_frame); 2042 tx_resp->failure_frame);
2041 2043
2042 freed = iwlagn_tx_queue_reclaim(priv, txq_id, index); 2044 freed = iwlagn_tx_queue_reclaim(priv, txq_id, index);
2043 iwl_free_tfds_in_queue(priv, sta_id, tid, freed); 2045 if (qc && likely(sta_id != IWL_INVALID_STATION))
2046 iwl_free_tfds_in_queue(priv, sta_id, tid, freed);
2047 else if (sta_id == IWL_INVALID_STATION)
2048 IWL_DEBUG_TX_REPLY(priv, "Station not known\n");
2044 2049
2045 if (priv->mac80211_registered && 2050 if (priv->mac80211_registered &&
2046 (iwl_queue_space(&txq->q) > txq->q.low_mark)) 2051 (iwl_queue_space(&txq->q) > txq->q.low_mark))
2047 iwl_wake_queue(priv, txq_id); 2052 iwl_wake_queue(priv, txq_id);
2048 } 2053 }
2049 2054 if (qc && likely(sta_id != IWL_INVALID_STATION))
2050 iwlagn_txq_check_empty(priv, sta_id, tid, txq_id); 2055 iwlagn_txq_check_empty(priv, sta_id, tid, txq_id);
2051 2056
2052 if (iwl_check_bits(status, TX_ABORT_REQUIRED_MSK)) 2057 if (iwl_check_bits(status, TX_ABORT_REQUIRED_MSK))
2053 IWL_ERR(priv, "TODO: Implement Tx ABORT REQUIRED!!!\n"); 2058 IWL_ERR(priv, "TODO: Implement Tx ABORT REQUIRED!!!\n");