clk: samsung: Rework clkdev alias handling in Exynos5440 driver
authorMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 3 Oct 2017 10:00:13 +0000 (12:00 +0200)
committerSylwester Nawrocki <s.nawrocki@samsung.com>
Mon, 9 Oct 2017 09:32:09 +0000 (11:32 +0200)
Exynos5440 still uses old, non-dt CPUfreq driver, which requires clkdev
aliases to get access to proper clocks. Create those aliases using
samsung_clk_register_alias() function instead of using *_A clock macros,
which will be removed soon.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Acked-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
drivers/clk/samsung/clk-exynos5440.c

index a80f3ef..b08bd54 100644 (file)
@@ -53,8 +53,7 @@ static const struct samsung_fixed_factor_clock exynos5440_fixed_factor_clks[] __
 /* mux clocks */
 static const struct samsung_mux_clock exynos5440_mux_clks[] __initconst = {
        MUX(0, "mout_spi", mout_spi_p, MISC_DOUT1, 5, 1),
-       MUX_A(CLK_ARM_CLK, "arm_clk", mout_armclk_p,
-                       CPU_CLK_STATUS, 0, 1, "armclk"),
+       MUX(CLK_ARM_CLK, "arm_clk", mout_armclk_p, CPU_CLK_STATUS, 0, 1),
 };
 
 /* divider clocks */
@@ -117,6 +116,13 @@ static const struct samsung_pll_clock exynos5440_plls[] __initconst = {
        PLL(pll_2550x, CLK_CPLLB, "cpllb", "xtal", 0, 0x50, NULL),
 };
 
+/*
+ * Clock aliases for legacy clkdev look-up.
+ */
+static const struct samsung_clock_alias exynos5440_aliases[] __initconst = {
+       ALIAS(CLK_ARM_CLK, NULL, "armclk"),
+};
+
 /* register exynos5440 clocks */
 static void __init exynos5440_clk_init(struct device_node *np)
 {
@@ -147,6 +153,8 @@ static void __init exynos5440_clk_init(struct device_node *np)
                        ARRAY_SIZE(exynos5440_div_clks));
        samsung_clk_register_gate(ctx, exynos5440_gate_clks,
                        ARRAY_SIZE(exynos5440_gate_clks));
+       samsung_clk_register_alias(ctx, exynos5440_aliases,
+                                               ARRAY_SIZE(exynos5440_aliases));
 
        samsung_clk_of_add_provider(np, ctx);