clk: ti: Fix some errors found by static checkers
authorStephen Boyd <sboyd@codeaurora.org>
Tue, 1 Mar 2016 18:51:42 +0000 (10:51 -0800)
committerMichael Turquette <mturquette@baylibre.com>
Wed, 2 Mar 2016 00:21:25 +0000 (16:21 -0800)
drivers/clk/ti/clk-814x.c:34:12: warning: symbol 'dm814x_adpll_early_init' was not declared. Should it be static?
drivers/clk/ti/clk-814x.c:58:12: warning: symbol 'dm814x_adpll_enable_init_clocks' was not declared. Should it be static?
drivers/clk/ti/adpll.c:465 ti_adpll_recalc_rate() warn: should '__readw(d->regs + 20) << 18' be a 64 bit type?
drivers/clk/ti/adpll.c:945 ti_adpll_probe() error: we previously assumed 'd->clocks' could be null (see line 921)

The last one looks like a real bug because we don't return an
error on allocation failure.

Cc: Tero Kristo <t-kristo@ti.com>
Tested-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
drivers/clk/ti/adpll.c
drivers/clk/ti/clk-814x.c

index f741d79e5afd1b000f92ba1e52eb402956dba95e..255cafb18336aba5f2e7935daa6825d7e7123012 100644 (file)
@@ -462,7 +462,7 @@ static unsigned long ti_adpll_recalc_rate(struct clk_hw *hw,
        spin_lock_irqsave(&d->lock, flags);
        frac_m = readl_relaxed(d->regs + ADPLL_FRACDIV_OFFSET);
        frac_m &= ADPLL_FRACDIV_FRACTIONALM_MASK;
-       rate = readw_relaxed(d->regs + ADPLL_MN2DIV_OFFSET) << 18;
+       rate = (u64)readw_relaxed(d->regs + ADPLL_MN2DIV_OFFSET) << 18;
        rate += frac_m;
        rate *= parent_rate;
        divider = (readw_relaxed(d->regs + ADPLL_M2NDIV_OFFSET) + 1) << 18;
@@ -919,7 +919,7 @@ static int ti_adpll_probe(struct platform_device *pdev)
                                 TI_ADPLL_NR_CLOCKS,
                                 GFP_KERNEL);
        if (!d->clocks)
-               goto free;
+               return -ENOMEM;
 
        err = ti_adpll_init_dco(d);
        if (err) {
index 2323643fb73166b9b167c32b8ee1a03aec20ece5..52c6efc53731881b8ddbc3686e2227594697d841 100644 (file)
@@ -31,7 +31,7 @@ static struct ti_dt_clk dm814_clks[] = {
 
 static bool timer_clocks_initialized;
 
-int __init dm814x_adpll_early_init(void)
+static int __init dm814x_adpll_early_init(void)
 {
        struct device_node *np;
 
@@ -55,7 +55,7 @@ static const char * const init_clocks[] = {
        "pll290clkout",         /* DDR 481c5290.adpll.clkout */
 };
 
-int __init dm814x_adpll_enable_init_clocks(void)
+static int __init dm814x_adpll_enable_init_clocks(void)
 {
        int i, err;