diff options
| author | 2006-12-27 19:11:08 +0000 | |
|---|---|---|
| committer | 2006-12-27 19:11:08 +0000 | |
| commit | bc654221f2dffd406d146fa31511814f9a453db2 (patch) | |
| tree | 70be9595eb22c5ee11d64d8d190b6c852c7d7dd9 /sys/dev/mii/inphy.c | |
| parent | pnozz is initialized by the prom in 8bpp mode, so don't bring high-depth (diff) | |
| download | wireguard-openbsd-bc654221f2dffd406d146fa31511814f9a453db2.tar.xz wireguard-openbsd-bc654221f2dffd406d146fa31511814f9a453db2.zip | |
Always explicitly set IFM_HDX for half-duplex.
From brad@
Diffstat (limited to 'sys/dev/mii/inphy.c')
| -rw-r--r-- | sys/dev/mii/inphy.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/mii/inphy.c b/sys/dev/mii/inphy.c index 2f0861649f4..c11228a53d5 100644 --- a/sys/dev/mii/inphy.c +++ b/sys/dev/mii/inphy.c @@ -1,4 +1,4 @@ -/* $OpenBSD: inphy.c,v 1.13 2005/02/19 06:00:04 brad Exp $ */ +/* $OpenBSD: inphy.c,v 1.14 2006/12/27 19:11:08 kettenis Exp $ */ /* $NetBSD: inphy.c,v 1.18 2000/02/02 23:34:56 thorpej Exp $ */ /*- @@ -257,6 +257,7 @@ inphy_status(sc) mii->mii_media_active |= IFM_NONE; return; } + scr = PHY_READ(sc, MII_INPHY_SCR); if ((bmsr & BMSR_100T4) && (scr & SCR_T4)) mii->mii_media_active |= IFM_100_T4; @@ -264,8 +265,11 @@ inphy_status(sc) mii->mii_media_active |= IFM_100_TX; else mii->mii_media_active |= IFM_10_T; + if (scr & SCR_FDX) mii->mii_media_active |= IFM_FDX; + else + mii->mii_media_active |= IFM_HDX; } else mii->mii_media_active = ife->ifm_media; } |
