Re: [PATCH net] net: phy: dp83869: Set auto mdix bit for forced 100Base-Tx mode
From: Meghana Malladi
Date: Thu Feb 12 2026 - 01:22:03 EST
Hi Andrew,
On 2/11/26 19:42, Andrew Lunn wrote:
On Wed, Feb 11, 2026 at 06:40:32PM +0530, Meghana Malladi wrote:
When using DP83869 in force 100Base-Tx mode, the PHY is required
to have robust Auto-MDIX feature enabled from register 1Eh.
Refer to 7.4.1.2 100BASE-TX section in the TRM [1] for more details.
What are the results of not enabling this? How would somebody know
they need this patch?
This is the fix for 100M full duplex when auto-neg gets disabled, it fails to have a link up and this patch fixes it. I will add more description to the commit message.
Is this a bug fix? Should this be back ported to stable?
+static void dp83869_link_change_notify(struct phy_device *phydev)
+{
+ int cfg4;
+
+ /* When using DP83869 in force 100Base-Tx mode, the PHY is required
+ * to have robust Auto-MDIX feature enabled
+ */
+ if (phydev->autoneg == AUTONEG_DISABLE &&
+ phydev->speed == SPEED_100 &&
+ phydev->duplex == DUPLEX_FULL) {
So forced 100Mbs half duplex does not require robust robust Auto-MDIX?
I haven't tested for half duplex as the issue was raised for full duplex. But based on the TRM seems like it is independent of the duplexity. Let me locally confirm this and fix it accordingly in v2.
What about when you change the configuration out of forced 100 Full?
Shouldn't the configuration be returned to how the user wants
auto-MDIX configured? Should you disable robust Auto-MDIX so that
"unreliable Auto-MDIX" is used?
This bit is only necessary if link partners are configured to operational modes that not supported by normal Auto MDI/MDIX mode (when one of that link partners are in Forced 100Base-TX), will fix it in v2.
Andrew