Commit 883ffd6e authored by Stefan Roese's avatar Stefan Roese Committed by David S. Miller

net: stmmac: Fix clock en-/disable calls

clk_{un}prepare is mandatory for platforms using common clock framework.
Since these drivers are used by SPEAr platform, which supports common
clock framework, add clk_{un}prepare() support for them. Otherwise
the clocks are not correctly en-/disabled and ethernet support doesn't
work.
Signed-off-by: default avatarStefan Roese <sr@denx.de>
Cc: Viresh Kumar <viresh.linux@gmail.com>
Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3f16da51
...@@ -109,7 +109,7 @@ struct stmmac_priv *stmmac_dvr_probe(struct device *device, ...@@ -109,7 +109,7 @@ struct stmmac_priv *stmmac_dvr_probe(struct device *device,
static inline int stmmac_clk_enable(struct stmmac_priv *priv) static inline int stmmac_clk_enable(struct stmmac_priv *priv)
{ {
if (!IS_ERR(priv->stmmac_clk)) if (!IS_ERR(priv->stmmac_clk))
return clk_enable(priv->stmmac_clk); return clk_prepare_enable(priv->stmmac_clk);
return 0; return 0;
} }
...@@ -119,7 +119,7 @@ static inline void stmmac_clk_disable(struct stmmac_priv *priv) ...@@ -119,7 +119,7 @@ static inline void stmmac_clk_disable(struct stmmac_priv *priv)
if (IS_ERR(priv->stmmac_clk)) if (IS_ERR(priv->stmmac_clk))
return; return;
clk_disable(priv->stmmac_clk); clk_disable_unprepare(priv->stmmac_clk);
} }
static inline int stmmac_clk_get(struct stmmac_priv *priv) static inline int stmmac_clk_get(struct stmmac_priv *priv)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment