diff options
Diffstat (limited to 'arch/arm/mach-omap2/clock.c')
| -rw-r--r-- | arch/arm/mach-omap2/clock.c | 14 | 
1 files changed, 9 insertions, 5 deletions
diff --git a/arch/arm/mach-omap2/clock.c b/arch/arm/mach-omap2/clock.c index e9625fcf639..b1875965bb5 100644 --- a/arch/arm/mach-omap2/clock.c +++ b/arch/arm/mach-omap2/clock.c @@ -261,7 +261,8 @@ void omap2_clk_disable(struct clk *clk)  	pr_debug("clock: %s: disabling in hardware\n", clk->name); -	clk->ops->disable(clk); +	if (clk->ops && clk->ops->disable) +		clk->ops->disable(clk);  	if (clk->clkdm)  		clkdm_clk_disable(clk->clkdm, clk); @@ -312,10 +313,13 @@ int omap2_clk_enable(struct clk *clk)  		}  	} -	ret = clk->ops->enable(clk); -	if (ret) { -		WARN(1, "clock: %s: could not enable: %d\n", clk->name, ret); -		goto oce_err3; +	if (clk->ops && clk->ops->enable) { +		ret = clk->ops->enable(clk); +		if (ret) { +			WARN(1, "clock: %s: could not enable: %d\n", +			     clk->name, ret); +			goto oce_err3; +		}  	}  	return 0;  |