diff options
author | Stuart Henderson <sthen@cvs.openbsd.org> | 2010-02-03 16:22:59 +0000 |
---|---|---|
committer | Stuart Henderson <sthen@cvs.openbsd.org> | 2010-02-03 16:22:59 +0000 |
commit | 5d59362221fad1729c1a633a5b19cf967bad1219 (patch) | |
tree | a6f331ed33562fedd3575436b2766eebe5cf222a /sys/dev/mii | |
parent | 3bd186e7a8d7d2140c73492547dd726ad3c2820b (diff) |
Enable the next page bit for IP1001, otherwise the PHY fails
to re-establish 1000baseT link after downgrading to 10/100.
Fixes problems for Andreas Bartelt with ipgphy at VT6130.
From FreeBSD via Brad, ok naddy@
Diffstat (limited to 'sys/dev/mii')
-rw-r--r-- | sys/dev/mii/ipgphy.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/mii/ipgphy.c b/sys/dev/mii/ipgphy.c index aa2bda16185..309a7651823 100644 --- a/sys/dev/mii/ipgphy.c +++ b/sys/dev/mii/ipgphy.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ipgphy.c,v 1.12 2009/08/08 17:12:40 naddy Exp $ */ +/* $OpenBSD: ipgphy.c,v 1.13 2010/02/03 16:22:58 sthen Exp $ */ /*- * Copyright (c) 2006, Pyun YongHyeon <yongari@FreeBSD.org> @@ -353,8 +353,10 @@ ipgphy_mii_phy_auto(struct mii_softc *sc) { uint32_t reg = 0; - if (sc->mii_model == MII_MODEL_ICPLUS_IP1001) + if (sc->mii_model == MII_MODEL_ICPLUS_IP1001) { reg = PHY_READ(sc, IPGPHY_MII_ANAR); + reg |= IPGPHY_ANAR_NP; + } reg |= IPGPHY_ANAR_10T | IPGPHY_ANAR_10T_FDX | IPGPHY_ANAR_100TX | IPGPHY_ANAR_100TX_FDX; |