RE: [PATCH net 1/1] net: phy: marvell: add link status check before enabling phy loopback

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Andrew Lunn <andrew@xxxxxxx>
> Sent: Thursday, 25 August, 2022 9:27 PM
> To: Jamaluddin, Aminuddin <aminuddin.jamaluddin@xxxxxxxxx>
> Cc: Heiner Kallweit <hkallweit1@xxxxxxxxx>; Russell King
> <linux@xxxxxxxxxxxxxxx>; David S . Miller <davem@xxxxxxxxxxxxx>; Eric
> Dumazet <edumazet@xxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>;
> Paolo Abeni <pabeni@xxxxxxxxxx>; Ismail, Mohammad Athari
> <mohammad.athari.ismail@xxxxxxxxx>; netdev@xxxxxxxxxxxxxxx; linux-
> kernel@xxxxxxxxxxxxxxx; stable@xxxxxxxxxxxxxxx; Tan, Tee Min
> <tee.min.tan@xxxxxxxxx>; Zulkifli, Muhammad Husaini
> <muhammad.husaini.zulkifli@xxxxxxxxx>
> 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




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux