diff options
author | Pyun YongHyeon <yongari@FreeBSD.org> | 2009-11-17 18:19:45 +0000 |
---|---|---|
committer | Pyun YongHyeon <yongari@FreeBSD.org> | 2009-11-17 18:19:45 +0000 |
commit | 77e6010f2469639eb0b0dbe7f5d36446b24cc45f (patch) | |
tree | 9fecf06f2d1ea991b10481825adb5297c35927f6 | |
parent | 89834b119e7902dea415b95827c7de87c787ee13 (diff) | |
download | src-77e6010f2469639eb0b0dbe7f5d36446b24cc45f.tar.gz src-77e6010f2469639eb0b0dbe7f5d36446b24cc45f.zip |
It seems generation of link state change of e1000phy(4) is not
reliable on some Marvell PHYs. If msk(4) know it still does not
have established link check whether msk(4) missed the link state
change by looking into polled link state.
Reported by: Mel Flynn < mel.flynn+fbsd.current <> mailing.thruhere dot net >,
Gleb Kurtsou <gleb.kurtsou <> gmail dot com >
Tested by: Gleb Kurtsou <gleb.kurtsou <> gmail dot com >
Notes
Notes:
svn path=/head/; revision=199413
-rw-r--r-- | sys/dev/msk/if_msk.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c index fbde7b73b198..9ff7f4a7caa1 100644 --- a/sys/dev/msk/if_msk.c +++ b/sys/dev/msk/if_msk.c @@ -3198,6 +3198,8 @@ msk_tick(void *xsc_if) mii = device_get_softc(sc_if->msk_miibus); mii_tick(mii); + if ((sc_if->msk_flags & MSK_FLAG_LINK) == 0) + msk_miibus_statchg(sc_if->msk_if_dev); msk_watchdog(sc_if); callout_reset(&sc_if->msk_tick_ch, hz, msk_tick, sc_if); } |