linux-stable/drivers/clk/sunxi
Stéphan Rafin ac95330b96 clk: sunxi: Fix M factor computation for APB1
commit cfa6368860 ("clk: sunxi: factors: Consolidate get_factors
parameters into a struct") introduced a regression for m factor
computation in sun4i_get_apb1_factors function.

The old code reassigned the "parent_rate" parameter to the targeted
divisor value and was buggy for the returned frequency but not for the
computed factors. Now, returned frequency is good but m factor is
incorrectly computed (its max value 31 is always set resulting in a
significantly slower frequency than the requested one...)

This patch simply restores the original proper computation for m while
keeping the good changes for returned rate.

Fixes: cfa6368860 ("clk: sunxi: factors: Consolidate get_factors parameters into a struct")
Signed-off-by: Stéphan Rafin <stephan@soliotek.com>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
2016-11-04 08:49:46 +01:00
..
clk-a10-codec.c clk: sunxi: codec clock support 2015-10-21 21:51:28 +02:00
clk-a10-hosc.c clk: sunxi: Remove CLK_IS_ROOT 2016-04-15 16:50:05 -07:00
clk-a10-mod1.c clk: sunxi: mod1 clock should modify it's parent 2016-04-22 00:29:21 +02:00
clk-a10-pll2.c clk: sunxi: pll2: Fix return value check in sun4i_pll2_setup() 2016-08-08 19:27:33 +02:00
clk-a10-ve.c clk: sunxi: Make reset_control_ops const 2016-03-29 16:30:07 -07:00
clk-a20-gmac.c clk: sunxi: Remove clk_register_clkdev calls 2016-02-11 20:05:47 +01:00
clk-factors.c clk: sunxi: make clk-* explicitly non-modular 2016-07-06 15:20:34 -07:00
clk-factors.h clk: sunxi: Remove clk_register_clkdev calls 2016-02-11 20:05:47 +01:00
clk-mod0.c clk: sunxi: mod0: Use new macro CLK_OF_DECLARE_DRIVER 2016-08-12 18:01:20 -07:00
clk-simple-gates.c clk: sunxi: Add apb0 gates for H3 2016-02-25 11:30:32 -08:00
clk-sun4i-display.c clk: sunxi: display: Add per-clock flags 2016-06-10 11:49:47 +02:00
clk-sun4i-pll3.c clk: sunxi: Add PLL3 clock 2016-04-22 00:29:23 +02:00
clk-sun4i-tcon-ch1.c clk: sunxi: remove unused variable 2016-06-16 09:18:29 +02:00
clk-sun6i-apb0-gates.c clk: sunxi: make clk-* explicitly non-modular 2016-07-06 15:20:34 -07:00
clk-sun6i-apb0.c clk: sunxi: make clk-* explicitly non-modular 2016-07-06 15:20:34 -07:00
clk-sun6i-ar100.c clk: sunxi: make clk-* explicitly non-modular 2016-07-06 15:20:34 -07:00
clk-sun8i-apb0.c clk: sunxi: apb0: Use new macro CLK_OF_DECLARE_DRIVER 2016-08-12 18:01:50 -07:00
clk-sun8i-bus-gates.c clk: sunxi: add bus gates for A83T 2016-02-02 14:14:24 +01:00
clk-sun8i-mbus.c clk: sunxi: Fix return value check in sun8i_a23_mbus_setup() 2016-08-08 19:27:33 +02:00
clk-sun9i-core.c clk: sunxi: Remove clk_register_clkdev calls 2016-02-11 20:05:47 +01:00
clk-sun9i-cpus.c clk: sunxi: Add sun9i A80 cpus (cpu special) clock support 2015-12-01 14:06:47 +01:00
clk-sun9i-mmc.c clk: sunxi: make clk-* explicitly non-modular 2016-07-06 15:20:34 -07:00
clk-sunxi.c clk: sunxi: Fix M factor computation for APB1 2016-11-04 08:49:46 +01:00
clk-usb.c clk: sunxi: Make reset_control_ops const 2016-03-29 16:30:07 -07:00
Makefile clk: sunxi: Add display and TCON0 clocks driver 2016-05-12 14:47:52 -07:00