From: Stephen Boyd Date: Thu, 7 May 2015 18:32:49 +0000 (-0700) Subject: Merge branch 'clk-fixes' into clk-next X-Git-Tag: firefly_0821_release~176^2~1436^2~30^2~70 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=18e70efe3e2a27b53a63fb4454cc6c9e1dc0db49;p=firefly-linux-kernel-4.4.55.git Merge branch 'clk-fixes' into clk-next --- 18e70efe3e2a27b53a63fb4454cc6c9e1dc0db49 diff --cc drivers/clk/clk.c index 4a2e9478edbd,5b0f41868b42..9e9d18cadeee --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@@ -1095,10 -1473,12 +1095,12 @@@ static struct clk_core *__clk_set_paren * * See also: Comment for clk_set_parent() below. */ - if (clk->prepare_count) { + if (core->prepare_count) { clk_core_prepare(parent); + flags = clk_enable_lock(); clk_core_enable(parent); - clk_core_enable(clk); + clk_core_enable(core); + clk_enable_unlock(flags); } /* update the clk tree topology */ @@@ -1143,12 -1527,14 +1149,14 @@@ static int __clk_set_parent(struct clk_ if (ret) { flags = clk_enable_lock(); - clk_reparent(clk, old_parent); + clk_reparent(core, old_parent); clk_enable_unlock(flags); - if (clk->prepare_count) { + if (core->prepare_count) { + flags = clk_enable_lock(); - clk_core_disable(clk); + clk_core_disable(core); clk_core_disable(parent); + clk_enable_unlock(flags); clk_core_unprepare(parent); } return ret;