Skip to contentSkip to conversation

Patch "net: phy: fix phy link up when limiting speed via device tree" has been added to the 3.14-stable tree

PATCH [email protected] 1 participant 1 message Jul 4, 2015

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

net: phy: fix phy link up when limiting speed via device tree

to the 3.14-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
net-phy-fix-phy-link-up-when-limiting-speed-via-device-tree.patch
and it can be found in the queue-3.14 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From foo@baz Fri Jul 3 19:59:07 PDT 2015

From: Mugunthan V N <[email protected]>
Date: Thu, 25 Jun 2015 22:21:02 +0530
Subject: net: phy: fix phy link up when limiting speed via device tree

From: Mugunthan V N <[email protected]>

[ Upstream commit eb686231fce3770299760f24fdcf5ad041f44153 ]

When limiting phy link speed using "max-speed" to 100mbps or less on a giga bit phy, phy never completes auto negotiation and phy state machine is held in PHY_AN. Fixing this issue by comparing the giga bit advertise though phydev->supported doesn't have it but phy has BMSR_ESTATEN set. So that auto negotiation is restarted as old and new advertise are different and link comes up fine.

---
 drivers/net/phy/phy_device.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
drivers/net/phy/phy_device.c +3 -2
@@ -765,10 +765,11 @@ static int genphy_config_advert(struct p
 	if (phydev->supported & (SUPPORTED_1000baseT_Half |
 				 SUPPORTED_1000baseT_Full)) {
 		adv |= ethtool_adv_to_mii_ctrl1000_t(advertise);
-		if (adv != oldadv)
-			changed = 1;
 	}
 
+	if (adv != oldadv)
+		changed = 1;
+
 	err = phy_write(phydev, MII_CTRL1000, adv);
 	if (err < 0)
 		return err;

Patches currently in stable-queue which might be from [email protected] are

queue-3.14/net-phy-fix-phy-link-up-when-limiting-speed-via-device-tree.patch