Explorar o código

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>
Stephen Hemminger %!s(int64=17) %!d(string=hai) anos
pai
achega
d08b9bdf02
Modificáronse 1 ficheiros con 2 adicións e 7 borrados
  1. 2 7
      drivers/net/skge.c

+ 2 - 7
drivers/net/skge.c

@@ -1801,11 +1801,6 @@ static void genesis_mac_intr(struct skge_hw *hw, int port)
 		xm_write32(hw, port, XM_MODE, XM_MD_FTF);
 		xm_write32(hw, port, XM_MODE, XM_MD_FTF);
 		++dev->stats.tx_fifo_errors;
 		++dev->stats.tx_fifo_errors;
 	}
 	}
-
-	if (status & XM_IS_RXF_OV) {
-		xm_write32(hw, port, XM_MODE, XM_MD_FRF);
-		++dev->stats.rx_fifo_errors;
-	}
 }
 }
 
 
 static void genesis_link_up(struct skge_port *skge)
 static void genesis_link_up(struct skge_port *skge)
@@ -1862,9 +1857,9 @@ static void genesis_link_up(struct skge_port *skge)
 
 
 	xm_write32(hw, port, XM_MODE, mode);
 	xm_write32(hw, port, XM_MODE, mode);
 
 
-	/* Turn on detection of Tx underrun, Rx overrun */
+	/* Turn on detection of Tx underrun */
 	msk = xm_read16(hw, port, XM_IMSK);
 	msk = xm_read16(hw, port, XM_IMSK);
-	msk &= ~(XM_IS_RXF_OV | XM_IS_TXF_UR);
+	msk &= ~XM_IS_TXF_UR;
 	xm_write16(hw, port, XM_IMSK, msk);
 	xm_write16(hw, port, XM_IMSK, msk);
 
 
 	xm_read16(hw, port, XM_ISRC);
 	xm_read16(hw, port, XM_ISRC);