- 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
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user