summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Lunn <andrew@lunn.ch>2016-11-10 15:44:00 +0100
committerDavid S. Miller <davem@davemloft.net>2016-11-13 22:36:35 -0500
commitfedf18651b07f1701f9e8684b49f3b6c879577fc (patch)
treedd60ae39c4245ad342ae547e6290396666d4e14f
parent63fb571ee50320191a3cc2c4634c9c9f918a2c44 (diff)
downloadlinux-fedf18651b07f1701f9e8684b49f3b6c879577fc.tar.bz2
net: dsa: mv88e6xxx: Don't modify RGMII delays when not RGMII mode
The RGMII modes delays can be set via strapping pings or EEPROM. Don't change them unless explicitly asked to change them. The recent refactoring of setting the MAC configuration changed this behaviours, in that CPU and DSA ports have any pre-configured RGMII delays removed. This breaks the Armada 370RD board. Restore the previous behaviour, in that RGMII delays are only applied/removed when explicitly asked for via an phy-mode being PHY_INTERFACE_MODE_RGMII* Fixes: 7340e5ecdbb1 ("net: dsa: mv88e6xxx: setup port's MAC") Signed-off-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/dsa/mv88e6xxx/port.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/dsa/mv88e6xxx/port.c b/drivers/net/dsa/mv88e6xxx/port.c
index 18eeed083cbd..e4978f6367aa 100644
--- a/drivers/net/dsa/mv88e6xxx/port.c
+++ b/drivers/net/dsa/mv88e6xxx/port.c
@@ -63,9 +63,10 @@ static int mv88e6xxx_port_set_rgmii_delay(struct mv88e6xxx_chip *chip, int port,
reg |= PORT_PCS_CTRL_RGMII_DELAY_RXCLK |
PORT_PCS_CTRL_RGMII_DELAY_TXCLK;
break;
- default:
- /* no delay */
+ case PHY_INTERFACE_MODE_RGMII:
break;
+ default:
+ return 0;
}
err = mv88e6xxx_port_write(chip, port, PORT_PCS_CTRL, reg);