clk: ti: check clock type before doing autoidle ops
Code might use autoidle api with clocks not being omap2 clocks, so check if clock type is really omap2. Signed-off-by: Andreas Kemnade <andreas@kemnade.info> Acked-by: Tony Lindgren <tony@atomide.com> Tested-by: Keerthy <j-keerthy@ti.com> Signed-off-by: Tero Kristo <t-kristo@ti.com>
This commit is contained in:
parent
d277ce2d3a
commit
fddf4e29a6
|
@ -82,9 +82,15 @@ static int _omap2_clk_allow_idle(struct clk_hw_omap *clk)
|
|||
*/
|
||||
int omap2_clk_deny_idle(struct clk *clk)
|
||||
{
|
||||
struct clk_hw_omap *c = to_clk_hw_omap(__clk_get_hw(clk));
|
||||
struct clk_hw *hw = __clk_get_hw(clk);
|
||||
|
||||
return _omap2_clk_deny_idle(c);
|
||||
if (omap2_clk_is_hw_omap(hw)) {
|
||||
struct clk_hw_omap *c = to_clk_hw_omap(hw);
|
||||
|
||||
return _omap2_clk_deny_idle(c);
|
||||
}
|
||||
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -95,9 +101,15 @@ int omap2_clk_deny_idle(struct clk *clk)
|
|||
*/
|
||||
int omap2_clk_allow_idle(struct clk *clk)
|
||||
{
|
||||
struct clk_hw_omap *c = to_clk_hw_omap(__clk_get_hw(clk));
|
||||
struct clk_hw *hw = __clk_get_hw(clk);
|
||||
|
||||
return _omap2_clk_allow_idle(c);
|
||||
if (omap2_clk_is_hw_omap(hw)) {
|
||||
struct clk_hw_omap *c = to_clk_hw_omap(hw);
|
||||
|
||||
return _omap2_clk_allow_idle(c);
|
||||
}
|
||||
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static void _allow_autoidle(struct clk_ti_autoidle *clk)
|
||||
|
|
Loading…
Reference in New Issue