diff options
Diffstat (limited to 'drivers/clk/qcom/clock.c')
| -rw-r--r-- | drivers/clk/qcom/clock.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/clk/qcom/clock.c b/drivers/clk/qcom/clock.c index e69f0cbdd65..1f5092e1ffe 100644 --- a/drivers/clk/qcom/clock.c +++ b/drivers/clk/qcom/clock.c @@ -1,7 +1,7 @@ /* arch/arm/mach-msm/clock.c * * Copyright (C) 2007 Google, Inc. - * Copyright (c) 2007-2013, The Linux Foundation. All rights reserved. + * Copyright (c) 2007-2014, The Linux Foundation. All rights reserved. * * This software is licensed under the terms of the GNU General Public * License version 2, as published by the Free Software Foundation, and @@ -488,9 +488,6 @@ int clk_set_rate(struct clk *clk, unsigned long rate) if (IS_ERR_OR_NULL(clk)) return -EINVAL; - if (!clk->ops->set_rate) - return -ENOSYS; - if (!is_rate_valid(clk, rate)) return -EINVAL; @@ -500,6 +497,11 @@ int clk_set_rate(struct clk *clk, unsigned long rate) if (clk->rate == rate && !(clk->flags & CLKFLAG_NO_RATE_CACHE)) goto out; + if (!clk->ops->set_rate) { + rc = -ENOSYS; + goto out; + } + trace_clock_set_rate(name, rate, raw_smp_processor_id()); start_rate = clk->rate; |
