From 3c3c45471c089f964147a49d8ed6634a82d8cd32 Mon Sep 17 00:00:00 2001 From: Daniel O'Callaghan Date: Wed, 27 Feb 2002 02:11:34 +0000 Subject: [PATCH] Remove problematic PHY_WRITE so that autoneg to 10 Mbps actually works. Submitted by: Dennis Reviewed by: Bill Paul MFC after: 7 days --- sys/dev/mii/rlphy.c | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/sys/dev/mii/rlphy.c b/sys/dev/mii/rlphy.c index f6a4436e2004..27825fa07e7d 100644 --- a/sys/dev/mii/rlphy.c +++ b/sys/dev/mii/rlphy.c @@ -79,7 +79,6 @@ static driver_t rlphy_driver = { DRIVER_MODULE(rlphy, miibus, rlphy_driver, rlphy_devclass, 0, 0); static int rlphy_service __P((struct mii_softc *, struct mii_data *, int)); -static void rlphy_reset __P((struct mii_softc *)); static int rlphy_probe(dev) device_t dev; @@ -150,7 +149,7 @@ static int rlphy_attach(dev) ADD(IFM_MAKEWORD(IFM_ETHER, IFM_100_TX, IFM_LOOP, sc->mii_inst), BMCR_LOOP|BMCR_S100); - rlphy_reset(sc); + mii_phy_reset(sc); sc->mii_capabilities = PHY_READ(sc, MII_BMSR) & ma->mii_capmask; @@ -257,17 +256,3 @@ rlphy_service(sc, mii, cmd) mii_phy_update(sc, cmd); return (0); } - -static void -rlphy_reset(sc) - struct mii_softc *sc; -{ - - mii_phy_reset(sc); - - /* - * XXX RealTek PHY doesn't set the BMCR properly after - * XXX reset, which breaks autonegotiation. - */ - PHY_WRITE(sc, MII_BMCR, BMCR_S100|BMCR_AUTOEN|BMCR_FDX); -}