From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefan Roese Date: Thu, 18 Feb 2016 08:47:34 +0100 Subject: [U-Boot] [PATCH] net: fix m88e1111s PHY auto negotiation timeout In-Reply-To: <1455605647-3849-1-git-send-email-thomas@wytron.com.tw> References: <1455605647-3849-1-git-send-email-thomas@wytron.com.tw> Message-ID: <56C57716.4060105@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Thomas, On 16.02.2016 07:54, Thomas Chou wrote: > After commit a058052c358c > ("net: phy: do not read configuration register on reset") > > both 3c120 and 10m50 devboard which use Marvel m88e1111s PHY got this > error message, > > Net: eth0: ethernet at 400 > => ping 192.168.1.5 > ethernet at 400 Waiting for PHY auto negotiation to complete.... TIMEOUT ! > Using ethernet at 400 device > host 192.168.1.5 is alive > > This is because the auto negotiation control bit was cleared by the new > phy_reset(). But the m88e1111s_config() does the soft-reset already, > there is no need to reset twice. The extra phy_reset() should be > removed. > > Signed-off-by: Thomas Chou > --- > drivers/net/phy/marvell.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c > index eab1558..5badfac 100644 > --- a/drivers/net/phy/marvell.c > +++ b/drivers/net/phy/marvell.c > @@ -271,8 +271,6 @@ static int m88e1111s_config(struct phy_device *phydev) > > genphy_config_aneg(phydev); > > - phy_reset(phydev); > - > return 0; > } > > I've also stumbled over this problem on some boards equipped with the Marvell PHY. Could you please take a look at these patches instead: http://patchwork.ozlabs.org/patch/581316/ http://patchwork.ozlabs.org/patch/581317/ Do they work for you? Joe, could you please make sure to push these for this release? As its a real bugfix. Thanks, Stefan