Module Name: src
Committed By: msaitoh
Date: Thu May 30 02:32:18 UTC 2019
Modified Files:
src/sys/arch/arm/ep93xx: epe.c
src/sys/arch/arm/omap: omapl1x_emac.c
src/sys/arch/sgimips/mace: if_mec.c
src/sys/dev/ic: lan9118.c mtd803.c rtl8169.c smc91cxx.c
src/sys/dev/pci: if_bce.c if_lii.c if_sk.c
Log Message:
Simplify MII structure initialization and reference. No functional change.
To generate a diff of this commit:
cvs rdiff -u -r1.43 -r1.44 src/sys/arch/arm/ep93xx/epe.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/arm/omap/omapl1x_emac.c
cvs rdiff -u -r1.60 -r1.61 src/sys/arch/sgimips/mace/if_mec.c
cvs rdiff -u -r1.34 -r1.35 src/sys/dev/ic/lan9118.c
cvs rdiff -u -r1.39 -r1.40 src/sys/dev/ic/mtd803.c
cvs rdiff -u -r1.158 -r1.159 src/sys/dev/ic/rtl8169.c
cvs rdiff -u -r1.101 -r1.102 src/sys/dev/ic/smc91cxx.c
cvs rdiff -u -r1.51 -r1.52 src/sys/dev/pci/if_bce.c
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/pci/if_lii.c
cvs rdiff -u -r1.97 -r1.98 src/sys/dev/pci/if_sk.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/ep93xx/epe.c
diff -u src/sys/arch/arm/ep93xx/epe.c:1.43 src/sys/arch/arm/ep93xx/epe.c:1.44
--- src/sys/arch/arm/ep93xx/epe.c:1.43 Tue May 28 07:41:46 2019
+++ src/sys/arch/arm/ep93xx/epe.c Thu May 30 02:32:17 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: epe.c,v 1.43 2019/05/28 07:41:46 msaitoh Exp $ */
+/* $NetBSD: epe.c,v 1.44 2019/05/30 02:32:17 msaitoh Exp $ */
/*
* Copyright (c) 2004 Jesse Off
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: epe.c,v 1.43 2019/05/28 07:41:46 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: epe.c,v 1.44 2019/05/30 02:32:17 msaitoh Exp $");
#include <sys/types.h>
#include <sys/param.h>
@@ -284,6 +284,7 @@ epe_init(struct epe_softc *sc)
char *addr;
int rsegs, err, i;
struct ifnet * ifp = &sc->sc_ec.ec_if;
+ struct mii_data *mii = &sc->sc_mii;
int mdcdiv = DEFAULT_MDCDIV;
callout_init(&sc->epe_tick_ch, 0);
@@ -396,16 +397,16 @@ epe_init(struct epe_softc *sc)
mdcdiv = device_cfdata(sc->sc_dev)->cf_flags;
EPE_WRITE(SelfCtl, (SelfCtl_MDCDIV(mdcdiv) | SelfCtl_PSPRS));
- sc->sc_mii.mii_ifp = ifp;
- sc->sc_mii.mii_readreg = epe_mii_readreg;
- sc->sc_mii.mii_writereg = epe_mii_writereg;
- sc->sc_mii.mii_statchg = epe_statchg;
- sc->sc_ec.ec_mii = &sc->sc_mii;
- ifmedia_init(&sc->sc_mii.mii_media, IFM_IMASK, epe_mediachange,
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = epe_mii_readreg;
+ mii->mii_writereg = epe_mii_writereg;
+ mii->mii_statchg = epe_statchg;
+ sc->sc_ec.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, IFM_IMASK, epe_mediachange,
ether_mediastatus);
- mii_attach(sc->sc_dev, &sc->sc_mii, 0xffffffff, MII_PHY_ANY,
- MII_OFFSET_ANY, 0);
- ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_AUTO);
+ mii_attach(sc->sc_dev, mii, 0xffffffff, MII_PHY_ANY,
+ MII_OFFSET_ANY, 0);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
EPE_WRITE(BMCtl, BMCtl_RxEn | BMCtl_TxEn);
EPE_WRITE(IntEn, IntEn_REOFIE);
Index: src/sys/arch/arm/omap/omapl1x_emac.c
diff -u src/sys/arch/arm/omap/omapl1x_emac.c:1.10 src/sys/arch/arm/omap/omapl1x_emac.c:1.11
--- src/sys/arch/arm/omap/omapl1x_emac.c:1.10 Wed May 29 06:21:56 2019
+++ src/sys/arch/arm/omap/omapl1x_emac.c Thu May 30 02:32:17 2019
@@ -30,7 +30,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: omapl1x_emac.c,v 1.10 2019/05/29 06:21:56 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: omapl1x_emac.c,v 1.11 2019/05/30 02:32:17 msaitoh Exp $");
#include "opt_omapl1x.h"
@@ -1197,6 +1197,7 @@ emac_attach (device_t parent, device_t s
{
struct emac_softc * const sc = device_private(self);
struct ifnet * const ifp = &sc->sc_if;
+ struct mii_data *mii = &sc->sc_mii;
struct tipb_attach_args *tipb = aux;
const char * const xname = device_xname(self);
prop_dictionary_t dict = device_properties(self);
@@ -1320,26 +1321,23 @@ emac_attach (device_t parent, device_t s
}
/* mii related stuff */
- sc->sc_mii.mii_ifp = ifp;
- sc->sc_mii.mii_readreg = emac_mii_readreg;
- sc->sc_mii.mii_writereg = emac_mii_writereg;
- sc->sc_mii.mii_statchg = emac_mii_statchg;
- sc->sc_ec.ec_mii = &sc->sc_mii;
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = emac_mii_readreg;
+ mii->mii_writereg = emac_mii_writereg;
+ mii->mii_statchg = emac_mii_statchg;
+ sc->sc_ec.ec_mii = mii;
EMAC_WRITE(sc, MACMDIOCONTROL, __BIT(30) | __BIT(18) |
EMAC_MDIO_CLKDIV);
- ifmedia_init(&sc->sc_mii.mii_media, 0, ether_mediachange,
- ether_mediastatus);
- mii_attach(self, &sc->sc_mii, 0xffffffff, MII_PHY_ANY, 0, 0);
- if (LIST_FIRST(&sc->sc_mii.mii_phys) == NULL) {
+ ifmedia_init(&mii->mii_media, 0, ether_mediachange, ether_mediastatus);
+ mii_attach(self, mii, 0xffffffff, MII_PHY_ANY, 0, 0);
+ if (LIST_FIRST(&mii->mii_phys) == NULL) {
aprint_error_dev(self, "no PHY found!\n");
- ifmedia_add(&sc->sc_mii.mii_media,
- IFM_ETHER | IFM_MANUAL, 0, NULL);
- ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_MANUAL);
- } else {
- ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_AUTO);
- }
+ ifmedia_add(&mii->mii_media, IFM_ETHER | IFM_MANUAL, 0, NULL);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_MANUAL);
+ } else
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
strlcpy(ifp->if_xname, xname, IFNAMSIZ);
ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST;
Index: src/sys/arch/sgimips/mace/if_mec.c
diff -u src/sys/arch/sgimips/mace/if_mec.c:1.60 src/sys/arch/sgimips/mace/if_mec.c:1.61
--- src/sys/arch/sgimips/mace/if_mec.c:1.60 Tue May 28 07:41:48 2019
+++ src/sys/arch/sgimips/mace/if_mec.c Thu May 30 02:32:17 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_mec.c,v 1.60 2019/05/28 07:41:48 msaitoh Exp $ */
+/* $NetBSD: if_mec.c,v 1.61 2019/05/30 02:32:17 msaitoh Exp $ */
/*-
* Copyright (c) 2004, 2008 Izumi Tsutsui. All rights reserved.
@@ -61,7 +61,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_mec.c,v 1.60 2019/05/28 07:41:48 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_mec.c,v 1.61 2019/05/30 02:32:17 msaitoh Exp $");
#include "opt_ddb.h"
@@ -430,6 +430,7 @@ mec_attach(device_t parent, device_t sel
struct mec_softc *sc = device_private(self);
struct mace_attach_args *maa = aux;
struct ifnet *ifp = &sc->sc_ethercom.ec_if;
+ struct mii_data *mii = &sc->sc_mii;
uint64_t address, command;
const char *macaddr;
struct mii_softc *child;
@@ -572,26 +573,24 @@ mec_attach(device_t parent, device_t sel
/* Done, now attach everything */
- sc->sc_mii.mii_ifp = ifp;
- sc->sc_mii.mii_readreg = mec_mii_readreg;
- sc->sc_mii.mii_writereg = mec_mii_writereg;
- sc->sc_mii.mii_statchg = mec_statchg;
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = mec_mii_readreg;
+ mii->mii_writereg = mec_mii_writereg;
+ mii->mii_statchg = mec_statchg;
/* Set up PHY properties */
- sc->sc_ethercom.ec_mii = &sc->sc_mii;
- ifmedia_init(&sc->sc_mii.mii_media, 0, ether_mediachange,
- ether_mediastatus);
- mii_attach(self, &sc->sc_mii, 0xffffffff, MII_PHY_ANY,
- MII_OFFSET_ANY, 0);
+ sc->sc_ethercom.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, 0, ether_mediachange, ether_mediastatus);
+ mii_attach(self, mii, 0xffffffff, MII_PHY_ANY, MII_OFFSET_ANY, 0);
- child = LIST_FIRST(&sc->sc_mii.mii_phys);
+ child = LIST_FIRST(&mii->mii_phys);
if (child == NULL) {
/* No PHY attached */
- ifmedia_add(&sc->sc_mii.mii_media, IFM_ETHER | IFM_MANUAL,
+ ifmedia_add(&mii->mii_media, IFM_ETHER | IFM_MANUAL,
0, NULL);
- ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_MANUAL);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_MANUAL);
} else {
- ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_AUTO);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
sc->sc_phyaddr = child->mii_phy;
}
Index: src/sys/dev/ic/lan9118.c
diff -u src/sys/dev/ic/lan9118.c:1.34 src/sys/dev/ic/lan9118.c:1.35
--- src/sys/dev/ic/lan9118.c:1.34 Tue May 28 07:41:48 2019
+++ src/sys/dev/ic/lan9118.c Thu May 30 02:32:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: lan9118.c,v 1.34 2019/05/28 07:41:48 msaitoh Exp $ */
+/* $NetBSD: lan9118.c,v 1.35 2019/05/30 02:32:18 msaitoh Exp $ */
/*
* Copyright (c) 2008 KIYOHARA Takashi
* All rights reserved.
@@ -25,7 +25,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lan9118.c,v 1.34 2019/05/28 07:41:48 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lan9118.c,v 1.35 2019/05/30 02:32:18 msaitoh Exp $");
/*
* The LAN9118 Family
@@ -156,6 +156,7 @@ int
lan9118_attach(struct lan9118_softc *sc)
{
struct ifnet *ifp = &sc->sc_ec.ec_if;
+ struct mii_data *mii = &sc->sc_mii;
uint32_t val, irq_cfg;
int timo, i;
@@ -232,19 +233,19 @@ lan9118_attach(struct lan9118_softc *sc)
sc->sc_ec.ec_capabilities |= ETHERCAP_VLAN_MTU;
#endif
- sc->sc_ec.ec_mii = &sc->sc_mii;
- ifmedia_init(&sc->sc_mii.mii_media, 0,
+ sc->sc_ec.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, 0,
lan9118_ifm_change, lan9118_ifm_status);
- sc->sc_mii.mii_ifp = ifp;
- sc->sc_mii.mii_readreg = lan9118_miibus_readreg;
- sc->sc_mii.mii_writereg = lan9118_miibus_writereg;
- sc->sc_mii.mii_statchg = lan9118_miibus_statchg;
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = lan9118_miibus_readreg;
+ mii->mii_writereg = lan9118_miibus_writereg;
+ mii->mii_statchg = lan9118_miibus_statchg;
/*
* Number of instance of Internal PHY is always 0. External PHY
* number that above.
*/
- mii_attach(sc->sc_dev, &sc->sc_mii, 0xffffffff, 1, MII_OFFSET_ANY, 0);
+ mii_attach(sc->sc_dev, mii, 0xffffffff, 1, MII_OFFSET_ANY, 0);
if (sc->sc_id == LAN9118_ID_9115 || sc->sc_id == LAN9118_ID_9117 ||
sc->sc_id == LAN9218_ID_9215 || sc->sc_id == LAN9218_ID_9217) {
@@ -271,15 +272,15 @@ lan9118_attach(struct lan9118_softc *sc)
delay(1); /* Once wait more 5 cycle */
/* Call mii_attach, avoid at phy1. */
- mii_attach(sc->sc_dev, &sc->sc_mii, 0xffffffff,
+ mii_attach(sc->sc_dev, mii, 0xffffffff,
0, MII_OFFSET_ANY, 0);
for (i = 2; i < MII_NPHY; i++)
- mii_attach(sc->sc_dev, &sc->sc_mii, 0xffffffff,
+ mii_attach(sc->sc_dev, mii, 0xffffffff,
i, MII_OFFSET_ANY, 0);
}
}
- ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_AUTO);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
/* Attach the interface. */
if_attach(ifp);
Index: src/sys/dev/ic/mtd803.c
diff -u src/sys/dev/ic/mtd803.c:1.39 src/sys/dev/ic/mtd803.c:1.40
--- src/sys/dev/ic/mtd803.c:1.39 Tue May 28 07:41:48 2019
+++ src/sys/dev/ic/mtd803.c Thu May 30 02:32:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: mtd803.c,v 1.39 2019/05/28 07:41:48 msaitoh Exp $ */
+/* $NetBSD: mtd803.c,v 1.40 2019/05/30 02:32:18 msaitoh Exp $ */
/*-
*
@@ -44,7 +44,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mtd803.c,v 1.39 2019/05/28 07:41:48 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mtd803.c,v 1.40 2019/05/30 02:32:18 msaitoh Exp $");
#include <sys/param.h>
@@ -130,6 +130,7 @@ int
mtd_config(struct mtd_softc *sc)
{
struct ifnet *ifp = &sc->ethercom.ec_if;
+ struct mii_data *mii = &sc->mii;
int i;
/* Read station address */
@@ -148,22 +149,21 @@ mtd_config(struct mtd_softc *sc)
IFQ_SET_READY(&ifp->if_snd);
/* Setup MII interface */
- sc->mii.mii_ifp = ifp;
- sc->mii.mii_readreg = mtd_mii_readreg;
- sc->mii.mii_writereg = mtd_mii_writereg;
- sc->mii.mii_statchg = mtd_mii_statchg;
-
- sc->ethercom.ec_mii = &sc->mii;
- ifmedia_init(&sc->mii.mii_media, 0, ether_mediachange,
- ether_mediastatus);
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = mtd_mii_readreg;
+ mii->mii_writereg = mtd_mii_writereg;
+ mii->mii_statchg = mtd_mii_statchg;
- mii_attach(sc->dev, &sc->mii, 0xffffffff, MII_PHY_ANY, 0, 0);
+ sc->ethercom.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, 0, ether_mediachange, ether_mediastatus);
- if (LIST_FIRST(&sc->mii.mii_phys) == NULL) {
+ mii_attach(sc->dev, mii, 0xffffffff, MII_PHY_ANY, 0, 0);
+
+ if (LIST_FIRST(&mii->mii_phys) == NULL) {
aprint_error_dev(sc->dev, "Unable to configure MII\n");
return 1;
} else
- ifmedia_set(&sc->mii.mii_media, IFM_ETHER | IFM_AUTO);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
if (mtd_init_desc(sc))
return 1;
Index: src/sys/dev/ic/rtl8169.c
diff -u src/sys/dev/ic/rtl8169.c:1.158 src/sys/dev/ic/rtl8169.c:1.159
--- src/sys/dev/ic/rtl8169.c:1.158 Fri Apr 5 23:44:59 2019
+++ src/sys/dev/ic/rtl8169.c Thu May 30 02:32:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: rtl8169.c,v 1.158 2019/04/05 23:44:59 uwe Exp $ */
+/* $NetBSD: rtl8169.c,v 1.159 2019/05/30 02:32:18 msaitoh Exp $ */
/*
* Copyright (c) 1997, 1998-2003
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rtl8169.c,v 1.158 2019/04/05 23:44:59 uwe Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rtl8169.c,v 1.159 2019/05/30 02:32:18 msaitoh Exp $");
/* $FreeBSD: /repoman/r/ncvs/src/sys/dev/re/if_re.c,v 1.20 2004/04/11 20:34:08 ru Exp $ */
/*
@@ -560,6 +560,7 @@ re_attach(struct rtk_softc *sc)
{
uint8_t eaddr[ETHER_ADDR_LEN];
struct ifnet *ifp;
+ struct mii_data *mii = &sc->mii;
int error = 0, i;
if ((sc->sc_quirk & RTKQ_8139CPLUS) == 0) {
@@ -850,16 +851,16 @@ re_attach(struct rtk_softc *sc)
callout_init(&sc->rtk_tick_ch, 0);
/* Do MII setup */
- sc->mii.mii_ifp = ifp;
- sc->mii.mii_readreg = re_miibus_readreg;
- sc->mii.mii_writereg = re_miibus_writereg;
- sc->mii.mii_statchg = re_miibus_statchg;
- sc->ethercom.ec_mii = &sc->mii;
- ifmedia_init(&sc->mii.mii_media, IFM_IMASK, ether_mediachange,
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = re_miibus_readreg;
+ mii->mii_writereg = re_miibus_writereg;
+ mii->mii_statchg = re_miibus_statchg;
+ sc->ethercom.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, IFM_IMASK, ether_mediachange,
ether_mediastatus);
- mii_attach(sc->sc_dev, &sc->mii, 0xffffffff, MII_PHY_ANY,
+ mii_attach(sc->sc_dev, mii, 0xffffffff, MII_PHY_ANY,
MII_OFFSET_ANY, 0);
- ifmedia_set(&sc->mii.mii_media, IFM_ETHER | IFM_AUTO);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
/*
* Call MI attach routine.
Index: src/sys/dev/ic/smc91cxx.c
diff -u src/sys/dev/ic/smc91cxx.c:1.101 src/sys/dev/ic/smc91cxx.c:1.102
--- src/sys/dev/ic/smc91cxx.c:1.101 Thu Apr 25 10:08:45 2019
+++ src/sys/dev/ic/smc91cxx.c Thu May 30 02:32:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: smc91cxx.c,v 1.101 2019/04/25 10:08:45 msaitoh Exp $ */
+/* $NetBSD: smc91cxx.c,v 1.102 2019/05/30 02:32:18 msaitoh Exp $ */
/*-
* Copyright (c) 1997 The NetBSD Foundation, Inc.
@@ -71,7 +71,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: smc91cxx.c,v 1.101 2019/04/25 10:08:45 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: smc91cxx.c,v 1.102 2019/05/30 02:32:18 msaitoh Exp $");
#include "opt_inet.h"
@@ -231,7 +231,8 @@ smc91cxx_attach(struct smc91cxx_softc *s
struct ifnet *ifp = &sc->sc_ec.ec_if;
bus_space_tag_t bst = sc->sc_bst;
bus_space_handle_t bsh = sc->sc_bsh;
- struct ifmedia *ifm = &sc->sc_mii.mii_media;
+ struct mii_data *mii = &sc->sc_mii;
+ struct ifmedia *ifm = &mii->mii_media;
const char *idstr;
uint32_t miicapabilities;
uint16_t tmp;
@@ -312,11 +313,11 @@ smc91cxx_attach(struct smc91cxx_softc *s
* Initialize our media structures and MII info. We will
* probe the MII if we are on the SMC91Cxx
*/
- sc->sc_mii.mii_ifp = ifp;
- sc->sc_mii.mii_readreg = smc91cxx_mii_readreg;
- sc->sc_mii.mii_writereg = smc91cxx_mii_writereg;
- sc->sc_mii.mii_statchg = smc91cxx_statchg;
- sc->sc_ec.ec_mii = &sc->sc_mii;
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = smc91cxx_mii_readreg;
+ mii->mii_writereg = smc91cxx_mii_writereg;
+ mii->mii_statchg = smc91cxx_statchg;
+ sc->sc_ec.ec_mii = mii;
ifmedia_init(ifm, IFM_IMASK, smc91cxx_mediachange,
smc91cxx_mediastatus);
@@ -343,15 +344,15 @@ smc91cxx_attach(struct smc91cxx_softc *s
sc->sc_internal_phy = !(tmp & CR_AUI_SELECT);
} else
aprint_normal("\n");
- mii_attach(sc->sc_dev, &sc->sc_mii, miicapabilities,
+ mii_attach(sc->sc_dev, mii, miicapabilities,
MII_PHY_ANY, MII_OFFSET_ANY, 0);
- if (LIST_FIRST(&sc->sc_mii.mii_phys) == NULL) {
- ifmedia_add(&sc->sc_mii.mii_media,
+ if (LIST_FIRST(&mii->mii_phys) == NULL) {
+ ifmedia_add(&mii->mii_media,
IFM_ETHER | IFM_NONE, 0, NULL);
- ifmedia_set(&sc->sc_mii.mii_media,
+ ifmedia_set(&mii->mii_media,
IFM_ETHER | IFM_NONE);
} else {
- ifmedia_set(&sc->sc_mii.mii_media,
+ ifmedia_set(&mii->mii_media,
IFM_ETHER | IFM_AUTO);
}
sc->sc_flags |= SMC_FLAGS_HAS_MII;
Index: src/sys/dev/pci/if_bce.c
diff -u src/sys/dev/pci/if_bce.c:1.51 src/sys/dev/pci/if_bce.c:1.52
--- src/sys/dev/pci/if_bce.c:1.51 Sun Feb 3 03:19:27 2019
+++ src/sys/dev/pci/if_bce.c Thu May 30 02:32:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_bce.c,v 1.51 2019/02/03 03:19:27 mrg Exp $ */
+/* $NetBSD: if_bce.c,v 1.52 2019/05/30 02:32:18 msaitoh Exp $ */
/*
* Copyright (c) 2003 Clifford Wright. All rights reserved.
@@ -35,7 +35,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_bce.c,v 1.51 2019/02/03 03:19:27 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_bce.c,v 1.52 2019/05/30 02:32:18 msaitoh Exp $");
#include "vlan.h"
@@ -257,6 +257,7 @@ bce_attach(device_t parent, device_t sel
int error, i, pmreg, rseg;
uint16_t phyval;
struct ifnet *ifp;
+ struct mii_data *mii = &sc->bce_mii;
char intrbuf[PCI_INTRSTR_LEN];
sc->bce_dev = self;
@@ -424,21 +425,20 @@ bce_attach(device_t parent, device_t sel
/* Initialize our media structures and probe the MII. */
- sc->bce_mii.mii_ifp = ifp;
- sc->bce_mii.mii_readreg = bce_mii_read;
- sc->bce_mii.mii_writereg = bce_mii_write;
- sc->bce_mii.mii_statchg = bce_statchg;
-
- sc->ethercom.ec_mii = &sc->bce_mii;
- ifmedia_init(&sc->bce_mii.mii_media, 0, ether_mediachange,
- ether_mediastatus);
- mii_attach(sc->bce_dev, &sc->bce_mii, 0xffffffff, MII_PHY_ANY,
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = bce_mii_read;
+ mii->mii_writereg = bce_mii_write;
+ mii->mii_statchg = bce_statchg;
+
+ sc->ethercom.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, 0, ether_mediachange, ether_mediastatus);
+ mii_attach(sc->bce_dev, mii, 0xffffffff, MII_PHY_ANY,
MII_OFFSET_ANY, MIIF_FORCEANEG|MIIF_DOPAUSE);
- if (LIST_FIRST(&sc->bce_mii.mii_phys) == NULL) {
- ifmedia_add(&sc->bce_mii.mii_media, IFM_ETHER | IFM_NONE, 0, NULL);
- ifmedia_set(&sc->bce_mii.mii_media, IFM_ETHER | IFM_NONE);
+ if (LIST_FIRST(&mii->mii_phys) == NULL) {
+ ifmedia_add(&mii->mii_media, IFM_ETHER | IFM_NONE, 0, NULL);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_NONE);
} else
- ifmedia_set(&sc->bce_mii.mii_media, IFM_ETHER | IFM_AUTO);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
/* get the phy */
sc->bce_phy = bus_space_read_1(sc->bce_btag, sc->bce_bhandle,
BCE_MAGIC_PHY) & 0x1f;
Index: src/sys/dev/pci/if_lii.c
diff -u src/sys/dev/pci/if_lii.c:1.25 src/sys/dev/pci/if_lii.c:1.26
--- src/sys/dev/pci/if_lii.c:1.25 Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_lii.c Thu May 30 02:32:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_lii.c,v 1.25 2019/05/28 07:41:49 msaitoh Exp $ */
+/* $NetBSD: if_lii.c,v 1.26 2019/05/30 02:32:18 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.25 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_lii.c,v 1.26 2019/05/30 02:32:18 msaitoh Exp $");
#include <sys/param.h>
@@ -237,6 +237,7 @@ lii_attach(device_t parent, device_t sel
struct pci_attach_args *pa = aux;
uint8_t eaddr[ETHER_ADDR_LEN];
struct ifnet *ifp = &sc->sc_ec.ec_if;
+ struct mii_data *mii = &sc->sc_mii;
pci_intr_handle_t ih;
const char *intrstr;
pcireg_t cmd;
@@ -310,16 +311,15 @@ lii_attach(device_t parent, device_t sel
callout_init(&sc->sc_tick_ch, 0);
callout_setfunc(&sc->sc_tick_ch, lii_tick, sc);
- sc->sc_mii.mii_ifp = ifp;
- sc->sc_mii.mii_readreg = lii_mii_readreg;
- sc->sc_mii.mii_writereg = lii_mii_writereg;
- sc->sc_mii.mii_statchg = lii_mii_statchg;
- sc->sc_ec.ec_mii = &sc->sc_mii;
- ifmedia_init(&sc->sc_mii.mii_media, IFM_IMASK, lii_media_change,
+ mii->mii_ifp = ifp;
+ mii->mii_readreg = lii_mii_readreg;
+ mii->mii_writereg = lii_mii_writereg;
+ mii->mii_statchg = lii_mii_statchg;
+ sc->sc_ec.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, IFM_IMASK, lii_media_change,
lii_media_status);
- mii_attach(sc->sc_dev, &sc->sc_mii, 0xffffffff, 1,
- MII_OFFSET_ANY, 0);
- ifmedia_set(&sc->sc_mii.mii_media, IFM_ETHER | IFM_AUTO);
+ mii_attach(sc->sc_dev, mii, 0xffffffff, 1, MII_OFFSET_ANY, 0);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
strlcpy(ifp->if_xname, device_xname(self), IFNAMSIZ);
ifp->if_softc = sc;
Index: src/sys/dev/pci/if_sk.c
diff -u src/sys/dev/pci/if_sk.c:1.97 src/sys/dev/pci/if_sk.c:1.98
--- src/sys/dev/pci/if_sk.c:1.97 Tue May 28 07:41:49 2019
+++ src/sys/dev/pci/if_sk.c Thu May 30 02:32:18 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_sk.c,v 1.97 2019/05/28 07:41:49 msaitoh Exp $ */
+/* $NetBSD: if_sk.c,v 1.98 2019/05/30 02:32:18 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.97 2019/05/28 07:41:49 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_sk.c,v 1.98 2019/05/30 02:32:18 msaitoh Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1214,6 +1214,7 @@ void
sk_attach(device_t parent, device_t self, void *aux)
{
struct sk_if_softc *sc_if = device_private(self);
+ struct mii_data *mii = &sc_if->sk_mii;
struct sk_softc *sc = device_private(parent);
struct skc_attach_args *sa = aux;
struct sk_txmap_entry *entry;
@@ -1434,35 +1435,33 @@ sk_attach(device_t parent, device_t self
DPRINTFN(2, ("sk_attach: 1\n"));
- sc_if->sk_mii.mii_ifp = ifp;
+ mii->mii_ifp = ifp;
switch (sc->sk_type) {
case SK_GENESIS:
- sc_if->sk_mii.mii_readreg = sk_xmac_miibus_readreg;
- sc_if->sk_mii.mii_writereg = sk_xmac_miibus_writereg;
- sc_if->sk_mii.mii_statchg = sk_xmac_miibus_statchg;
+ mii->mii_readreg = sk_xmac_miibus_readreg;
+ mii->mii_writereg = sk_xmac_miibus_writereg;
+ mii->mii_statchg = sk_xmac_miibus_statchg;
break;
case SK_YUKON:
case SK_YUKON_LITE:
case SK_YUKON_LP:
- sc_if->sk_mii.mii_readreg = sk_marv_miibus_readreg;
- sc_if->sk_mii.mii_writereg = sk_marv_miibus_writereg;
- sc_if->sk_mii.mii_statchg = sk_marv_miibus_statchg;
+ mii->mii_readreg = sk_marv_miibus_readreg;
+ mii->mii_writereg = sk_marv_miibus_writereg;
+ mii->mii_statchg = sk_marv_miibus_statchg;
mii_flags = MIIF_DOPAUSE;
break;
}
- sc_if->sk_ethercom.ec_mii = &sc_if->sk_mii;
- ifmedia_init(&sc_if->sk_mii.mii_media, 0,
- sk_ifmedia_upd, ether_mediastatus);
- mii_attach(self, &sc_if->sk_mii, 0xffffffff, MII_PHY_ANY,
+ sc_if->sk_ethercom.ec_mii = mii;
+ ifmedia_init(&mii->mii_media, 0, sk_ifmedia_upd, ether_mediastatus);
+ mii_attach(self, mii, 0xffffffff, MII_PHY_ANY,
MII_OFFSET_ANY, mii_flags);
- if (LIST_EMPTY(&sc_if->sk_mii.mii_phys)) {
+ if (LIST_EMPTY(&mii->mii_phys)) {
aprint_error_dev(sc_if->sk_dev, "no PHY found!\n");
- ifmedia_add(&sc_if->sk_mii.mii_media, IFM_ETHER | IFM_MANUAL,
- 0, NULL);
- ifmedia_set(&sc_if->sk_mii.mii_media, IFM_ETHER | IFM_MANUAL);
+ ifmedia_add(&mii->mii_media, IFM_ETHER | IFM_MANUAL, 0, NULL);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_MANUAL);
} else
- ifmedia_set(&sc_if->sk_mii.mii_media, IFM_ETHER | IFM_AUTO);
+ ifmedia_set(&mii->mii_media, IFM_ETHER | IFM_AUTO);
callout_init(&sc_if->sk_tick_ch, 0);
callout_reset(&sc_if->sk_tick_ch, hz, sk_tick, sc_if);