iwlwifi: add debugging for TX path
authorReinette Chatre <reinette.chatre@intel.com>
Tue, 21 Apr 2009 17:55:47 +0000 (10:55 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 21 Apr 2009 20:43:34 +0000 (16:43 -0400)
When debugging TX issues it is helpful to know the seq nr of the
frame being transmitted. The seq nr is printed as part of ucode's
log informing us which frame is being processed. Having this information
printed in driver log makes it easy to match activities between driver
and firmware.

Also make possible to print TX flags directly. These are already printed
as part of entire TX command, but having it printed directly in cpu format
makes it easier to look at.

Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlwifi/iwl-tx.c
drivers/net/wireless/iwlwifi/iwl3945-base.c

index 1f117a49c569422ae31a0d6f69a0fa2ea11a8f9b..8ef53e28176ff35993468aa12afcee70387ad2a6 100644 (file)
@@ -875,8 +875,10 @@ int iwl_tx_skb(struct iwl_priv *priv, struct sk_buff *skb)
                txq->need_update = 0;
        }
 
+       IWL_DEBUG_TX(priv, "sequence nr = 0X%x \n",
+                    le16_to_cpu(out_cmd->hdr.sequence));
+       IWL_DEBUG_TX(priv, "tx_flags = 0X%x \n", le32_to_cpu(tx_cmd->tx_flags));
        iwl_print_hex_dump(priv, IWL_DL_TX, (u8 *)tx_cmd, sizeof(*tx_cmd));
-
        iwl_print_hex_dump(priv, IWL_DL_TX, (u8 *)tx_cmd->hdr, hdr_len);
 
        /* Set up entry for this TFD in Tx byte-count array */
index 1299479f99dc4997d5b5f831bcd2a078c0aeb9e7..acefc37212672048b36acf1ed3757c73276bfd38 100644 (file)
@@ -1146,8 +1146,10 @@ static int iwl3945_tx_skb(struct iwl_priv *priv, struct sk_buff *skb)
                txq->need_update = 0;
        }
 
+       IWL_DEBUG_TX(priv, "sequence nr = 0X%x \n",
+                    le16_to_cpu(out_cmd->hdr.sequence));
+       IWL_DEBUG_TX(priv, "tx_flags = 0X%x \n", le32_to_cpu(tx->tx_flags));
        iwl_print_hex_dump(priv, IWL_DL_TX, tx, sizeof(*tx));
-
        iwl_print_hex_dump(priv, IWL_DL_TX, (u8 *)tx->hdr,
                           ieee80211_hdrlen(fc));