If _omap2_clk_enable() fails, the clock's usecount must be decremented by one no matter whether the clock has a parent or not. linux-omap source commit is 75fc235fe0f671b56873a75994513df5e665b053. Signed-off-by: Paul Walmsley <paul@xxxxxxxxx> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx> --- arch/arm/mach-omap2/clock.c | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/arch/arm/mach-omap2/clock.c b/arch/arm/mach-omap2/clock.c index adbb928..5f17a2c 100644 --- a/arch/arm/mach-omap2/clock.c +++ b/arch/arm/mach-omap2/clock.c @@ -500,12 +500,10 @@ int omap2_clk_enable(struct clk *clk) ret = _omap2_clk_enable(clk); if (ret != 0) { + clk->usecount--; omap2_clkdm_clk_disable(clk->clkdm.ptr, clk); - - if (clk->parent) { + if (clk->parent) omap2_clk_disable(clk->parent); - clk->usecount--; - } } return ret; -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html