[PATCH 07/14] net: axienet: Fix SGMII support
andre.przywara at arm.com
Fri Jan 10 06:20:38 PST 2020
On Fri, 10 Jan 2020 15:04:15 +0100
Andrew Lunn <andrew at lunn.ch> wrote:
> On Fri, Jan 10, 2020 at 11:54:08AM +0000, Andre Przywara wrote:
> > With SGMII, the MAC and the PHY can negotiate the link speed between
> > themselves, without the host needing to mediate between them.
> > Linux recognises this, and will call phylink's mac_config with the speed
> > member set to SPEED_UNKNOWN (-1).
> > Currently the axienet driver will bail out and complain about an
> > unsupported link speed.
> > Teach axienet's mac_config callback to leave the MAC's speed setting
> > alone if the requested speed is SPEED_UNKNOWN.
> Hi Andre
> Is there an interrupt when SGMII signals a change in link state? If
> so, you should call phylink_mac_change().
Good point. The doc describes a "Auto-Negotiation Complete" interrupt status bit, which signal that " ... auto-negotiation of the SGMII or 1000BASE-X interface has completed."
But I have no clue whether that would trigger on a link status *change*. Is there a way to test this without pulling the cable? My board sits in a data centre, so is not easily accessible to me.
More information about the linux-arm-kernel