diff options
author | Tomasz Figa <t.figa@samsung.com> | 2013-08-26 13:09:04 -0400 |
---|---|---|
committer | Mike Turquette <mturquette@linaro.org> | 2013-09-06 16:33:35 -0400 |
commit | 52b0601637ac41845d216c490a75e489a14c4e95 (patch) | |
tree | 2a6fd52588e76479386bbfe6e4bba6282cee5e77 /drivers/clk/samsung/clk-exynos4.c | |
parent | c6415963006392cd67cb2d322c56ccc1711ac732 (diff) |
clk: samsung: pll: Use new registration method for PLL45xx
This patch modifies PLL45xx support code and its users to use the
recently introduced common PLL registration helper.
Signed-off-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
Diffstat (limited to 'drivers/clk/samsung/clk-exynos4.c')
-rw-r--r-- | drivers/clk/samsung/clk-exynos4.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/drivers/clk/samsung/clk-exynos4.c b/drivers/clk/samsung/clk-exynos4.c index 41cbe6e7e182..fd0215d99c88 100644 --- a/drivers/clk/samsung/clk-exynos4.c +++ b/drivers/clk/samsung/clk-exynos4.c | |||
@@ -104,6 +104,7 @@ | |||
104 | #define DIV_DMC1 0x10504 | 104 | #define DIV_DMC1 0x10504 |
105 | #define GATE_IP_DMC 0x10900 | 105 | #define GATE_IP_DMC 0x10900 |
106 | #define APLL_LOCK 0x14000 | 106 | #define APLL_LOCK 0x14000 |
107 | #define E4210_MPLL_LOCK 0x14008 | ||
107 | #define APLL_CON0 0x14100 | 108 | #define APLL_CON0 0x14100 |
108 | #define E4210_MPLL_CON0 0x14108 | 109 | #define E4210_MPLL_CON0 0x14108 |
109 | #define SRC_CPU 0x14200 | 110 | #define SRC_CPU 0x14200 |
@@ -984,6 +985,13 @@ static struct of_device_id ext_clk_match[] __initdata = { | |||
984 | {}, | 985 | {}, |
985 | }; | 986 | }; |
986 | 987 | ||
988 | static struct samsung_pll_clock exynos4210_plls[] __initdata = { | ||
989 | [apll] = PLL_A(pll_4508, fout_apll, "fout_apll", "fin_pll", APLL_LOCK, | ||
990 | APLL_CON0, "fout_apll", NULL), | ||
991 | [mpll] = PLL_A(pll_4508, fout_mpll, "fout_mpll", "fin_pll", | ||
992 | E4210_MPLL_LOCK, E4210_MPLL_CON0, "fout_mpll", NULL), | ||
993 | }; | ||
994 | |||
987 | static struct samsung_pll_clock exynos4x12_plls[nr_plls] __initdata = { | 995 | static struct samsung_pll_clock exynos4x12_plls[nr_plls] __initdata = { |
988 | [apll] = PLL(pll_35xx, fout_apll, "fout_apll", "fin_pll", | 996 | [apll] = PLL(pll_35xx, fout_apll, "fout_apll", "fin_pll", |
989 | APLL_LOCK, APLL_CON0, NULL), | 997 | APLL_LOCK, APLL_CON0, NULL), |
@@ -1000,7 +1008,7 @@ static void __init exynos4_clk_init(struct device_node *np, | |||
1000 | enum exynos4_soc exynos4_soc, | 1008 | enum exynos4_soc exynos4_soc, |
1001 | void __iomem *reg_base, unsigned long xom) | 1009 | void __iomem *reg_base, unsigned long xom) |
1002 | { | 1010 | { |
1003 | struct clk *apll, *mpll, *epll, *vpll; | 1011 | struct clk *epll, *vpll; |
1004 | 1012 | ||
1005 | reg_base = of_iomap(np, 0); | 1013 | reg_base = of_iomap(np, 0); |
1006 | if (!reg_base) | 1014 | if (!reg_base) |
@@ -1022,17 +1030,13 @@ static void __init exynos4_clk_init(struct device_node *np, | |||
1022 | exynos4_clk_register_finpll(xom); | 1030 | exynos4_clk_register_finpll(xom); |
1023 | 1031 | ||
1024 | if (exynos4_soc == EXYNOS4210) { | 1032 | if (exynos4_soc == EXYNOS4210) { |
1025 | apll = samsung_clk_register_pll45xx("fout_apll", "fin_pll", | 1033 | samsung_clk_register_pll(exynos4210_plls, |
1026 | reg_base + APLL_CON0, pll_4508); | 1034 | ARRAY_SIZE(exynos4210_plls), reg_base); |
1027 | mpll = samsung_clk_register_pll45xx("fout_mpll", "fin_pll", | ||
1028 | reg_base + E4210_MPLL_CON0, pll_4508); | ||
1029 | epll = samsung_clk_register_pll46xx("fout_epll", "fin_pll", | 1035 | epll = samsung_clk_register_pll46xx("fout_epll", "fin_pll", |
1030 | reg_base + EPLL_CON0, pll_4600); | 1036 | reg_base + EPLL_CON0, pll_4600); |
1031 | vpll = samsung_clk_register_pll46xx("fout_vpll", "mout_vpllsrc", | 1037 | vpll = samsung_clk_register_pll46xx("fout_vpll", "mout_vpllsrc", |
1032 | reg_base + VPLL_CON0, pll_4650c); | 1038 | reg_base + VPLL_CON0, pll_4650c); |
1033 | 1039 | ||
1034 | samsung_clk_add_lookup(apll, fout_apll); | ||
1035 | samsung_clk_add_lookup(mpll, fout_mpll); | ||
1036 | samsung_clk_add_lookup(epll, fout_epll); | 1040 | samsung_clk_add_lookup(epll, fout_epll); |
1037 | samsung_clk_add_lookup(vpll, fout_vpll); | 1041 | samsung_clk_add_lookup(vpll, fout_vpll); |
1038 | } else { | 1042 | } else { |