diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/clk/clk.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 05bc21a6d4..5777c9c58e 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -84,12 +84,14 @@ void clk_disable(struct clk *clk) if (!clk->enable_count) return; + if (clk->enable_count == 1 && clk->flags & CLK_IS_CRITICAL) { + pr_warn("Disabling critical clock %s\n", clk->name); + return; + } + clk->enable_count--; if (!clk->enable_count) { - if (clk->flags & CLK_IS_CRITICAL) - return; - if (clk->ops->disable) clk->ops->disable(clk); |