aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/msk
diff options
context:
space:
mode:
authorMarius Strobl <marius@FreeBSD.org>2010-11-07 11:12:29 +0000
committerMarius Strobl <marius@FreeBSD.org>2010-11-07 11:12:29 +0000
commit605d4f8b84e727c542eec73fceec034384cb7d5e (patch)
tree04556d2ac5cd72e1720ce6cc42639006bff64577 /sys/dev/msk
parent3d100f4fe9bc2a19da822d875963a43ba4c5af7c (diff)
Notes
Diffstat (limited to 'sys/dev/msk')
-rw-r--r--sys/dev/msk/if_msk.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c
index 98c42455a140..1dd3167d3ee0 100644
--- a/sys/dev/msk/if_msk.c
+++ b/sys/dev/msk/if_msk.c
@@ -399,9 +399,6 @@ msk_miibus_readreg(device_t dev, int phy, int reg)
{
struct msk_if_softc *sc_if;
- if (phy != PHY_ADDR_MARV)
- return (0);
-
sc_if = device_get_softc(dev);
return (msk_phy_readreg(sc_if, phy, reg));
@@ -440,9 +437,6 @@ msk_miibus_writereg(device_t dev, int phy, int reg, int val)
{
struct msk_if_softc *sc_if;
- if (phy != PHY_ADDR_MARV)
- return (0);
-
sc_if = device_get_softc(dev);
return (msk_phy_writereg(sc_if, phy, reg, val));
@@ -1571,10 +1565,11 @@ msk_attach(device_t dev)
* Do miibus setup.
*/
MSK_IF_UNLOCK(sc_if);
- error = mii_phy_probe(dev, &sc_if->msk_miibus, msk_mediachange,
- msk_mediastatus);
+ error = mii_attach(dev, &sc_if->msk_miibus, ifp, msk_mediachange,
+ msk_mediastatus, BMSR_DEFCAPMASK, PHY_ADDR_MARV, MII_OFFSET_ANY,
+ mmd->mii_flags);
if (error != 0) {
- device_printf(sc_if->msk_if_dev, "no PHY found!\n");
+ device_printf(sc_if->msk_if_dev, "attaching PHYs failed\n");
ether_ifdetach(ifp);
error = ENXIO;
goto fail;
@@ -1815,8 +1810,10 @@ mskc_attach(device_t dev)
}
mmd->port = MSK_PORT_A;
mmd->pmd = sc->msk_pmd;
- if (sc->msk_pmd == 'L' || sc->msk_pmd == 'S' || sc->msk_pmd == 'P')
+ if (sc->msk_pmd == 'L' || sc->msk_pmd == 'S')
mmd->mii_flags |= MIIF_HAVEFIBER;
+ if (sc->msk_pmd == 'P')
+ mmd->mii_flags |= MIIF_HAVEFIBER | MIIF_MACPRIV0;
device_set_ivars(sc->msk_devs[MSK_PORT_A], mmd);
if (sc->msk_num_port > 1) {
@@ -1835,8 +1832,10 @@ mskc_attach(device_t dev)
}
mmd->port = MSK_PORT_B;
mmd->pmd = sc->msk_pmd;
- if (sc->msk_pmd == 'L' || sc->msk_pmd == 'S' || sc->msk_pmd == 'P')
+ if (sc->msk_pmd == 'L' || sc->msk_pmd == 'S')
mmd->mii_flags |= MIIF_HAVEFIBER;
+ if (sc->msk_pmd == 'P')
+ mmd->mii_flags |= MIIF_HAVEFIBER | MIIF_MACPRIV0;
device_set_ivars(sc->msk_devs[MSK_PORT_B], mmd);
}