svn commit: r221567 - head/sys/dev/xl
Pyun YongHyeon
yongari at FreeBSD.org
Sat May 7 00:18:59 UTC 2011
Author: yongari
Date: Sat May 7 00:18:58 2011
New Revision: 221567
URL: http://svn.freebsd.org/changeset/base/221567
Log:
Rearm watchdog timer if driver kick controller to recover from TX
underrun error.
While here, prepend 0x to status code to show TX status is hex
number.
Modified:
head/sys/dev/xl/if_xl.c
Modified: head/sys/dev/xl/if_xl.c
==============================================================================
--- head/sys/dev/xl/if_xl.c Sat May 7 00:06:02 2011 (r221566)
+++ head/sys/dev/xl/if_xl.c Sat May 7 00:18:58 2011 (r221567)
@@ -2207,7 +2207,7 @@ xl_txeoc(struct xl_softc *sc)
txstat & XL_TXSTATUS_JABBER ||
txstat & XL_TXSTATUS_RECLAIM) {
device_printf(sc->xl_dev,
- "transmission error: %x\n", txstat);
+ "transmission error: 0x%02x\n", txstat);
CSR_WRITE_2(sc, XL_COMMAND, XL_CMD_TX_RESET);
xl_wait(sc);
if (sc->xl_type == XL_TYPE_905B) {
@@ -2220,11 +2220,14 @@ xl_txeoc(struct xl_softc *sc)
CSR_WRITE_4(sc, XL_DOWNLIST_PTR,
c->xl_phys);
CSR_WRITE_1(sc, XL_DOWN_POLL, 64);
+ sc->xl_wdog_timer = 5;
}
} else {
- if (sc->xl_cdata.xl_tx_head != NULL)
+ if (sc->xl_cdata.xl_tx_head != NULL) {
CSR_WRITE_4(sc, XL_DOWNLIST_PTR,
sc->xl_cdata.xl_tx_head->xl_phys);
+ sc->xl_wdog_timer = 5;
+ }
}
/*
* Remember to set this for the
More information about the svn-src-all
mailing list