From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heiko Schocher Date: Wed, 10 Jul 2013 13:33:18 +0200 Subject: [U-Boot] net, phy: wrong 1000BASE detection with a lan9303 switch In-Reply-To: <20130710111523.E5918381618@gemini.denx.de> References: <51DD32DA.8000809@denx.de> <51DD3D92.8050701@denx.de> <20130710111523.E5918381618@gemini.denx.de> Message-ID: <51DD467E.70104@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Wolfgang, Am 10.07.2013 13:15, schrieb Wolfgang Denk: > Dear Heiko, > > In message<51DD3D92.8050701@denx.de> you wrote: >> >> Would this be an acceptable patch for it: > ... >> @@ -300,6 +300,10 @@ int genphy_parse_link(struct phy_device *phydev) >> * both PHYs in the link >> */ >> gblpa = phy_read(phydev, MDIO_DEVAD_NONE, MII_STAT1000); >> + if (gblpa< 0) { >> + printf ("Could not read MII_STAT1000. Ignoring gigabit capability\n"); >> + gblpa = 0; >> + } >> gblpa&= phy_read(phydev, >> MDIO_DEVAD_NONE, MII_CTRL1000)<< 2; > > Well, this other phy_read() probably needs exactly the same error > handling - and I doubt if we should actually try riding the reg when > the first one failed already? Yes, you are right. The first question is, if such a patch is the right way for fixing it, or if there is a better way ... bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany