Re: [PATCH net] atl1c: improve reliability of mdio ops on Mikrotik 10/25G NIC

From: Andrew Lunn
Date: Thu Jun 17 2021 - 10:35:45 EST


On Thu, Jun 17, 2021 at 03:25:53PM +0300, Gatis Peisenieks wrote:
> MDIO ops on Mikrotik 10/25G NIC can occasionally take longer
> to complete. This increases the timeout from 1.2 to 12ms.

That seems a very long time. A C22 transaction is 64 bits, and it is
clocked out at 2.5MHz. So it should take (1/2.5*1000*1000)*64 =
0.0000256s, i.e. 0.0256ms. 1.2ms is already 50 times longer than
needed, and now you are suggesting to make it 500 times longer than
needed?

Are you sure there is not something else going on here? I notice
atl1c_stop_phy_polling() does not check the return from
atl1c_wait_mdio_idle(). Maybe this is your problem, you are not
waiting long enough for the MAC to stop directly accessing the PHY?

Andrew