Messages in this thread | | | From | "Jamaluddin, Aminuddin" <> | Subject | RE: [PATCH net 1/1] net: phy: marvell: add link status check before enabling phy loopback | Date | Tue, 30 Aug 2022 07:51:46 +0000 |
| |
> -----Original Message----- > From: Andrew Lunn <andrew@lunn.ch> > Sent: Thursday, 25 August, 2022 9:27 PM > To: Jamaluddin, Aminuddin <aminuddin.jamaluddin@intel.com> > Cc: Heiner Kallweit <hkallweit1@gmail.com>; Russell King > <linux@armlinux.org.uk>; David S . Miller <davem@davemloft.net>; Eric > Dumazet <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; > Paolo Abeni <pabeni@redhat.com>; Ismail, Mohammad Athari > <mohammad.athari.ismail@intel.com>; netdev@vger.kernel.org; linux- > kernel@vger.kernel.org; stable@vger.kernel.org; Tan, Tee Min > <tee.min.tan@intel.com>; Zulkifli, Muhammad Husaini > <muhammad.husaini.zulkifli@intel.com> > Subject: Re: [PATCH net 1/1] net: phy: marvell: add link status check before > enabling phy loopback > > > @@ -2015,14 +2016,23 @@ static int m88e1510_loopback(struct > phy_device *phydev, bool enable) > > if (err < 0) > > return err; > > > > - /* FIXME: Based on trial and error test, it seem 1G need to > have > > - * delay between soft reset and loopback enablement. > > - */ > > - if (phydev->speed == SPEED_1000) > > - msleep(1000); > > + if (phydev->speed == SPEED_1000) { > > + err = phy_read_poll_timeout(phydev, MII_BMSR, > val, val & BMSR_LSTATUS, > > + PHY_LOOP_BACK_SLEEP, > > + > PHY_LOOP_BACK_TIMEOUT, true); > > Is this link with itself?
Its required cabled plug in, back to back connection.
> > Have you tested this with the cable unplugged?
Yes we have and its expected to have the timeout. But the self-test required the link to be up first before it can be run.
> > > + if (err) > > + return err; > > I'm just trying to ensure we don't end up here with -ETIMEDOUT. > > > > > +#define PHY_LOOP_BACK_SLEEP 1000000 > > +#define PHY_LOOP_BACK_TIMEOUT 8000000 > > The kernel seems to be pretty consistent in having loopback as one word.
Noted will update in v2.
> > Andrew
| |