aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLothar Waßmann <LW@KARO-electronics.de>2011-12-07 21:59:27 +0000
committerDavid S. Miller <davem@davemloft.net>2011-12-08 19:51:19 -0500
commit6ea0722fb8cdeacc774733c259d33bf45529e91b (patch)
treeba4900f9efcfe75aeed36e5053169126ad9bb986
parentnet/fec: set con_id in clk_get() call to NULL (diff)
downloadlinux-dev-6ea0722fb8cdeacc774733c259d33bf45529e91b.tar.xz
linux-dev-6ea0722fb8cdeacc774733c259d33bf45529e91b.zip
net/fec: prevent dobule restart of interface on FDX/HDX change
Upon detection of a FDX/HDX change the interface is restarted twice. Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de> Acked-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/freescale/fec.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/freescale/fec.c b/drivers/net/ethernet/freescale/fec.c
index 65ee506f9eb7..7ef408fd322a 100644
--- a/drivers/net/ethernet/freescale/fec.c
+++ b/drivers/net/ethernet/freescale/fec.c
@@ -865,6 +865,8 @@ static void fec_enet_adjust_link(struct net_device *ndev)
if (phy_dev->link) {
if (fep->full_duplex != phy_dev->duplex) {
fec_restart(ndev, phy_dev->duplex);
+ /* prevent unnecessary second fec_restart() below */
+ fep->link = phy_dev->link;
status_change = 1;
}
}