On Wed, Jun 17, 2020 at 09:24:50PM +0100, Russell King - ARM Linux admin wrote: > On Wed, Jun 17, 2020 at 08:43:34PM +0200, Andrew Lunn wrote: > > You have explained what the change does. But not why it is > > needed. What exactly is happening. To me, the key thing is > > understanding why we get -110, and why it is not an actual error we > > should be reporting as an error. That is what needs explaining. > > The patch author really ought to be explaining this... but let me > have a go. It's worth pointing out that the comments in the file > aren't good English either, so don't really describe what is going > on. > > When this PHY is in EDPD mode, it doesn't always detect a connected > cable. The workaround for it involves, when the link is down, and > at each read_status() call: > > - disable EDPD mode, forcing the PHY out of low-power mode > - waiting 640ms to see if we have any energy detected from the media > - re-enable entry to EDPD mode > > This is presumably enough to allow the PHY to notice that a cable is > connected, and resume normal operations to negotiate with the partner. > > The problem is that when no media is detected, the 640ms wait times > out (as it should, we don't want to wait forever) and the kernel > prints a warning.
Hi Russell Yes, that is what i was thinking. There probably should be a comment added just to prevent somebody swapping it back to phy_read_poll_timeout(). It is not clear that -ETIMEOUT is expected under some conditions. Andrew