summaryrefslogtreecommitdiffstats
path: root/drivers/clk/clk-scpi.c
diff options
context:
space:
mode:
authorSudeep Holla <sudeep.holla@arm.com>2017-05-18 18:19:28 +0200
committerStephen Boyd <sboyd@codeaurora.org>2017-06-01 11:13:11 +0200
commit7374aec95636ca39409545eba4ef5ff3125c2346 (patch)
treea27e5d91cdd7f3be460e69ede94d717c6d68c8cb /drivers/clk/clk-scpi.c
parentclk: qoriq: Separate root input clock for core PLLs on ls1012a (diff)
downloadlinux-7374aec95636ca39409545eba4ef5ff3125c2346.tar.xz
linux-7374aec95636ca39409545eba4ef5ff3125c2346.zip
clk: scpi: fix return type of __scpi_dvfs_round_rate
The frequencies above the maximum value of signed integer(i.e. 2^31 -1) will overflow with the current code. This patch fixes the return type of __scpi_dvfs_round_rate from 'int' to 'unsigned long'. Fixes: cd52c2a4b5c4 ("clk: add support for clocks provided by SCP(System Control Processor)") Cc: Michael Turquette <mturquette@baylibre.com> Cc: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Diffstat (limited to 'drivers/clk/clk-scpi.c')
-rw-r--r--drivers/clk/clk-scpi.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/clk/clk-scpi.c b/drivers/clk/clk-scpi.c
index 96d37175d0ad..8ad458b5ad6e 100644
--- a/drivers/clk/clk-scpi.c
+++ b/drivers/clk/clk-scpi.c
@@ -71,15 +71,15 @@ static const struct clk_ops scpi_clk_ops = {
};
/* find closest match to given frequency in OPP table */
-static int __scpi_dvfs_round_rate(struct scpi_clk *clk, unsigned long rate)
+static long __scpi_dvfs_round_rate(struct scpi_clk *clk, unsigned long rate)
{
int idx;
- u32 fmin = 0, fmax = ~0, ftmp;
+ unsigned long fmin = 0, fmax = ~0, ftmp;
const struct scpi_opp *opp = clk->info->opps;
for (idx = 0; idx < clk->info->count; idx++, opp++) {
ftmp = opp->freq;
- if (ftmp >= (u32)rate) {
+ if (ftmp >= rate) {
if (ftmp <= fmax)
fmax = ftmp;
break;