Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

CLK: TI: OMAP4/5/DRA7: Remove gpmc_fck from dummy clocks

When arch/arm/mach-omap2/gpmc.c calls clk_get(..., "fck"), it will
get a dummy clock and try to use it. As the rate is configured to zero,
this will result in several divisions by zero, and misconfigured
timings, with devices on the bus being lost in the La La Land.

It is better to remove gpmc_fck from the dummy clocks, so that gpmc.c
can fail gracefully.

Cc: stable@vger.kernel.org # v3.14+
Signed-off-by: Florian Vaussard <florian.vaussard@epfl.ch>
Acked-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>

authored by

Florian Vaussard and committed by
Tony Lindgren
8559087f 07484ca3

-3
-1
drivers/clk/ti/clk-44xx.c
··· 222 222 DT_CLK(NULL, "auxclk5_src_ck", "auxclk5_src_ck"), 223 223 DT_CLK(NULL, "auxclk5_ck", "auxclk5_ck"), 224 224 DT_CLK(NULL, "auxclkreq5_ck", "auxclkreq5_ck"), 225 - DT_CLK("50000000.gpmc", "fck", "dummy_ck"), 226 225 DT_CLK("omap_i2c.1", "ick", "dummy_ck"), 227 226 DT_CLK("omap_i2c.2", "ick", "dummy_ck"), 228 227 DT_CLK("omap_i2c.3", "ick", "dummy_ck"),
-1
drivers/clk/ti/clk-54xx.c
··· 182 182 DT_CLK(NULL, "auxclk3_src_ck", "auxclk3_src_ck"), 183 183 DT_CLK(NULL, "auxclk3_ck", "auxclk3_ck"), 184 184 DT_CLK(NULL, "auxclkreq3_ck", "auxclkreq3_ck"), 185 - DT_CLK(NULL, "gpmc_ck", "dummy_ck"), 186 185 DT_CLK("omap_i2c.1", "ick", "dummy_ck"), 187 186 DT_CLK("omap_i2c.2", "ick", "dummy_ck"), 188 187 DT_CLK("omap_i2c.3", "ick", "dummy_ck"),
-1
drivers/clk/ti/clk-7xx.c
··· 262 262 DT_CLK(NULL, "vip1_gclk_mux", "vip1_gclk_mux"), 263 263 DT_CLK(NULL, "vip2_gclk_mux", "vip2_gclk_mux"), 264 264 DT_CLK(NULL, "vip3_gclk_mux", "vip3_gclk_mux"), 265 - DT_CLK(NULL, "gpmc_ck", "dummy_ck"), 266 265 DT_CLK("omap_i2c.1", "ick", "dummy_ck"), 267 266 DT_CLK("omap_i2c.2", "ick", "dummy_ck"), 268 267 DT_CLK("omap_i2c.3", "ick", "dummy_ck"),