Change the interrupt handler a bit so that we call the nge_rxeof() handler

when we get an RX_ERR interrupt rather than the nge_rxeoc() handler. The
rxeoc (end of channel) handler attempts to reinitialize the whole NIC,
which we don't want to do if we only received a bad packet.
This commit is contained in:
wpaul 2001-07-16 16:35:09 +00:00
parent b71650db74
commit 77cb541e32

View File

@ -1499,13 +1499,12 @@ static void nge_intr(arg)
nge_txeof(sc);
if ((status & NGE_ISR_RX_DESC_OK) ||
(status & NGE_ISR_RX_ERR) ||
(status & NGE_ISR_RX_OK))
nge_rxeof(sc);
if ((status & NGE_ISR_RX_ERR) ||
(status & NGE_ISR_RX_OFLOW)) {
if ((status & NGE_ISR_RX_OFLOW))
nge_rxeoc(sc);
}
if (status & NGE_ISR_SYSERR) {
nge_reset(sc);