|
@@ -2181,13 +2181,14 @@ fec_enet_close(struct net_device *ndev)
|
|
|
{
|
|
|
struct fec_enet_private *fep = netdev_priv(ndev);
|
|
|
|
|
|
+ phy_stop(fep->phy_dev);
|
|
|
+
|
|
|
/* Don't know what to do yet. */
|
|
|
napi_disable(&fep->napi);
|
|
|
fep->opened = 0;
|
|
|
netif_tx_disable(ndev);
|
|
|
fec_stop(ndev);
|
|
|
|
|
|
- phy_stop(fep->phy_dev);
|
|
|
phy_disconnect(fep->phy_dev);
|
|
|
fep->phy_dev = NULL;
|
|
|
|
|
@@ -2669,6 +2670,7 @@ fec_suspend(struct device *dev)
|
|
|
struct fec_enet_private *fep = netdev_priv(ndev);
|
|
|
|
|
|
if (netif_running(ndev)) {
|
|
|
+ phy_stop(fep->phy_dev);
|
|
|
fec_stop(ndev);
|
|
|
netif_device_detach(ndev);
|
|
|
}
|
|
@@ -2702,6 +2704,7 @@ fec_resume(struct device *dev)
|
|
|
if (netif_running(ndev)) {
|
|
|
fec_restart(ndev, fep->full_duplex);
|
|
|
netif_device_attach(ndev);
|
|
|
+ phy_start(fep->phy_dev);
|
|
|
}
|
|
|
|
|
|
return 0;
|