Commit 4a9c3ce1 authored by Laurent Pinchart's avatar Laurent Pinchart

clk: shmobile: rcar-gen2: Fix qspi divisor

The qspi clock divisor is incorrectly set to twice the value it should
have, possibly because it has been computed based on PLL1 as the clock
parent instead of PLL1 / 2 (the datasheets specifies the qspi nominal
frequencies, not the divisor values). Fix it.

This bug introduced in v3.14-rc1 breaks various devices on the Lager and
Kolesh shmobile boards and should thus be considered as a regression for
which a fix during the -rc series is appropriate.
Reported-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent b29dd359
...@@ -215,7 +215,7 @@ rcar_gen2_cpg_register_clock(struct device_node *np, struct rcar_gen2_cpg *cpg, ...@@ -215,7 +215,7 @@ rcar_gen2_cpg_register_clock(struct device_node *np, struct rcar_gen2_cpg *cpg,
} else if (!strcmp(name, "qspi")) { } else if (!strcmp(name, "qspi")) {
parent_name = "pll1_div2"; parent_name = "pll1_div2";
div = (cpg_mode & (BIT(3) | BIT(2) | BIT(1))) == BIT(2) div = (cpg_mode & (BIT(3) | BIT(2) | BIT(1))) == BIT(2)
? 16 : 20; ? 8 : 10;
} else if (!strcmp(name, "sdh")) { } else if (!strcmp(name, "sdh")) {
parent_name = "pll1_div2"; parent_name = "pll1_div2";
table = cpg_sdh_div_table; table = cpg_sdh_div_table;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment