summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwu guoxing <b39297@freescale.com>2011-12-27 13:32:43 +0800
committerJason Liu <r64343@freescale.com>2012-01-09 21:12:57 +0800
commit04105750b3e05e29c325727d39e30cffeb140982 (patch)
tree0c36529c90a9ec788e096f6abb80b13712e3001f
parentfdeb3ca9884d4e02474a2dc3588c481db1a23e90 (diff)
ENGR00170945:mx6: clk: __clk_disable operates only when usecount > 0
in __clk_disable, check usecount, if it is 0, return, otherwise, the usecount will be un-correct. Signed-off-by: Wu Guoxing <b39297@freescale.com>
-rwxr-xr-xarch/arm/plat-mxc/clock.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm/plat-mxc/clock.c b/arch/arm/plat-mxc/clock.c
index 1814cdc237b9..e1923577a9f3 100755
--- a/arch/arm/plat-mxc/clock.c
+++ b/arch/arm/plat-mxc/clock.c
@@ -65,7 +65,11 @@ static void __clk_disable(struct clk *clk)
{
if (clk == NULL || IS_ERR(clk))
return;
- WARN_ON(!clk->usecount);
+
+ if (!clk->usecount) {
+ WARN(1, "clock enable/disable mismatch!\n");
+ return;
+ }
if (!(--clk->usecount)) {
if (clk->disable)