From 34552656b5bea7bf9ca847035308b763f24d4a2b Mon Sep 17 00:00:00 2001 From: jlemon Date: Sat, 29 Sep 2001 19:31:29 +0000 Subject: Do not call mii_polltick() immediately after mii_tick(). Poiinted out by: wpaul --- sys/dev/bge/if_bge.c | 21 +++++++++------------ sys/dev/lge/if_lge.c | 1 - sys/dev/nge/if_nge.c | 1 - sys/dev/usb/if_aue.c | 12 +++++------- 4 files changed, 14 insertions(+), 21 deletions(-) diff --git a/sys/dev/bge/if_bge.c b/sys/dev/bge/if_bge.c index a71dc3d..0d05f64 100644 --- a/sys/dev/bge/if_bge.c +++ b/sys/dev/bge/if_bge.c @@ -2045,18 +2045,15 @@ bge_tick(xsc) mii = device_get_softc(sc->bge_miibus); mii_tick(mii); - if (!sc->bge_link) { - mii_pollstat(mii); - if (mii->mii_media_status & IFM_ACTIVE && - IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { - sc->bge_link++; - if (IFM_SUBTYPE(mii->mii_media_active) == IFM_1000_TX || - IFM_SUBTYPE(mii->mii_media_active) == IFM_1000_SX) - printf("bge%d: gigabit link up\n", - sc->bge_unit); - if (ifp->if_snd.ifq_head != NULL) - bge_start(ifp); - } + if (!sc->bge_link && mii->mii_media_status & IFM_ACTIVE && + IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { + sc->bge_link++; + if (IFM_SUBTYPE(mii->mii_media_active) == IFM_1000_TX || + IFM_SUBTYPE(mii->mii_media_active) == IFM_1000_SX) + printf("bge%d: gigabit link up\n", + sc->bge_unit); + if (ifp->if_snd.ifq_head != NULL) + bge_start(ifp); } splx(s); diff --git a/sys/dev/lge/if_lge.c b/sys/dev/lge/if_lge.c index 254bd65..976beb4 100644 --- a/sys/dev/lge/if_lge.c +++ b/sys/dev/lge/if_lge.c @@ -1118,7 +1118,6 @@ static void lge_tick(xsc) if (!sc->lge_link) { mii = device_get_softc(sc->lge_miibus); mii_tick(mii); - mii_pollstat(mii); if (mii->mii_media_status & IFM_ACTIVE && IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { sc->lge_link++; diff --git a/sys/dev/nge/if_nge.c b/sys/dev/nge/if_nge.c index 99ff20c..658df7f 100644 --- a/sys/dev/nge/if_nge.c +++ b/sys/dev/nge/if_nge.c @@ -1442,7 +1442,6 @@ static void nge_tick(xsc) mii_tick(mii); if (!sc->nge_link) { - mii_pollstat(mii); if (mii->mii_media_status & IFM_ACTIVE && IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { sc->nge_link++; diff --git a/sys/dev/usb/if_aue.c b/sys/dev/usb/if_aue.c index cf67feb..c68b4b9 100644 --- a/sys/dev/usb/if_aue.c +++ b/sys/dev/usb/if_aue.c @@ -1098,13 +1098,11 @@ Static void aue_tick(xsc) } mii_tick(mii); - if (!sc->aue_link) { - mii_pollstat(mii); - if (mii->mii_media_status & IFM_ACTIVE && - IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) - sc->aue_link++; - if (ifp->if_snd.ifq_head != NULL) - aue_start(ifp); + if (!sc->aue_link && mii->mii_media_status & IFM_ACTIVE && + IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { + sc->aue_link++; + if (ifp->if_snd.ifq_head != NULL) + aue_start(ifp); } sc->aue_stat_ch = timeout(aue_tick, sc, hz); -- cgit v1.1