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

clk: tegra20: Use custom CCLK implementation

We're going to use the generic cpufreq-dt driver on Tegra20 and thus CCLK
intermediate re-parenting will be performed by the clock driver. There is
now special CCLK implementation that supports all CCLK quirks, this patch
makes Tegra20 SoCs to use that implementation.

Acked-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Tested-by: Peter Geis <pgwipeout@gmail.com>
Tested-by: Marcel Ziswiler <marcel@ziswiler.com>
Tested-by: Jasper Korten <jja2000@gmail.com>
Tested-by: David Heidelberg <david@ixit.cz>
Tested-by: Nicolas Chauvet <kwizart@gmail.com>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>

authored by

Dmitry Osipenko and committed by
Thierry Reding
2db2fcd7 dec15c99

+5 -2
+5 -2
drivers/clk/tegra/clk-tegra20.c
··· 391 391 .lock_delay = 300, 392 392 .freq_table = pll_x_freq_table, 393 393 .flags = TEGRA_PLL_HAS_CPCON | TEGRA_PLL_HAS_LOCK_ENABLE, 394 + .pre_rate_change = tegra_cclk_pre_pllx_rate_change, 395 + .post_rate_change = tegra_cclk_post_pllx_rate_change, 394 396 }; 395 397 396 398 static struct tegra_clk_pll_params pll_e_params = { ··· 704 702 struct clk *clk; 705 703 706 704 /* CCLK */ 707 - clk = tegra_clk_register_super_mux("cclk", cclk_parents, 705 + clk = tegra_clk_register_super_cclk("cclk", cclk_parents, 708 706 ARRAY_SIZE(cclk_parents), CLK_SET_RATE_PARENT, 709 - clk_base + CCLK_BURST_POLICY, 0, 4, 0, 0, NULL); 707 + clk_base + CCLK_BURST_POLICY, TEGRA20_SUPER_CLK, 708 + NULL); 710 709 clks[TEGRA20_CLK_CCLK] = clk; 711 710 712 711 /* SCLK */