Module Name: src Committed By: msaitoh Date: Thu Apr 11 08:50:59 UTC 2019
Modified Files: src/sys/arch/arm/imx: if_enet.c src/sys/arch/mips/adm5120/dev: if_admsw.c src/sys/dev/pci: if_bge.c if_bnx.c if_et.c if_lii.c if_msk.c if_nfe.c if_sk.c if_ti.c if_txp.c if_vge.c src/sys/dev/usb: if_axen.c Log Message: Fix a bug that the duplex of manual media setting may be wrong when the IFM_GMASK bit other than IFM_[FH]DX is set. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/sys/arch/arm/imx/if_enet.c cvs rdiff -u -r1.18 -r1.19 src/sys/arch/mips/adm5120/dev/if_admsw.c cvs rdiff -u -r1.328 -r1.329 src/sys/dev/pci/if_bge.c cvs rdiff -u -r1.80 -r1.81 src/sys/dev/pci/if_bnx.c cvs rdiff -u -r1.20 -r1.21 src/sys/dev/pci/if_et.c src/sys/dev/pci/if_lii.c cvs rdiff -u -r1.86 -r1.87 src/sys/dev/pci/if_msk.c cvs rdiff -u -r1.67 -r1.68 src/sys/dev/pci/if_nfe.c cvs rdiff -u -r1.94 -r1.95 src/sys/dev/pci/if_sk.c cvs rdiff -u -r1.106 -r1.107 src/sys/dev/pci/if_ti.c cvs rdiff -u -r1.51 -r1.52 src/sys/dev/pci/if_txp.c cvs rdiff -u -r1.68 -r1.69 src/sys/dev/pci/if_vge.c cvs rdiff -u -r1.37 -r1.38 src/sys/dev/usb/if_axen.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/arm/imx/if_enet.c diff -u src/sys/arch/arm/imx/if_enet.c:1.17 src/sys/arch/arm/imx/if_enet.c:1.18 --- src/sys/arch/arm/imx/if_enet.c:1.17 Tue Jan 22 03:42:25 2019 +++ src/sys/arch/arm/imx/if_enet.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_enet.c,v 1.17 2019/01/22 03:42:25 msaitoh Exp $ */ +/* $NetBSD: if_enet.c,v 1.18 2019/04/11 08:50:59 msaitoh Exp $ */ /* * Copyright (c) 2014 Ryo Shimizu <r...@nerv.org> @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_enet.c,v 1.17 2019/01/22 03:42:25 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_enet.c,v 1.18 2019/04/11 08:50:59 msaitoh Exp $"); #include "vlan.h" @@ -1172,7 +1172,7 @@ enet_miibus_statchg(struct ifnet *ifp) mii->mii_media_active &= ~IFM_ETH_FMASK; } - if ((ife->ifm_media & IFM_GMASK) == IFM_FDX) { + if ((ife->ifm_media & IFM_FDX) != 0) { tcr |= ENET_TCR_FDEN; /* full duplex */ rcr &= ~ENET_RCR_DRT;; /* enable receive on transmit */ } else { @@ -1787,7 +1787,7 @@ enet_init_regs(struct enet_softc *sc, in mii = &sc->sc_mii; ife = mii->mii_media.ifm_cur; - if ((ife->ifm_media & IFM_GMASK) == IFM_FDX) + if ((ife->ifm_media & IFM_FDX) != 0) fulldup = 1; else fulldup = 0; Index: src/sys/arch/mips/adm5120/dev/if_admsw.c diff -u src/sys/arch/mips/adm5120/dev/if_admsw.c:1.18 src/sys/arch/mips/adm5120/dev/if_admsw.c:1.19 --- src/sys/arch/mips/adm5120/dev/if_admsw.c:1.18 Mon Sep 3 16:29:25 2018 +++ src/sys/arch/mips/adm5120/dev/if_admsw.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_admsw.c,v 1.18 2018/09/03 16:29:25 riastradh Exp $ */ +/* $NetBSD: if_admsw.c,v 1.19 2019/04/11 08:50:59 msaitoh Exp $ */ /*- * Copyright (c) 2007 Ruslan Ermilov and Vsevolod Lobko. @@ -76,7 +76,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_admsw.c,v 1.18 2018/09/03 16:29:25 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_admsw.c,v 1.19 2019/04/11 08:50:59 msaitoh Exp $"); #include <sys/param.h> @@ -1232,7 +1232,7 @@ admsw_mediachange(struct ifnet *ifp) if (IFM_SUBTYPE(ifm->ifm_media) == IFM_AUTO) { val = PHY_CNTL2_AUTONEG|PHY_CNTL2_100M|PHY_CNTL2_FDX; } else if (IFM_SUBTYPE(ifm->ifm_media) == IFM_100_TX) { - if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) + if ((ifm->ifm_media & IFM_FDX) != 0) val = PHY_CNTL2_100M|PHY_CNTL2_FDX; else val = PHY_CNTL2_100M; Index: src/sys/dev/pci/if_bge.c diff -u src/sys/dev/pci/if_bge.c:1.328 src/sys/dev/pci/if_bge.c:1.329 --- src/sys/dev/pci/if_bge.c:1.328 Fri Apr 5 18:14:54 2019 +++ src/sys/dev/pci/if_bge.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_bge.c,v 1.328 2019/04/05 18:14:54 bouyer Exp $ */ +/* $NetBSD: if_bge.c,v 1.329 2019/04/11 08:50:59 msaitoh Exp $ */ /* * Copyright (c) 2001 Wind River Systems @@ -79,7 +79,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_bge.c,v 1.328 2019/04/05 18:14:54 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_bge.c,v 1.329 2019/04/11 08:50:59 msaitoh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -5677,7 +5677,7 @@ bge_ifmedia_upd(struct ifnet *ifp) } break; case IFM_1000_SX: - if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) { + if ((ifm->ifm_media & IFM_FDX) != 0) { BGE_CLRBIT(sc, BGE_MAC_MODE, BGE_MACMODE_HALF_DUPLEX); } else { Index: src/sys/dev/pci/if_bnx.c diff -u src/sys/dev/pci/if_bnx.c:1.80 src/sys/dev/pci/if_bnx.c:1.81 --- src/sys/dev/pci/if_bnx.c:1.80 Mon Apr 8 03:56:08 2019 +++ src/sys/dev/pci/if_bnx.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_bnx.c,v 1.80 2019/04/08 03:56:08 msaitoh Exp $ */ +/* $NetBSD: if_bnx.c,v 1.81 2019/04/11 08:50:59 msaitoh Exp $ */ /* $OpenBSD: if_bnx.c,v 1.101 2013/03/28 17:21:44 brad Exp $ */ /*- @@ -35,7 +35,7 @@ #if 0 __FBSDID("$FreeBSD: src/sys/dev/bce/if_bce.c,v 1.3 2006/04/13 14:12:26 ru Exp $"); #endif -__KERNEL_RCSID(0, "$NetBSD: if_bnx.c,v 1.80 2019/04/08 03:56:08 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_bnx.c,v 1.81 2019/04/11 08:50:59 msaitoh Exp $"); /* * The following controllers are supported by this driver: @@ -1305,7 +1305,7 @@ bnx_miibus_statchg(struct ifnet *ifp) /* Set half or full duplex based on the duplicity * negotiated by the PHY. */ - if ((mii->mii_media_active & IFM_GMASK) == IFM_HDX) { + if ((mii->mii_media_active & IFM_HDX) != 0) { DBPRINT(sc, BNX_INFO, "Setting Half-Duplex interface.\n"); val |= BNX_EMAC_MODE_HALF_DUPLEX; } else Index: src/sys/dev/pci/if_et.c diff -u src/sys/dev/pci/if_et.c:1.20 src/sys/dev/pci/if_et.c:1.21 --- src/sys/dev/pci/if_et.c:1.20 Tue Jan 22 03:42:27 2019 +++ src/sys/dev/pci/if_et.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_et.c,v 1.20 2019/01/22 03:42:27 msaitoh Exp $ */ +/* $NetBSD: if_et.c,v 1.21 2019/04/11 08:50:59 msaitoh Exp $ */ /* $OpenBSD: if_et.c,v 1.11 2008/06/08 06:18:07 jsg Exp $ */ /* * Copyright (c) 2007 The DragonFly Project. All rights reserved. @@ -37,7 +37,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_et.c,v 1.20 2019/01/22 03:42:27 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_et.c,v 1.21 2019/04/11 08:50:59 msaitoh Exp $"); #include "opt_inet.h" #include "vlan.h" @@ -468,7 +468,7 @@ et_miibus_statchg(struct ifnet *ifp) ctrl |= ET_MAC_CTRL_MODE_MII; } - if ((mii->mii_media_active & IFM_GMASK) == IFM_FDX) + if ((mii->mii_media_active & IFM_FDX) != 0) cfg2 |= ET_MAC_CFG2_FDX; else ctrl |= ET_MAC_CTRL_GHDX; Index: src/sys/dev/pci/if_lii.c diff -u src/sys/dev/pci/if_lii.c:1.20 src/sys/dev/pci/if_lii.c:1.21 --- src/sys/dev/pci/if_lii.c:1.20 Tue Jan 22 03:42:27 2019 +++ src/sys/dev/pci/if_lii.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_lii.c,v 1.20 2019/01/22 03:42:27 msaitoh Exp $ */ +/* $NetBSD: if_lii.c,v 1.21 2019/04/11 08:50:59 msaitoh Exp $ */ /* * Copyright (c) 2008 The NetBSD Foundation. @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_lii.c,v 1.20 2019/01/22 03:42:27 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_lii.c,v 1.21 2019/04/11 08:50:59 msaitoh Exp $"); #include <sys/param.h> @@ -654,7 +654,7 @@ lii_mii_statchg(struct ifnet *ifp) val = AT_READ_4(sc, ATL2_MACC); - if ((sc->sc_mii.mii_media_active & IFM_GMASK) == IFM_FDX) + if ((sc->sc_mii.mii_media_active & IFM_FDX) != 0) val |= MACC_FDX; else val &= ~MACC_FDX; Index: src/sys/dev/pci/if_msk.c diff -u src/sys/dev/pci/if_msk.c:1.86 src/sys/dev/pci/if_msk.c:1.87 --- src/sys/dev/pci/if_msk.c:1.86 Sun Feb 3 03:19:27 2019 +++ src/sys/dev/pci/if_msk.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_msk.c,v 1.86 2019/02/03 03:19:27 mrg Exp $ */ +/* $NetBSD: if_msk.c,v 1.87 2019/04/11 08:50:59 msaitoh Exp $ */ /* $OpenBSD: if_msk.c,v 1.79 2009/10/15 17:54:56 deraadt Exp $ */ /* @@ -52,7 +52,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_msk.c,v 1.86 2019/02/03 03:19:27 mrg Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_msk.c,v 1.87 2019/04/11 08:50:59 msaitoh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -326,7 +326,7 @@ msk_miibus_statchg(struct ifnet *ifp) /* Set duplex. */ gpcr |= YU_GPCR_DPLX_DIS; - if ((mii->mii_media_active & IFM_GMASK) == IFM_FDX) + if ((mii->mii_media_active & IFM_FDX) != 0) gpcr |= YU_GPCR_DUPLEX; /* Disable flow control. */ Index: src/sys/dev/pci/if_nfe.c diff -u src/sys/dev/pci/if_nfe.c:1.67 src/sys/dev/pci/if_nfe.c:1.68 --- src/sys/dev/pci/if_nfe.c:1.67 Tue Jan 22 03:42:27 2019 +++ src/sys/dev/pci/if_nfe.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_nfe.c,v 1.67 2019/01/22 03:42:27 msaitoh Exp $ */ +/* $NetBSD: if_nfe.c,v 1.68 2019/04/11 08:50:59 msaitoh Exp $ */ /* $OpenBSD: if_nfe.c,v 1.77 2008/02/05 16:52:50 brad Exp $ */ /*- @@ -21,7 +21,7 @@ /* Driver for NVIDIA nForce MCP Fast Ethernet and Gigabit Ethernet */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_nfe.c,v 1.67 2019/01/22 03:42:27 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_nfe.c,v 1.68 2019/04/11 08:50:59 msaitoh Exp $"); #include "opt_inet.h" #include "vlan.h" @@ -494,7 +494,7 @@ nfe_miibus_statchg(struct ifnet *ifp) seed = NFE_READ(sc, NFE_RNDSEED); seed &= ~NFE_SEED_MASK; - if ((mii->mii_media_active & IFM_GMASK) == IFM_HDX) { + if ((mii->mii_media_active & IFM_HDX) != 0) { phy |= NFE_PHY_HDX; /* half-duplex */ misc |= NFE_MISC1_HDX; } Index: src/sys/dev/pci/if_sk.c diff -u src/sys/dev/pci/if_sk.c:1.94 src/sys/dev/pci/if_sk.c:1.95 --- src/sys/dev/pci/if_sk.c:1.94 Sun Feb 3 03:19:27 2019 +++ src/sys/dev/pci/if_sk.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_sk.c,v 1.94 2019/02/03 03:19:27 mrg Exp $ */ +/* $NetBSD: if_sk.c,v 1.95 2019/04/11 08:50:59 msaitoh Exp $ */ /*- * Copyright (c) 2003 The NetBSD Foundation, Inc. @@ -115,7 +115,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_sk.c,v 1.94 2019/02/03 03:19:27 mrg Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_sk.c,v 1.95 2019/04/11 08:50:59 msaitoh Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -477,7 +477,7 @@ sk_xmac_miibus_statchg(struct ifnet *ifp * duplex mode accordingly. */ if (sc_if->sk_phytype != SK_PHYTYPE_XMAC) { - if ((mii->mii_media_active & IFM_GMASK) == IFM_FDX) + if ((mii->mii_media_active & IFM_FDX) != 0) SK_XM_SETBIT_2(sc_if, XM_MMUCMD, XM_MMUCMD_GMIIFDX); else SK_XM_CLRBIT_2(sc_if, XM_MMUCMD, XM_MMUCMD_GMIIFDX); Index: src/sys/dev/pci/if_ti.c diff -u src/sys/dev/pci/if_ti.c:1.106 src/sys/dev/pci/if_ti.c:1.107 --- src/sys/dev/pci/if_ti.c:1.106 Sun Dec 9 11:14:02 2018 +++ src/sys/dev/pci/if_ti.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_ti.c,v 1.106 2018/12/09 11:14:02 jdolecek Exp $ */ +/* $NetBSD: if_ti.c,v 1.107 2019/04/11 08:50:59 msaitoh Exp $ */ /* * Copyright (c) 1997, 1998, 1999 @@ -81,7 +81,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_ti.c,v 1.106 2018/12/09 11:14:02 jdolecek Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_ti.c,v 1.107 2019/04/11 08:50:59 msaitoh Exp $"); #include "opt_inet.h" @@ -2582,7 +2582,7 @@ ti_ifmedia_upd(struct ifnet *ifp) break; case IFM_1000_SX: case IFM_1000_T: - if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) { + if ((ifm->ifm_media & IFM_FDX) != 0) { CSR_WRITE_4(sc, TI_GCR_GLINK, TI_GLNK_PREF|TI_GLNK_1000MB|TI_GLNK_FULL_DUPLEX| TI_GLNK_RX_FLOWCTL_Y|TI_GLNK_ENB); @@ -2607,7 +2607,7 @@ ti_ifmedia_upd(struct ifnet *ifp) } else { TI_SETBIT(sc, TI_GCR_LINK, TI_LNK_10MB); } - if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) { + if ((ifm->ifm_media & IFM_FDX) != 0) { TI_SETBIT(sc, TI_GCR_LINK, TI_LNK_FULL_DUPLEX); } else { TI_SETBIT(sc, TI_GCR_LINK, TI_LNK_HALF_DUPLEX); Index: src/sys/dev/pci/if_txp.c diff -u src/sys/dev/pci/if_txp.c:1.51 src/sys/dev/pci/if_txp.c:1.52 --- src/sys/dev/pci/if_txp.c:1.51 Sun Dec 9 11:14:02 2018 +++ src/sys/dev/pci/if_txp.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_txp.c,v 1.51 2018/12/09 11:14:02 jdolecek Exp $ */ +/* $NetBSD: if_txp.c,v 1.52 2019/04/11 08:50:59 msaitoh Exp $ */ /* * Copyright (c) 2001 @@ -32,7 +32,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_txp.c,v 1.51 2018/12/09 11:14:02 jdolecek Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_txp.c,v 1.52 2019/04/11 08:50:59 msaitoh Exp $"); #include "opt_inet.h" @@ -1783,13 +1783,13 @@ txp_ifmedia_upd(struct ifnet *ifp) return (EINVAL); if (IFM_SUBTYPE(ifm->ifm_media) == IFM_10_T) { - if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) + if ((ifm->ifm_media & IFM_FDX) != 0) new_xcvr = TXP_XCVR_10_FDX; else new_xcvr = TXP_XCVR_10_HDX; } else if ((IFM_SUBTYPE(ifm->ifm_media) == IFM_100_TX) || (IFM_SUBTYPE(ifm->ifm_media) == IFM_100_FX)) { - if ((ifm->ifm_media & IFM_GMASK) == IFM_FDX) + if ((ifm->ifm_media & IFM_FDX) != 0) new_xcvr = TXP_XCVR_100_FDX; else new_xcvr = TXP_XCVR_100_HDX; Index: src/sys/dev/pci/if_vge.c diff -u src/sys/dev/pci/if_vge.c:1.68 src/sys/dev/pci/if_vge.c:1.69 --- src/sys/dev/pci/if_vge.c:1.68 Tue Mar 5 08:25:02 2019 +++ src/sys/dev/pci/if_vge.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_vge.c,v 1.68 2019/03/05 08:25:02 msaitoh Exp $ */ +/* $NetBSD: if_vge.c,v 1.69 2019/04/11 08:50:59 msaitoh Exp $ */ /*- * Copyright (c) 2004 @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_vge.c,v 1.68 2019/03/05 08:25:02 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_vge.c,v 1.69 2019/04/11 08:50:59 msaitoh Exp $"); /* * VIA Networking Technologies VT612x PCI gigabit ethernet NIC driver. @@ -1927,7 +1927,7 @@ vge_miibus_statchg(struct ifnet *ifp) case IFM_100_TX: case IFM_10_T: CSR_SETBIT_1(sc, VGE_DIAGCTL, VGE_DIAGCTL_MACFORCE); - if ((ife->ifm_media & IFM_GMASK) == IFM_FDX) { + if ((ife->ifm_media & IFM_FDX) != 0) { CSR_SETBIT_1(sc, VGE_DIAGCTL, VGE_DIAGCTL_FDXFORCE); } else { CSR_CLRBIT_1(sc, VGE_DIAGCTL, VGE_DIAGCTL_FDXFORCE); Index: src/sys/dev/usb/if_axen.c diff -u src/sys/dev/usb/if_axen.c:1.37 src/sys/dev/usb/if_axen.c:1.38 --- src/sys/dev/usb/if_axen.c:1.37 Sun Feb 17 09:33:19 2019 +++ src/sys/dev/usb/if_axen.c Thu Apr 11 08:50:59 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_axen.c,v 1.37 2019/02/17 09:33:19 rin Exp $ */ +/* $NetBSD: if_axen.c,v 1.38 2019/04/11 08:50:59 msaitoh Exp $ */ /* $OpenBSD: if_axen.c,v 1.3 2013/10/21 10:10:22 yuo Exp $ */ /* @@ -23,7 +23,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.37 2019/02/17 09:33:19 rin Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.38 2019/04/11 08:50:59 msaitoh Exp $"); #ifdef _KERNEL_OPT #include "opt_inet.h" @@ -269,7 +269,7 @@ axen_miibus_statchg(struct ifnet *ifp) return; val = 0; - if ((mii->mii_media_active & IFM_GMASK) == IFM_FDX) + if ((mii->mii_media_active & IFM_FDX) != 0) val |= AXEN_MEDIUM_FDX; val |= AXEN_MEDIUM_RXFLOW_CTRL_EN | AXEN_MEDIUM_TXFLOW_CTRL_EN |