Às 5:24 PM de 2/23/2017, Thierry Reding escreveu: > From: Thierry Reding <treding@xxxxxxxxxx> > > clk_prepare_enable() and clk_disable_unprepare() for this clock aren't > properly balanced, which can trigger a WARN_ON() in the common clock > framework. > > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> > --- > drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 ++++ > drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 1 - > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c > index 3cbe09682afe..6b7a5ce19589 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c > @@ -1711,6 +1711,10 @@ static int stmmac_hw_setup(struct net_device *dev, bool init_ptp) > stmmac_mmc_setup(priv); > > if (init_ptp) { > + ret = clk_prepare_enable(priv->plat->clk_ptp_ref); > + if (ret < 0) > + netdev_warn(priv->dev, "failed to enable PTP reference clock: %d\n", ret); > + > ret = stmmac_init_ptp(priv); > if (ret == -EOPNOTSUPP) > netdev_warn(priv->dev, "PTP not supported by HW\n"); > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c > index 5b18355c0d2b..d285d6cfbd0d 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c > @@ -365,7 +365,6 @@ stmmac_probe_config_dt(struct platform_device *pdev, const char **mac) > plat->clk_ptp_ref = NULL; > dev_warn(&pdev->dev, "PTP uses main clock\n"); > } else { > - clk_prepare_enable(plat->clk_ptp_ref); > plat->clk_ptp_rate = clk_get_rate(plat->clk_ptp_ref); > dev_dbg(&pdev->dev, "PTP rate %d\n", plat->clk_ptp_rate); > } > Reviewed-By: Joao Pinto <jpinto@xxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html