[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4012e00f-2192-4cfb-9e29-a8d1855c9ff6@lunn.ch>
Date: Fri, 4 Jul 2025 10:23:45 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Oleksij Rempel <o.rempel@...gutronix.de>
Cc: Heiner Kallweit <hkallweit1@...il.com>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Andre Edich <andre.edich@...rochip.com>, kernel@...gutronix.de,
linux-kernel@...r.kernel.org, Russell King <linux@...linux.org.uk>,
netdev@...r.kernel.org, Lukas Wunner <lukas@...ner.de>
Subject: Re: [PATCH net v2 3/3] net: phy: smsc: Fix link failure in forced
mode with Auto-MDIX
On Thu, Jul 03, 2025 at 01:49:41PM +0200, Oleksij Rempel wrote:
> Force a fixed MDI-X mode when auto-negotiation is disabled to prevent
> link instability.
>
> When forcing the link speed and duplex on a LAN9500 PHY (e.g., with
> `ethtool -s eth0 autoneg off ...`) while leaving MDI-X control in auto
> mode, the PHY fails to establish a stable link. This occurs because the
> PHY's Auto-MDIX algorithm is not designed to operate when
> auto-negotiation is disabled. In this state, the PHY continuously
> toggles the TX/RX signal pairs, which prevents the link partner from
> synchronizing.
That is not good. Somebody got that badly wrong. They should operate
independently.
> This patch resolves the issue by detecting when auto-negotiation is
> disabled. If the MDI-X control mode is set to 'auto', the driver now
> forces a specific, stable mode (ETH_TP_MDI) to prevent the pair
> toggling. This choice of a fixed MDI mode mirrors the behavior the
> hardware would exhibit if the AUTOMDIX_EN strap were configured for a
> fixed MDI connection.
The text implies it, rather than states it, but the code supports
setting a fixed mode before turning autoneg off. So user space does
have full control if needed.
Reviewed-by: Andrew Lunn <andrew@...n.ch>
Andrew
Powered by blists - more mailing lists