diff options
| author | msaitoh <msaitoh@NetBSD.org> | 2014-06-16 16:48:16 +0000 |
|---|---|---|
| committer | msaitoh <msaitoh@NetBSD.org> | 2014-06-16 16:48:16 +0000 |
| commit | a7fbee7bb47f2af94d3c652e1b2cf1d8df2a8a8e (patch) | |
| tree | db3988c3c2c4f4f44cad36db138948d028e65fb5 /sys/dev/mii/amhphy.c | |
| parent | a9d0691a48d599ae8413256b03c9d7cdde8f9a9b (diff) | |
IFM_FDX and IFM_HDX use different bit, so set IFM_HDX bit if it's not full
duplex. For many drivers, it recognize half duplex if IFM_FDX isn't set,
but not for others. Same as {Free|Open}BSD.
Diffstat (limited to 'sys/dev/mii/amhphy.c')
| -rw-r--r-- | sys/dev/mii/amhphy.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/mii/amhphy.c b/sys/dev/mii/amhphy.c index f69bac97b24..a2e4d958d7a 100644 --- a/sys/dev/mii/amhphy.c +++ b/sys/dev/mii/amhphy.c @@ -1,4 +1,4 @@ -/* $NetBSD: amhphy.c,v 1.19 2008/11/17 03:04:27 dyoung Exp $ */ +/* $NetBSD: amhphy.c,v 1.20 2014/06/16 16:48:16 msaitoh Exp $ */ /* * Copyright 2001 Wasabi Systems, Inc. @@ -40,7 +40,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: amhphy.c,v 1.19 2008/11/17 03:04:27 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: amhphy.c,v 1.20 2014/06/16 16:48:16 msaitoh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -230,6 +230,8 @@ amhphy_status(struct mii_softc *sc) mii->mii_media_active |= IFM_10_T; if (ssr & SSR_FD) mii->mii_media_active |= IFM_FDX; + else + mii->mii_media_active |= IFM_HDX; } else mii->mii_media_active = ife->ifm_media; } |
