summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorAaron Campbell <aaron@cvs.openbsd.org>2000-10-18 16:19:35 +0000
committerAaron Campbell <aaron@cvs.openbsd.org>2000-10-18 16:19:35 +0000
commit6d1b3f77b46ceecbb5eb5e87c3759a47f98bd0af (patch)
tree644bee92c77a7314c1f06406b5a7fbb6049cf602 /sys
parent2e193cd3a33c9761ae40a2016fe268b46cf49d27 (diff)
Sigh. According to the ASIX data sheets, these boards don't even have RX
or TX state registers (these bits are reserved). So instead, don't do mii_tick() at all for ASIX boards, since we can't seem to figure out how to call it at just the right time. Hopefully this will be a temporary hack until a better solution is found.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/ic/dc.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/dev/ic/dc.c b/sys/dev/ic/dc.c
index f82b972653c..0480aff6fb6 100644
--- a/sys/dev/ic/dc.c
+++ b/sys/dev/ic/dc.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dc.c,v 1.16 2000/10/17 16:08:52 aaron Exp $ */
+/* $OpenBSD: dc.c,v 1.17 2000/10/18 16:19:34 aaron Exp $ */
/*
* Copyright (c) 1997, 1998, 1999
@@ -1919,8 +1919,7 @@ void dc_tick(xsc)
} else {
r = CSR_READ_4(sc, DC_ISR);
if ((r & DC_ISR_RX_STATE) == DC_RXSTATE_WAIT &&
- (r & DC_ISR_TX_STATE) == DC_TXSTATE_RESET &&
- sc->dc_cdata.dc_tx_cnt == 0)
+ sc->dc_cdata.dc_tx_cnt == 0 && !DC_IS_ASIX(sc))
mii_tick(mii);
if (!(mii->mii_media_status & IFM_ACTIVE))
sc->dc_link = 0;