Explorar o código

drivers: sh: resume enabled clocks fix

Extend the SH / SH-Mobile ARM clock framework to only
resume clocks that have been enabled.

Without this fix divide-by-zero is triggering on sh7372
FSIDIV during system wide resume of Suspend-to-RAM.

Signed-off-by: Magnus Damm <damm@opensource.se>
Reviewed-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Magnus Damm %!s(int64=14) %!d(string=hai) anos
pai
achega
583af252ab
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      drivers/sh/clk/core.c

+ 1 - 1
drivers/sh/clk/core.c

@@ -635,7 +635,7 @@ static void clks_core_resume(void)
 	struct clk *clkp;
 
 	list_for_each_entry(clkp, &clock_list, node) {
-		if (likely(clkp->ops)) {
+		if (likely(clkp->usecount && clkp->ops)) {
 			unsigned long rate = clkp->rate;
 
 			if (likely(clkp->ops->set_parent))