Reproduce:
1. Boot up kernel with DHCP;
2. ifconfig eth0 down;
3. echo mem > /sys/power/state;
There have clock enable/disable usecount mismatch warning dump.
Fix this by checking device's netif_running state is up and then
enable/disable clock.
Signed-off-by: Fugang Duan <B38611@freescale.com>
if (netif_running(ndev)) {
fec_stop(ndev);
netif_device_detach(ndev);
+ fec_enet_clk_enable(ndev, false);
}
- fec_enet_clk_enable(ndev, false);
if (fep->reg_phy)
regulator_disable(fep->reg_phy);
return ret;
}
- fec_enet_clk_enable(ndev, true);
if (netif_running(ndev)) {
+ fec_enet_clk_enable(ndev, true);
fec_restart(ndev, fep->full_duplex);
netif_device_attach(ndev);
}