diff options
author | Tomas Winkler <tomas.winkler@intel.com> | 2008-04-15 00:16:10 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-04-16 15:59:59 -0400 |
commit | e2a722eba1b3aa504ae177353d100287398881c3 (patch) | |
tree | efe98aadadfd7c432ae6d108adff0d15c259096c /drivers/net/wireless/iwlwifi/iwl4965-base.c | |
parent | 7480513f5b436321f86f5a5210af5bf8edb19e9a (diff) |
iwlwifi: Fix byte count table for fragmented packets
This patch fix byte count table update. Table must be updated for each
fragment
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl4965-base.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl4965-base.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl4965-base.c b/drivers/net/wireless/iwlwifi/iwl4965-base.c index bfefb05e18e9..60c0b8375f24 100644 --- a/drivers/net/wireless/iwlwifi/iwl4965-base.c +++ b/drivers/net/wireless/iwlwifi/iwl4965-base.c | |||
@@ -575,11 +575,11 @@ int iwl4965_enqueue_hcmd(struct iwl_priv *priv, struct iwl_host_cmd *cmd) | |||
575 | txq->need_update = 1; | 575 | txq->need_update = 1; |
576 | 576 | ||
577 | /* Set up entry in queue's byte count circular buffer */ | 577 | /* Set up entry in queue's byte count circular buffer */ |
578 | ret = iwl4965_tx_queue_update_wr_ptr(priv, txq, 0); | 578 | priv->cfg->ops->lib->txq_update_byte_cnt_tbl(priv, txq, 0); |
579 | 579 | ||
580 | /* Increment and update queue's write index */ | 580 | /* Increment and update queue's write index */ |
581 | q->write_ptr = iwl_queue_inc_wrap(q->write_ptr, q->n_bd); | 581 | q->write_ptr = iwl_queue_inc_wrap(q->write_ptr, q->n_bd); |
582 | iwl4965_tx_queue_update_write_ptr(priv, txq); | 582 | ret = iwl4965_tx_queue_update_write_ptr(priv, txq); |
583 | 583 | ||
584 | spin_unlock_irqrestore(&priv->hcmd_lock, flags); | 584 | spin_unlock_irqrestore(&priv->hcmd_lock, flags); |
585 | return ret ? ret : idx; | 585 | return ret ? ret : idx; |
@@ -2392,7 +2392,7 @@ static int iwl4965_tx_skb(struct iwl_priv *priv, | |||
2392 | ieee80211_get_hdrlen(fc)); | 2392 | ieee80211_get_hdrlen(fc)); |
2393 | 2393 | ||
2394 | /* Set up entry for this TFD in Tx byte-count array */ | 2394 | /* Set up entry for this TFD in Tx byte-count array */ |
2395 | iwl4965_tx_queue_update_wr_ptr(priv, txq, len); | 2395 | priv->cfg->ops->lib->txq_update_byte_cnt_tbl(priv, txq, len); |
2396 | 2396 | ||
2397 | /* Tell device the write index *just past* this latest filled TFD */ | 2397 | /* Tell device the write index *just past* this latest filled TFD */ |
2398 | q->write_ptr = iwl_queue_inc_wrap(q->write_ptr, q->n_bd); | 2398 | q->write_ptr = iwl_queue_inc_wrap(q->write_ptr, q->n_bd); |