On Thu, Sep 21, 2023 at 03:14:59PM +0200, Andrew Lunn wrote: > > Auto-negotiation between 10, 100, 1000Mbps will use > > in-band auto negotiation. Auto-negotiation between 10/100/1000Mbps and > > 2.5Gbps will work as the following proposed flow, the stmmac driver reads > > the PHY link status registers then identifies the negotiated speed. > > I don't think you replied to my comment. > > in-band is just an optimisation. It in theory allows you to avoid a > software path, the PHY driver talking to the MAC driver about the PHY > status. As an optimisation, it is optional. Linux has the software > path and the MAC driver you are using basically has it implemented. Sorry Andrew, I have to disagree. It isn't always optional - there are PHYs out there where they won't pass data until the in-band exchange has completed. If you try to operate out-of-band without the PHY being told that is the case, and program the MAC/PCS end not to respond to the in-band frames from the PHY, the PHY will report link up as normal (since it reports the media side), but no data will flow because the MAC facing side of the PHY hasn't completed. The only exception are PHYs that default to in-band but have an inband bypass mode also enabled to cover the case where the MAC/PCS doesn't respond to the inband messages. -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!