net: dsa: mv88e6xxx: Respect SPEED_UNFORCED, don't set force bit

The SPEED_UNFORCED indicates the MAC & PHY should perform
auto-negotiation to determine a speed which works. If this is called
for, don't set the force bit. If it is set, the MAC actually does
10Gbps, why the internal PHYs don't support.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Andrew Lunn 2016-11-16 04:26:48 +01:00 committed by David S. Miller
parent a11485b737
commit 0b6e3d0322

View File

@ -213,7 +213,7 @@ static int mv88e6xxx_port_set_speed(struct mv88e6xxx_chip *chip, int port,
reg &= ~PORT_PCS_CTRL_ALTSPEED; reg &= ~PORT_PCS_CTRL_ALTSPEED;
if (force_bit) { if (force_bit) {
reg &= ~PORT_PCS_CTRL_FORCE_SPEED; reg &= ~PORT_PCS_CTRL_FORCE_SPEED;
if (speed) if (speed != SPEED_UNFORCED)
ctrl |= PORT_PCS_CTRL_FORCE_SPEED; ctrl |= PORT_PCS_CTRL_FORCE_SPEED;
} }
reg |= ctrl; reg |= ctrl;