summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorLendacky, Thomas <Thomas.Lendacky@amd.com>2014-11-04 23:07:35 +0100
committerDavid S. Miller <davem@davemloft.net>2014-11-06 03:50:12 +0100
commit0c95a1faaa155bb49fc4acfec61242e80b8a8502 (patch)
treec286514d1e855efce6257114d2a6363a1dc4bc6a /drivers
parentamd-xgbe: Fix a spelling error (diff)
downloadlinux-0c95a1faaa155bb49fc4acfec61242e80b8a8502.tar.xz
linux-0c95a1faaa155bb49fc4acfec61242e80b8a8502.zip
amd-xgbe-phy: Sync PCS and PHY modes after reset
This patch adds support to sync the states of the PCS and the PHY after a reset is performed. If the PCS and the PHY are not in the same state after reset an extra mode change would be performed. This extra mode change might not be needed if the PCS and the PHY are synced up after reset. Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/phy/amd-xgbe-phy.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/phy/amd-xgbe-phy.c b/drivers/net/phy/amd-xgbe-phy.c
index c456559f6e7f..37b9f3fff1ce 100644
--- a/drivers/net/phy/amd-xgbe-phy.c
+++ b/drivers/net/phy/amd-xgbe-phy.c
@@ -992,7 +992,8 @@ static int amd_xgbe_phy_soft_reset(struct phy_device *phydev)
if (ret & MDIO_CTRL1_RESET)
return -ETIMEDOUT;
- return 0;
+ /* Make sure the XPCS and SerDes are in compatible states */
+ return amd_xgbe_phy_xgmii_mode(phydev);
}
static int amd_xgbe_phy_config_init(struct phy_device *phydev)