@@ -64,6 +64,30 @@
#include "fec.h"
+#define fec_pm_runtime_get_sync(_dev) ({ \
+ dev_info((_dev), "%s: get_sync (%d)", __func__, (_dev)->power.usage_count.counter); \
+ pm_runtime_get_sync((_dev)); \
+})
+#define pm_runtime_get_sync(_dev) fec_pm_runtime_get_sync(_dev)
+
+#define fec_pm_runtime_put_autosuspend(_dev) ({ \
+ dev_info((_dev), "%s: put_autosuspend (%d)", __func__, (_dev)->power.usage_count.counter); \
+ pm_runtime_put_autosuspend((_dev)); \
+})
+#define pm_runtime_put_autosuspend(_dev) fec_pm_runtime_put_autosuspend(_dev)
+
+#define fec_clk_prepare_enable(_clk) ({ \
+ pr_info("%s: enable " #_clk "\n", __func__); \
+ clk_prepare_enable((_clk)); \
+})
+#define clk_prepare_enable(_clk) fec_clk_prepare_enable(_clk)
+
+#define fec_clk_disable_unprepare(_clk) ({ \
+ pr_info("%s: disable " #_clk "\n", __func__); \
+ clk_disable_unprepare((_clk)); \
+})
+#define clk_disable_unprepare(_clk) fec_clk_disable_unprepare(_clk)
+
static void set_multicast_list(struct net_device *ndev);
static void fec_enet_itr_coal_init(struct net_device *ndev);
@@ -784,6 +808,7 @@ fec_enet_start_xmit(struct sk_buff *skb, struct net_device *ndev)
struct netdev_queue *nq;
int ret;
+ pr_info("%s\n", __func__);
queue = skb_get_queue_mapping(skb);
txq = fep->tx_queue[queue];
nq = netdev_get_tx_queue(ndev, queue);
@@ -2864,6 +2889,7 @@ fec_enet_open(struct net_device *ndev)
struct fec_enet_private *fep = netdev_priv(ndev);
int ret;
+ pr_info("%s\n", __func__);
ret = pm_runtime_get_sync(&fep->pdev->dev);
if (IS_ERR_VALUE(ret))
return ret;
@@ -2932,6 +2958,8 @@ fec_enet_close(struct net_device *ndev)
fec_enet_free_buffers(ndev);
+ pr_info("%s\n", __func__);
+
return 0;
}
@@ -3416,6 +3444,7 @@ fec_probe(struct platform_device *pdev)
goto failed_clk;
ret = clk_prepare_enable(fep->clk_ipg);
+ clk_prepare_enable(fep->clk_ipg);
if (ret)
goto failed_clk_ipg;