Re: [PATCH net] net: phylink: check for SFP bus presence in phylink_expects_phy

From: Maxime Chevallier
Date: Wed Apr 12 2023 - 04:06:44 EST


Hello Russell,

On Wed, 12 Apr 2023 08:51:21 +0100
"Russell King (Oracle)" <linux@xxxxxxxxxxxxxxx> wrote:

> On Wed, Apr 12, 2023 at 09:48:50AM +0200, Maxime Chevallier wrote:
> > When an SFP bus is present, we don't expect a PHY to be attached
> > directly from the MAC driver, it will be handled by phylink at SFP
> > attach time.
>
> If we have a SFP, then phylink should be configured for in-band mode.
> Maybe fix the firmware description instead?
>

The DT used on that platform has the following configuration :

[...]
&gmac1 {
status = "okay";
phy-mode = "sgmii";
managed = "in-band-status";
sfp = <&sfp>;
[...]
}

Here phylink_expects_phy() returns true because although we use
in-band management, the link mode is set to sgmii, and
phylink_expects_phy() checks if we are in in-band mode AND 802.3z.

As we have an SFP and the link mode will be changed according to the
module we plug-in, there should be no problem switching phy-mode to
"1000BaseX", so I'm perfectly fine with this solution.

However, is it semantically correct to use sgmii here ? If so, it may be
a bit counter-intuitive to have to set the mode to 1000BaseX just so
that the phylink_expects_phy() check passes ?

Thanks for the quick reply,

Maxime