summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2012-02-19 12:09:17 +0000
committermarius <marius@FreeBSD.org>2012-02-19 12:09:17 +0000
commit69ca78c3a92f628669c685c3d74ab9e10fa732bb (patch)
treea17a263d3063e1b3941978244e05c9bca528f379
parentfaf7be49ae44f552b4fc94ec07863c71eedc9668 (diff)
downloadFreeBSD-src-69ca78c3a92f628669c685c3d74ab9e10fa732bb.zip
FreeBSD-src-69ca78c3a92f628669c685c3d74ab9e10fa732bb.tar.gz
- Probe BCM57780.
- In case the parent is bge(4), don't set the Jumbo frame settings unless the MAC actually is Jumbo capable as otherwise the PHY might not have the corresponding registers implemented. This is also in line with what the Linux tg3 driver does. PR: 165032 Submitted by: Alexander Milanov Obtained from: OpenBSD MFC after: 3 days
-rw-r--r--sys/dev/mii/brgphy.c7
-rw-r--r--sys/dev/mii/miidevs1
2 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/mii/brgphy.c b/sys/dev/mii/brgphy.c
index cf924cf..57646e5 100644
--- a/sys/dev/mii/brgphy.c
+++ b/sys/dev/mii/brgphy.c
@@ -146,6 +146,7 @@ static const struct mii_phydesc brgphys[] = {
MII_PHY_DESC(BROADCOM3, BCM5719C),
MII_PHY_DESC(BROADCOM3, BCM5720C),
MII_PHY_DESC(BROADCOM3, BCM57765),
+ MII_PHY_DESC(BROADCOM3, BCM57780),
MII_PHY_DESC(xxBROADCOM_ALT1, BCM5906),
MII_PHY_END
};
@@ -225,7 +226,8 @@ brgphy_attach(device_t dev)
sc->mii_flags |= MIIF_HAVEFIBER;
}
break;
- } break;
+ }
+ break;
case MII_OUI_BROADCOM2:
switch (sc->mii_mpd_model) {
case MII_MODEL_BROADCOM2_BCM5708S:
@@ -942,7 +944,8 @@ brgphy_reset(struct mii_softc *sc)
if (bge_sc->bge_phy_flags & BGE_PHY_JITTER_BUG)
brgphy_fixup_jitter_bug(sc);
- brgphy_jumbo_settings(sc, ifp->if_mtu);
+ if (bge_sc->bge_flags & BGE_FLAG_JUMBO)
+ brgphy_jumbo_settings(sc, ifp->if_mtu);
if ((bge_sc->bge_phy_flags & BGE_PHY_NO_WIRESPEED) == 0)
brgphy_ethernet_wirespeed(sc);
diff --git a/sys/dev/mii/miidevs b/sys/dev/mii/miidevs
index 3e85261..a68094f 100644
--- a/sys/dev/mii/miidevs
+++ b/sys/dev/mii/miidevs
@@ -179,6 +179,7 @@ model BROADCOM2 BCM5784 0x003a BCM5784 10/100/1000baseT PHY
model BROADCOM2 BCM5709C 0x003c BCM5709 10/100/1000baseT PHY
model BROADCOM2 BCM5761 0x003d BCM5761 10/100/1000baseT PHY
model BROADCOM2 BCM5709S 0x003f BCM5709S 1000/2500baseSX PHY
+model BROADCOM3 BCM57780 0x0019 BCM57780 1000BASE-T media interface
model BROADCOM3 BCM5717C 0x0020 BCM5717C 1000BASE-T media interface
model BROADCOM3 BCM5719C 0x0022 BCM5719C 1000BASE-T media interface
model BROADCOM3 BCM57765 0x0024 BCM57765 1000BASE-T media interface
OpenPOWER on IntegriCloud