[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <24f210a9-54c9-eb0b-af88-a7ad75ce26aa@amd.com>
Date: Mon, 6 Dec 2021 09:59:46 -0600
From: Tom Lendacky <thomas.lendacky@....com>
To: "Russell King (Oracle)" <linux@...linux.org.uk>,
Florian Fainelli <f.fainelli@...il.com>,
Andrew Lunn <andrew@...n.ch>,
Heiner Kallweit <hkallweit1@...il.com>
Cc: Vivien Didelot <vivien.didelot@...il.com>,
Vladimir Oltean <olteanv@...il.com>,
Alexandre Belloni <alexandre.belloni@...tlin.com>,
Claudiu Manoil <claudiu.manoil@....com>,
George McCollister <george.mccollister@...il.com>,
Hauke Mehrtens <hauke@...ke-m.de>,
Kurt Kanzenbach <kurt@...utronix.de>,
Vladimir Oltean <vladimir.oltean@....com>,
Woojung Huh <woojung.huh@...rochip.com>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, netdev@...r.kernel.org,
UNGLinuxDriver@...rochip.com
Subject: Re: [PATCH RFC net-next 05/12] net: dsa: bcm_sf2: convert to
phylink_generic_validate()
On 12/4/21 8:52 AM, Russell King (Oracle) wrote:
> On Sat, Dec 04, 2021 at 08:59:12AM +0000, Russell King (Oracle) wrote:
>> On Fri, Dec 03, 2021 at 08:18:22PM -0800, Florian Fainelli wrote:
>
> Here's a patch for one of my suggestions above. Tom, I'd appreciate
> if you could look at this please. Thanks.
I think it's fine to move the setting down. The driver that I was working
on at the time only advertised 1000baseKX_Full for 1gpbs (which wasn't in
the array and why I added it), so I don't see an issue with moving it down.
A quick build and test showed that I was able to successfully connect at 1
gbps. I didn't dive any deeper than that.
Thanks,
Tom
>
> 8<===
> From: "Russell King (Oracle)" <rmk+kernel@...linux.org.uk>
> Subject: [PATCH net-next] net: phy: prefer 1000baseT over 1000baseKX
>
> The PHY settings table is supposed to be sorted by descending match
> priority - in other words, earlier entries are preferred over later
> entries.
>
> The order of 1000baseKX/Full and 1000baseT/Full is such that we
> prefer 1000baseKX/Full over 1000baseT/Full, but 1000baseKX/Full is
> a lot rarer than 1000baseT/Full, and thus is much less likely to
> be preferred.
>
> This causes phylink problems - it means a fixed link specifying a
> speed of 1G and full duplex gets an ethtool linkmode of 1000baseKX/Full
> rather than 1000baseT/Full as would be expected - and since we offer
> userspace a software emulation of a conventional copper PHY, we want
> to offer copper modes in preference to anything else. However, we do
> still want to allow the rarer modes as well.
>
> Hence, let's reorder these two modes to prefer copper.
>
> Signed-off-by: Russell King (Oracle) <rmk+kernel@...linux.org.uk>
> ---
> drivers/net/phy/phy-core.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/phy/phy-core.c b/drivers/net/phy/phy-core.c
> index 2870c33b8975..271fc01f7f7f 100644
> --- a/drivers/net/phy/phy-core.c
> +++ b/drivers/net/phy/phy-core.c
> @@ -162,11 +162,11 @@ static const struct phy_setting settings[] = {
> PHY_SETTING( 2500, FULL, 2500baseT_Full ),
> PHY_SETTING( 2500, FULL, 2500baseX_Full ),
> /* 1G */
> - PHY_SETTING( 1000, FULL, 1000baseKX_Full ),
> PHY_SETTING( 1000, FULL, 1000baseT_Full ),
> PHY_SETTING( 1000, HALF, 1000baseT_Half ),
> PHY_SETTING( 1000, FULL, 1000baseT1_Full ),
> PHY_SETTING( 1000, FULL, 1000baseX_Full ),
> + PHY_SETTING( 1000, FULL, 1000baseKX_Full ),
> /* 100M */
> PHY_SETTING( 100, FULL, 100baseT_Full ),
> PHY_SETTING( 100, FULL, 100baseT1_Full ),
>
Powered by blists - more mailing lists