summary refs log tree commit diff
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@osdl.org>2005-07-22 16:26:02 -0700
committerJeff Garzik <jgarzik@pobox.com>2005-07-31 00:40:53 -0400
commitf6620cab9485d435aa93490533b8268d36dc4526 (patch)
tree4c3b769c72dc02319244d314ad1fa0f17e3fc47a
parentb0825488a642cadcf39709961dde61440cb0731c (diff)
downloadlinux-f6620cab9485d435aa93490533b8268d36dc4526.tar.gz
[PATCH] skge: silence mac data parity messages
Using Genesis board, I get harmless error reports. Rather than console
error, turn it into a error counter.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-rw-r--r--drivers/net/skge.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/net/skge.c b/drivers/net/skge.c
index 5cacc7ad9e79..1ba0ab596abd 100644
--- a/drivers/net/skge.c
+++ b/drivers/net/skge.c
@@ -2633,11 +2633,17 @@ static inline void skge_tx_intr(struct net_device *dev)
 	spin_unlock(&skge->tx_lock);
 }
 
+/* Parity errors seem to happen when Genesis is connected to a switch
+ * with no other ports present. Heartbeat error??
+ */
 static void skge_mac_parity(struct skge_hw *hw, int port)
 {
-	printk(KERN_ERR PFX "%s: mac data parity error\n",
-	       hw->dev[port] ? hw->dev[port]->name
-	       : (port == 0 ? "(port A)": "(port B"));
+	struct net_device *dev = hw->dev[port];
+
+	if (dev) {
+		struct skge_port *skge = netdev_priv(dev);
+		++skge->net_stats.tx_heartbeat_errors;
+	}
 
 	if (hw->chip_id == CHIP_ID_GENESIS)
 		skge_write16(hw, SK_REG(port, TX_MFF_CTRL1),