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/glxtphy.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/glxtphy.c')
| -rw-r--r-- | sys/dev/mii/glxtphy.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/mii/glxtphy.c b/sys/dev/mii/glxtphy.c index f80bad263d5..7811293576f 100644 --- a/sys/dev/mii/glxtphy.c +++ b/sys/dev/mii/glxtphy.c @@ -1,4 +1,4 @@ -/* $NetBSD: glxtphy.c,v 1.23 2009/10/19 18:41:13 bouyer Exp $ */ +/* $NetBSD: glxtphy.c,v 1.24 2014/06/16 16:48:16 msaitoh Exp $ */ /*- * Copyright (c) 1998, 1999, 2000, 2001 The NetBSD Foundation, Inc. @@ -59,7 +59,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: glxtphy.c,v 1.23 2009/10/19 18:41:13 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: glxtphy.c,v 1.24 2014/06/16 16:48:16 msaitoh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -265,6 +265,8 @@ glxtphy_status(struct mii_softc *sc) if (qsr & QSR_DUPLEX) mii->mii_media_active |= IFM_FDX | mii_phy_flowstatus(sc); + else + mii->mii_media_active |= IFM_HDX; } else mii->mii_media_active = ife->ifm_media; } |
