Add support for new Gigabit PHY of RealTek.
I don't have a copy of data sheet so I'm not sure exact PHY model name. Vendor's web page indicates RTL8251 is latest PHY so I used the name. This PHY is used with RTL8168G, RTL8168GU and RTL8411B.
This commit is contained in:
parent
4ba4bea936
commit
cd10b400a6
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=257304
@ -304,6 +304,7 @@ model yyREALTEK RTL8201L 0x0020 RTL8201L 10/100 media interface
|
||||
model xxREALTEK RTL8169S 0x0011 RTL8169S/8110S/8211 1000BASE-T media interface
|
||||
model REALTEK RTL8305SC 0x0005 RTL8305SC 10/100 802.1q switch
|
||||
model REALTEK RTL8201E 0x0008 RTL8201E 10/100 media interface
|
||||
model REALTEK RTL8251 0x0000 RTL8251 1000BASE-T media interface
|
||||
model REALTEK RTL8169S 0x0011 RTL8169S/8110S/8211 1000BASE-T media interface
|
||||
|
||||
/* Seeq Seeq PHYs */
|
||||
|
@ -91,6 +91,7 @@ static void rgephy_load_dspcode(struct mii_softc *);
|
||||
|
||||
static const struct mii_phydesc rgephys[] = {
|
||||
MII_PHY_DESC(REALTEK, RTL8169S),
|
||||
MII_PHY_DESC(REALTEK, RTL8251),
|
||||
MII_PHY_END
|
||||
};
|
||||
|
||||
@ -395,7 +396,8 @@ rgephy_loop(struct mii_softc *sc)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (sc->mii_mpd_rev < 2) {
|
||||
if (sc->mii_mpd_model != MII_MODEL_REALTEK_RTL8251 &&
|
||||
sc->mii_mpd_rev < 2) {
|
||||
PHY_WRITE(sc, RGEPHY_MII_BMCR, RGEPHY_BMCR_PDOWN);
|
||||
DELAY(1000);
|
||||
}
|
||||
@ -428,7 +430,8 @@ rgephy_load_dspcode(struct mii_softc *sc)
|
||||
{
|
||||
int val;
|
||||
|
||||
if (sc->mii_mpd_rev >= 2)
|
||||
if (sc->mii_mpd_model == MII_MODEL_REALTEK_RTL8251 ||
|
||||
sc->mii_mpd_rev >= 2)
|
||||
return;
|
||||
|
||||
PHY_WRITE(sc, 31, 0x0001);
|
||||
|
Loading…
Reference in New Issue
Block a user