- Revert the parts of the previous revision which reloaded the watchdog

timer in xl_txeof()/xl_txeof_90xB(); xl_poll_locked() unconditionally
  invokes xl_txeof()/xl_txeof_90xB(), effectively circumventing that
  the watchdog ever fires in the DEVICE_POLLING case as its timer is
  constantly reloaded.
- Remove the banal and pedantically outdated comment regarding setting
  xl_wdog_timer to 0 in xl_txeof().

Pointed out by:	bde
This commit is contained in:
Marius Strobl 2006-12-08 03:18:16 +00:00
parent 7185cd3625
commit 22e5ade048

View File

@ -2151,7 +2151,6 @@ xl_txeof(struct xl_softc *sc)
if (sc->xl_cdata.xl_tx_head == NULL) {
ifp->if_drv_flags &= ~IFF_DRV_OACTIVE;
/* Clear the timeout timer. */
sc->xl_wdog_timer = 0;
sc->xl_cdata.xl_tx_tail = NULL;
} else {
@ -2160,7 +2159,6 @@ xl_txeof(struct xl_softc *sc)
CSR_WRITE_4(sc, XL_DOWNLIST_PTR,
sc->xl_cdata.xl_tx_head->xl_phys);
CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_DOWN_UNSTALL);
sc->xl_wdog_timer = 5;
}
}
}
@ -2199,7 +2197,8 @@ xl_txeof_90xB(struct xl_softc *sc)
XL_INC(idx, XL_TX_LIST_CNT);
}
sc->xl_wdog_timer = sc->xl_cdata.xl_tx_cnt == 0 ? 0 : 5;
if (sc->xl_cdata.xl_tx_cnt == 0)
sc->xl_wdog_timer = 0;
sc->xl_cdata.xl_tx_cons = idx;
if (cur_tx != NULL)