OMAP2/3 clock: fix sprz319 erratum 2.1
authorPeter A. Bigot <pab@pabigot.com>
Wed, 14 Aug 2013 22:12:49 +0000 (17:12 -0500)
committerGrazvydas Ignotas <notasas@gmail.com>
Tue, 21 Jan 2014 21:43:51 +0000 (23:43 +0200)
The original patch misinterprets the tables; the N value is the divide value
minus one, while the M value is correct as given.

Upstream-Status: Pending

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
arch/arm/mach-omap2/clock3xxx.c

index d5be086..8acdabb 100644 (file)
@@ -51,12 +51,12 @@ static int omap3_dpll5_apply_erratum21(struct clk *clk, struct clk *dpll5_m2)
        int i, rv;
        static const struct dpll_settings precomputed[] = {
                /* From DM3730 errata (sprz319e), table 36
-               * +1 is because the values in the table are register values;
-               * dpll_program() will subtract one from what we give it,
+               * N+1 is because the values in the table are register values;
+               * dpll_program() will subtract one from the N we give it,
                * so ...
                */
-               { 13000000, 443+1, 5+1, 8 },
-               { 26000000, 443+1, 11+1, 8 }
+               { 13000000, 443, 5+1, 8 },
+               { 26000000, 443, 11+1, 8 }
        };
 
        sys_clk = clk_get(NULL, "sys_ck");