aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/phy/marvell.c
diff options
context:
space:
mode:
authorMario Six <mario.six@gdsys.cc>2018-01-15 11:08:25 +0100
committerJoe Hershberger <joe.hershberger@ni.com>2018-02-26 15:47:07 -0600
commit431be621c6cbc72efd1d45fa36686a682cbb470a (patch)
treea04b07363f4ea33abd7a4b9a3022977d53a728d0 /drivers/net/phy/marvell.c
parent76f11d3adf9aaf081856e354e0290afe8e5a7911 (diff)
downloadu-boot-431be621c6cbc72efd1d45fa36686a682cbb470a.zip
u-boot-431be621c6cbc72efd1d45fa36686a682cbb470a.tar.gz
u-boot-431be621c6cbc72efd1d45fa36686a682cbb470a.tar.bz2
net: phy: marvell 88e151x: Fix handling of bare RGMII interface type
Commit 68e6ecadc551 ("net: phy: marvell 88e151x: Fix handling of RGMII interface types") fixed the initialization of 88e151x phys, but made it so that interfaces of type PHY_INTERFACE_MODE_RGMII had both RX and TX delay bits cleared. The default (like in m88e1111s_config) is to have both bits set. Hence, this patch changes the behavior in the PHY_INTERFACE_MODE_RGMII case so that both bits are set. Signed-off-by: Mario Six <mario.six@gdsys.cc> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Diffstat (limited to 'drivers/net/phy/marvell.c')
-rw-r--r--drivers/net/phy/marvell.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/phy/marvell.c b/drivers/net/phy/marvell.c
index b05afc1..2932340 100644
--- a/drivers/net/phy/marvell.c
+++ b/drivers/net/phy/marvell.c
@@ -382,7 +382,8 @@ static int m88e1518_config(struct phy_device *phydev)
reg = phy_read(phydev, MDIO_DEVAD_NONE, MIIM_88E151x_PHY_MSCR);
reg &= ~MIIM_88E151x_RGMII_RXTX_DELAY;
- if (phydev->interface == PHY_INTERFACE_MODE_RGMII_ID)
+ if (phydev->interface == PHY_INTERFACE_MODE_RGMII ||
+ phydev->interface == PHY_INTERFACE_MODE_RGMII_ID)
reg |= MIIM_88E151x_RGMII_RXTX_DELAY;
else if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID)
reg |= MIIM_88E151x_RGMII_RX_DELAY;