Skip to contentSkip to conversation

Patch "net: ethernet: nb8800: Handle all 4 RGMII modes identically" has been added to the 4.9-stable tree

PATCH [email protected] 1 participant 1 message Aug 8, 2017

Subsystems (2)
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: ethernet: nb8800: Handle all 4 RGMII modes identically

to the 4.9-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-ethernet-nb8800-handle-all-4-rgmii-modes-identically.patch
and it can be found in the queue-4.9 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 Tue Aug 8 16:27:53 PDT 2017

From: Marc Gonzalez <[email protected]>
Date: Tue, 25 Jul 2017 14:35:03 +0200
Subject: net: ethernet: nb8800: Handle all 4 RGMII modes identically

From: Marc Gonzalez <[email protected]>

[ Upstream commit 4813497b537c6208c90d6cbecac5072d347de900 ]

Before commit bf8f6952a233 ("Add blurb about RGMII") it was unclear whose responsibility it was to insert the required clock skew, and in hindsight, some PHY drivers got it wrong. The solution forward is to introduce a new property, explicitly requiring skew from the node to which it is attached. In the interim, this driver will handle all 4 RGMII modes identically (no skew).

Fixes 52dfc8301248 ("net: ethernet: add driver for Aurora VLSI NB8800 Ethernet controller")
---
 drivers/net/ethernet/aurora/nb8800.c |    9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)
drivers/net/ethernet/aurora/nb8800.c +4 -5
@@ -609,7 +609,7 @@ static void nb8800_mac_config(struct net
 		mac_mode |= HALF_DUPLEX;
 
 	if (gigabit) {
-		if (priv->phy_mode == PHY_INTERFACE_MODE_RGMII)
+		if (phy_interface_is_rgmii(dev->phydev))
 			mac_mode |= RGMII_MODE;
 
 		mac_mode |= GMAC_MODE;
@@ -1277,11 +1277,10 @@ static int nb8800_tangox_init(struct net
 		break;
 
 	case PHY_INTERFACE_MODE_RGMII:
-		pad_mode = PAD_MODE_RGMII;
-		break;
-
+	case PHY_INTERFACE_MODE_RGMII_ID:
+	case PHY_INTERFACE_MODE_RGMII_RXID:
 	case PHY_INTERFACE_MODE_RGMII_TXID:
-		pad_mode = PAD_MODE_RGMII | PAD_MODE_GTX_CLK_DELAY;
+		pad_mode = PAD_MODE_RGMII;
 		break;
 
 	default:

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

queue-4.9/arm-dts-tango4-request-rgmii-rx-and-tx-clock-delays.patch queue-4.9/net-ethernet-nb8800-handle-all-4-rgmii-modes-identically.patch queue-4.9/net-phy-correctly-process-phy_halted-in-phy_stop_machine.patch