MLK-14805 Revert "MLK-14470 net: fec: let shared mii bus always be active"
authorFugang Duan <fugang.duan@nxp.com>
Thu, 4 May 2017 10:20:23 +0000 (18:20 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 20:22:08 +0000 (15:22 -0500)
This reverts commit a87bb06a0bc7 that breaks busfreq test case.

Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
drivers/net/ethernet/freescale/fec.h
drivers/net/ethernet/freescale/fec_main.c

index 7ffcabc..158d80f 100644 (file)
@@ -545,7 +545,6 @@ struct fec_enet_private {
        int     mii_timeout;
        int     mii_bus_share;
        bool    miibus_up_failed;
-       bool    mii_bus_active;
        uint    phy_speed;
        phy_interface_t phy_interface;
        struct device_node *phy_node;
index a5c53c3..c1698cc 100644 (file)
@@ -2914,12 +2914,9 @@ fec_enet_open(struct net_device *ndev)
                return ret;
 
        pinctrl_pm_select_default_state(&fep->pdev->dev);
-       if (!(fep->mii_bus_share && fep->mii_bus_active)) {
-               fep->mii_bus_active = true;;
-               ret = fec_enet_clk_enable(ndev, true);
-               if (ret)
-                       goto clk_enable;
-       }
+       ret = fec_enet_clk_enable(ndev, true);
+       if (ret)
+               goto clk_enable;
 
        /* I should reset the ring buffers here, but I don't yet know
         * a simple way to do that.
@@ -2967,11 +2964,10 @@ err_enet_alloc:
        if (!fep->mii_bus_share)
                fec_enet_clk_enable(ndev, false);
 clk_enable:
-       if (!fep->mii_bus_share) {
-               pm_runtime_mark_last_busy(&fep->pdev->dev);
-               pm_runtime_put_autosuspend(&fep->pdev->dev);
+       pm_runtime_mark_last_busy(&fep->pdev->dev);
+       pm_runtime_put_autosuspend(&fep->pdev->dev);
+       if (!fep->mii_bus_share)
                pinctrl_pm_select_sleep_state(&fep->pdev->dev);
-       }
        return ret;
 }
 
@@ -2996,10 +2992,7 @@ fec_enet_close(struct net_device *ndev)
 
        fec_enet_update_ethtool_stats(ndev);
 
-       if (!fep->mii_bus_share) {
-               fec_enet_clk_enable(ndev, false);
-               fep->mii_bus_active = false;
-       }
+       fec_enet_clk_enable(ndev, false);
        pm_qos_remove_request(&fep->pm_qos_req);
        pinctrl_pm_select_sleep_state(&fep->pdev->dev);
        pm_runtime_mark_last_busy(&fep->pdev->dev);