aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@linux-foundation.org>2007-11-26 14:54:49 -0500
committerJeff Garzik <jeff@garzik.org>2007-12-01 16:32:29 -0500
commitd08b9bdf0264a8134677373f97641712062c603f (patch)
tree5305e46e983292b9271050c9c02a2a1551ab0e00
parent29816d9aa55c99d463bd5507a46535b5fe79c33a (diff)
skge: receive flush logic
Receive FIFO overrun is not catastrophic condition, so don't flush when it happens. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
-rw-r--r--drivers/net/skge.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/drivers/net/skge.c b/drivers/net/skge.c
index 14f06aea9ca0..82edf44b9e2a 100644
--- a/drivers/net/skge.c
+++ b/drivers/net/skge.c
@@ -1801,11 +1801,6 @@ static void genesis_mac_intr(struct skge_hw *hw, int port)
1801 xm_write32(hw, port, XM_MODE, XM_MD_FTF); 1801 xm_write32(hw, port, XM_MODE, XM_MD_FTF);
1802 ++dev->stats.tx_fifo_errors; 1802 ++dev->stats.tx_fifo_errors;
1803 } 1803 }
1804
1805 if (status & XM_IS_RXF_OV) {
1806 xm_write32(hw, port, XM_MODE, XM_MD_FRF);
1807 ++dev->stats.rx_fifo_errors;
1808 }
1809} 1804}
1810 1805
1811static void genesis_link_up(struct skge_port *skge) 1806static void genesis_link_up(struct skge_port *skge)
@@ -1862,9 +1857,9 @@ static void genesis_link_up(struct skge_port *skge)
1862 1857
1863 xm_write32(hw, port, XM_MODE, mode); 1858 xm_write32(hw, port, XM_MODE, mode);
1864 1859
1865 /* Turn on detection of Tx underrun, Rx overrun */ 1860 /* Turn on detection of Tx underrun */
1866 msk = xm_read16(hw, port, XM_IMSK); 1861 msk = xm_read16(hw, port, XM_IMSK);
1867 msk &= ~(XM_IS_RXF_OV | XM_IS_TXF_UR); 1862 msk &= ~XM_IS_TXF_UR;
1868 xm_write16(hw, port, XM_IMSK, msk); 1863 xm_write16(hw, port, XM_IMSK, msk);
1869 1864
1870 xm_read16(hw, port, XM_ISRC); 1865 xm_read16(hw, port, XM_ISRC);