summaryrefslogtreecommitdiff
path: root/sys/dev/msk
diff options
context:
space:
mode:
authorPyun YongHyeon <yongari@FreeBSD.org>2010-04-07 17:12:57 +0000
committerPyun YongHyeon <yongari@FreeBSD.org>2010-04-07 17:12:57 +0000
commit07fa07514b11008d3509e4c23d247c22d9471fb7 (patch)
treef15b2437d712b7e72d9a06ef3ba1abb0942c072c /sys/dev/msk
parent3cab2f6db9512b2717ca3108f2a8e06703afc689 (diff)
Notes
Diffstat (limited to 'sys/dev/msk')
-rw-r--r--sys/dev/msk/if_msk.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c
index 63a11ab6c691..61b131bf4513 100644
--- a/sys/dev/msk/if_msk.c
+++ b/sys/dev/msk/if_msk.c
@@ -3473,6 +3473,9 @@ msk_handle_events(struct msk_softc *sc)
uint32_t control, status;
int cons, len, port, rxprog;
+ if (sc->msk_stat_cons == CSR_READ_2(sc, STAT_PUT_IDX))
+ return (0);
+
/* Sync status LEs. */
bus_dmamap_sync(sc->msk_stat_tag, sc->msk_stat_map,
BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE);
@@ -3556,7 +3559,7 @@ msk_handle_events(struct msk_softc *sc)
if (rxput[MSK_PORT_B] > 0)
msk_rxput(sc->msk_if[MSK_PORT_B]);
- return (rxprog > sc->msk_process_limit ? EAGAIN : 0);
+ return (sc->msk_stat_cons != CSR_READ_2(sc, STAT_PUT_IDX));
}
static void