diff options
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/mii/e1000phy.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/mii/e1000phy.c b/sys/dev/mii/e1000phy.c index 91da628..ae45077 100644 --- a/sys/dev/mii/e1000phy.c +++ b/sys/dev/mii/e1000phy.c @@ -397,8 +397,10 @@ done: /* * Only used for autonegotiation. */ - if (IFM_SUBTYPE(ife->ifm_media) != IFM_AUTO) + if (IFM_SUBTYPE(ife->ifm_media) != IFM_AUTO) { + sc->mii_ticks = 0; break; + } /* * check for link. @@ -411,6 +413,8 @@ done: } /* Announce link loss right after it happens. */ + if (sc->mii_ticks++ == 0) + break; if (sc->mii_ticks <= sc->mii_anegticks) return (0); |