aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/nge
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>2002-05-04 11:15:33 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>2002-05-04 11:15:33 +0000
commitd9fc2b816ee13a5e52baf84c63d93e8218df907e (patch)
tree86b3c5131d00656a425f0bb4dca492f88445346b /sys/dev/nge
parent37c0fba7c4fe240e823ef38d027b7232b485cc25 (diff)
Notes
Diffstat (limited to 'sys/dev/nge')
-rw-r--r--sys/dev/nge/if_nge.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/sys/dev/nge/if_nge.c b/sys/dev/nge/if_nge.c
index 6843ae4d7194..be395ee9f380 100644
--- a/sys/dev/nge/if_nge.c
+++ b/sys/dev/nge/if_nge.c
@@ -1434,10 +1434,9 @@ static void nge_tick(xsc)
sc->nge_unit);
if (ifp->if_snd.ifq_head != NULL)
nge_start(ifp);
- } else
- sc->nge_stat_ch = timeout(nge_tick, sc, hz);
+ }
}
-
+ sc->nge_stat_ch = timeout(nge_tick, sc, hz);
splx(s);
@@ -1493,10 +1492,17 @@ static void nge_intr(arg)
nge_init(sc);
}
+#if 0
+ /*
+ * XXX: nge_tick() is not ready to be called this way
+ * it screws up the aneg timeout because mii_tick() is
+ * only to be called once per second.
+ */
if (status & NGE_IMR_PHY_INTR) {
sc->nge_link = 0;
nge_tick(sc);
}
+#endif
}
/* Re-enable interrupts. */
@@ -1764,6 +1770,8 @@ static void nge_init(xsc)
NGE_CLRBIT(sc, NGE_RX_CFG, NGE_RXCFG_RX_FDX);
}
+ nge_tick(sc);
+
/*
* Enable the delivery of PHY interrupts based on
* link/speed/duplex status changes. Also enable the