aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/tg3.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c
index a1aeba2442f5..159570b12c38 100644
--- a/drivers/net/tg3.c
+++ b/drivers/net/tg3.c
@@ -3735,13 +3735,23 @@ out:
3735 tg3_full_unlock(tp); 3735 tg3_full_unlock(tp);
3736} 3736}
3737 3737
3738static void tg3_dump_short_state(struct tg3 *tp)
3739{
3740 printk(KERN_ERR PFX "DEBUG: MAC_TX_STATUS[%08x] MAC_RX_STATUS[%08x]\n",
3741 tr32(MAC_TX_STATUS), tr32(MAC_RX_STATUS));
3742 printk(KERN_ERR PFX "DEBUG: RDMAC_STATUS[%08x] WDMAC_STATUS[%08x]\n",
3743 tr32(RDMAC_STATUS), tr32(WDMAC_STATUS));
3744}
3745
3738static void tg3_tx_timeout(struct net_device *dev) 3746static void tg3_tx_timeout(struct net_device *dev)
3739{ 3747{
3740 struct tg3 *tp = netdev_priv(dev); 3748 struct tg3 *tp = netdev_priv(dev);
3741 3749
3742 if (netif_msg_tx_err(tp)) 3750 if (netif_msg_tx_err(tp)) {
3743 printk(KERN_ERR PFX "%s: transmit timed out, resetting\n", 3751 printk(KERN_ERR PFX "%s: transmit timed out, resetting\n",
3744 dev->name); 3752 dev->name);
3753 tg3_dump_short_state(tp);
3754 }
3745 3755
3746 schedule_work(&tp->reset_task); 3756 schedule_work(&tp->reset_task);
3747} 3757}