diff options
author | Fugang Duan <b38611@freescale.com> | 2014-06-20 02:54:07 -0400 |
---|---|---|
committer | Fugang Duan <b38611@freescale.com> | 2014-06-20 04:44:25 -0400 |
commit | a1455e12a3e492d8d3898799e86285cc1baaa049 (patch) | |
tree | 11bb8268899bc5009925b0c0646aaee46be20e04 /drivers/net | |
parent | af51180cd6df6117cea5b87602373fa29a7ca557 (diff) |
ENGR00319480 net: fec: support DSM with M/F mix off
To support DSM with M/F mix off, driver need to call phy_stop before
suspend, call phy_start after resume.
Signed-off-by: Fugang Duan <B38611@freescale.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/ethernet/freescale/fec_main.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c index 4a5a06eb3e03..1c4f4d50d574 100644 --- a/drivers/net/ethernet/freescale/fec_main.c +++ b/drivers/net/ethernet/freescale/fec_main.c | |||
@@ -3305,6 +3305,7 @@ fec_suspend(struct device *dev) | |||
3305 | if (!(fep->wol_flag & FEC_WOL_FLAG_ENABLE)) | 3305 | if (!(fep->wol_flag & FEC_WOL_FLAG_ENABLE)) |
3306 | fec_enet_clk_enable(ndev, false); | 3306 | fec_enet_clk_enable(ndev, false); |
3307 | pinctrl_pm_select_sleep_state(&fep->pdev->dev); | 3307 | pinctrl_pm_select_sleep_state(&fep->pdev->dev); |
3308 | phy_stop(fep->phy_dev); | ||
3308 | } | 3309 | } |
3309 | 3310 | ||
3310 | if (fep->reg_phy) | 3311 | if (fep->reg_phy) |
@@ -3347,8 +3348,9 @@ fec_resume(struct device *dev) | |||
3347 | } else { | 3348 | } else { |
3348 | fec_enet_clk_enable(ndev, true); | 3349 | fec_enet_clk_enable(ndev, true); |
3349 | } | 3350 | } |
3350 | if (!fep->clk_enet_out && !fep->reg_phy) | 3351 | |
3351 | fec_restart(ndev, fep->full_duplex); | 3352 | fec_restart(ndev, fep->full_duplex); |
3353 | phy_start(fep->phy_dev); | ||
3352 | netif_device_attach(ndev); | 3354 | netif_device_attach(ndev); |
3353 | } | 3355 | } |
3354 | 3356 | ||