aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/fec.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2009-04-14 21:32:25 -0400
committerDavid S. Miller <davem@davemloft.net>2009-04-16 05:34:54 -0400
commitfe957c40ec5e2763b9977c565beab3bde3aaf85b (patch)
tree07e10dff2cdaa3a9414fa19864f181eb65082942 /drivers/net/fec.c
parentf0b3fbeae11a526c3d308b691684589ee37c359b (diff)
fec: call fec_restart() in fec_open()
We called fec_stop() in fec_enet_close(), thus we have to call fec_restart() in fec_enet_open(). Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/fec.c')
-rw-r--r--drivers/net/fec.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/net/fec.c b/drivers/net/fec.c
index 54d6f86d9f6d..63eaf5de2300 100644
--- a/drivers/net/fec.c
+++ b/drivers/net/fec.c
@@ -1489,6 +1489,8 @@ fec_enet_open(struct net_device *dev)
1489 fep->sequence_done = 0; 1489 fep->sequence_done = 0;
1490 fep->link = 0; 1490 fep->link = 0;
1491 1491
1492 fec_restart(dev, 1);
1493
1492 if (fep->phy) { 1494 if (fep->phy) {
1493 mii_do_cmd(dev, fep->phy->ack_int); 1495 mii_do_cmd(dev, fep->phy->ack_int);
1494 mii_do_cmd(dev, fep->phy->config); 1496 mii_do_cmd(dev, fep->phy->config);
@@ -1505,18 +1507,14 @@ fec_enet_open(struct net_device *dev)
1505 schedule(); 1507 schedule();
1506 1508
1507 mii_do_cmd(dev, fep->phy->startup); 1509 mii_do_cmd(dev, fep->phy->startup);
1508
1509 /* Set the initial link state to true. A lot of hardware
1510 * based on this device does not implement a PHY interrupt,
1511 * so we are never notified of link change.
1512 */
1513 fep->link = 1;
1514 } else {
1515 fep->link = 1; /* lets just try it and see */
1516 /* no phy, go full duplex, it's most likely a hub chip */
1517 fec_restart(dev, 1);
1518 } 1510 }
1519 1511
1512 /* Set the initial link state to true. A lot of hardware
1513 * based on this device does not implement a PHY interrupt,
1514 * so we are never notified of link change.
1515 */
1516 fep->link = 1;
1517
1520 netif_start_queue(dev); 1518 netif_start_queue(dev);
1521 fep->opened = 1; 1519 fep->opened = 1;
1522 return 0; 1520 return 0;