[PATCH] net: phy: Fix overlong PHY timeout

Matthias Brugger matthias.bgg at gmail.com
Fri Feb 21 17:33:25 CET 2020


Hi Joe,

On 30/01/2020 12:00, Matthias Brugger wrote:
> 
> 
> On 03/01/2020 23:08, Andre Przywara wrote:
>> Commit 27c3f70f3b50 ("net: phy: Increase link up delay in
>> genphy_update_link()") increased the per-iteration waiting time from
>> 1ms to 50ms, without adjusting the timeout counter. This lead to the
>> timeout increasing from the typical 4 seconds to over three minutes.
>>
>> Adjust the timeout counter evaluation by that factor of 50 to bring the
>> timeout back to the intended value.
>>
>> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
> 
> I tested this on RPi4 with the genet patches on top. Now the timeout is
> reasonable :)
> 
> Tested-by: Matthias Brugger <mbrugger at suse.com>
> 

Friedly reminder, are you planning to take this fix for v2020.04?

Regards,
Matthias

>> ---
>>  drivers/net/phy/phy.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
>> index 80a7664e49..5cf9c165b6 100644
>> --- a/drivers/net/phy/phy.c
>> +++ b/drivers/net/phy/phy.c
>> @@ -244,7 +244,7 @@ int genphy_update_link(struct phy_device *phydev)
>>  			/*
>>  			 * Timeout reached ?
>>  			 */
>> -			if (i > PHY_ANEG_TIMEOUT) {
>> +			if (i > (PHY_ANEG_TIMEOUT / 50)) {
>>  				printf(" TIMEOUT !\n");
>>  				phydev->link = 0;
>>  				return -ETIMEDOUT;
>>



More information about the U-Boot mailing list