[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKgT0UfXRsVEgvJScapiXNWyqB8Yd07t5dgrKX82MRup78tXrw@mail.gmail.com>
Date: Thu, 10 Jul 2025 10:22:44 -0700
From: Alexander Duyck <alexander.duyck@...il.com>
To: Andrew Lunn <andrew@...n.ch>
Cc: "Russell King (Oracle)" <linux@...linux.org.uk>,
Maxime Chevallier <maxime.chevallier@...tlin.com>, Heiner Kallweit <hkallweit1@...il.com>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org, Paolo Abeni <pabeni@...hat.com>
Subject: Re: [PATCH net-next 3/3] net: phylink: add phylink_sfp_select_interface_speed()
On Thu, Jul 10, 2025 at 9:11 AM Andrew Lunn <andrew@...n.ch> wrote:
>
> > Settings for enp1s0:
> > Supported ports: [ ]
> > Supported link modes: 50000baseCR/Full
> > 100000baseCR2/Full
> > Supported pause frame use: Symmetric Receive-only
> > Supports auto-negotiation: No
> > Supported FEC modes: RS
> > Advertised link modes: 100000baseCR2/Full
> > Advertised pause frame use: Symmetric Receive-only
> > Advertised auto-negotiation: No
> > Advertised FEC modes: RS
> > Link partner advertised link modes: 100000baseCR2/Full
> > Link partner advertised pause frame use: No
> > Link partner advertised auto-negotiation: No
> > Link partner advertised FEC modes: RS
>
> This all looks suspicious. If it does not support autoneg, how can it
> know what the link partner is advertising?
>
> If you look at what phylib does, for plain old 1G devices:
>
> genphy_read_status() calls genphy_read_lpa()
>
> genphy_read_lpa() then looks to see if autoneg is enabled, and if not
> it does linkmode_zero(phydev->lp_advertising).
>
> So it will not report any link partner information.
>
> What is wrong, that it is reporting LP information, or that it is
> reporting it does not support autoneg when in fact it is actually
> doing autoneg?
I have some debug code on here that is reporting the FW config as the
"LP Advertised". I had borrowed that approach from the phylink
fixedlink config as I thought it was a good way for me to know what
the FW was requesting without having to report it out to a log file.
Powered by blists - more mailing lists