aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk/samsung/clk-exynos4415.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/clk/samsung/clk-exynos4415.c')
-rw-r--r--drivers/clk/samsung/clk-exynos4415.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/drivers/clk/samsung/clk-exynos4415.c b/drivers/clk/samsung/clk-exynos4415.c
index 86ee06b226bd..6c9063159717 100644
--- a/drivers/clk/samsung/clk-exynos4415.c
+++ b/drivers/clk/samsung/clk-exynos4415.c
@@ -111,7 +111,7 @@
111#define DIV_CPU0 0x14500 111#define DIV_CPU0 0x14500
112#define DIV_CPU1 0x14504 112#define DIV_CPU1 0x14504
113 113
114static unsigned long exynos4415_cmu_clk_regs[] __initdata = { 114static const unsigned long exynos4415_cmu_clk_regs[] __initconst = {
115 SRC_LEFTBUS, 115 SRC_LEFTBUS,
116 DIV_LEFTBUS, 116 DIV_LEFTBUS,
117 GATE_IP_LEFTBUS, 117 GATE_IP_LEFTBUS,
@@ -268,16 +268,16 @@ PNAME(group_aclk_isp0_300_user_p) = { "fin_pll", "mout_aclk_isp0_300" };
268PNAME(group_aclk_isp1_300_user_p) = { "fin_pll", "mout_aclk_isp1_300" }; 268PNAME(group_aclk_isp1_300_user_p) = { "fin_pll", "mout_aclk_isp1_300" };
269PNAME(group_mout_mpll_user_t_p) = { "mout_mpll_user_t" }; 269PNAME(group_mout_mpll_user_t_p) = { "mout_mpll_user_t" };
270 270
271static struct samsung_fixed_factor_clock exynos4415_fixed_factor_clks[] __initdata = { 271static const struct samsung_fixed_factor_clock exynos4415_fixed_factor_clks[] __initconst = {
272 /* HACK: fin_pll hardcoded to xusbxti until detection is implemented. */ 272 /* HACK: fin_pll hardcoded to xusbxti until detection is implemented. */
273 FFACTOR(CLK_FIN_PLL, "fin_pll", "xusbxti", 1, 1, 0), 273 FFACTOR(CLK_FIN_PLL, "fin_pll", "xusbxti", 1, 1, 0),
274}; 274};
275 275
276static struct samsung_fixed_rate_clock exynos4415_fixed_rate_clks[] __initdata = { 276static const struct samsung_fixed_rate_clock exynos4415_fixed_rate_clks[] __initconst = {
277 FRATE(CLK_SCLK_HDMIPHY, "sclk_hdmiphy", NULL, 0, 27000000), 277 FRATE(CLK_SCLK_HDMIPHY, "sclk_hdmiphy", NULL, 0, 27000000),
278}; 278};
279 279
280static struct samsung_mux_clock exynos4415_mux_clks[] __initdata = { 280static const struct samsung_mux_clock exynos4415_mux_clks[] __initconst = {
281 /* 281 /*
282 * NOTE: Following table is sorted by register address in ascending 282 * NOTE: Following table is sorted by register address in ascending
283 * order and then bitfield shift in descending order, as it is done 283 * order and then bitfield shift in descending order, as it is done
@@ -427,7 +427,7 @@ static struct samsung_mux_clock exynos4415_mux_clks[] __initdata = {
427 group_aclk_isp1_300_user_p, SRC_TOP_ISP1, 0, 1), 427 group_aclk_isp1_300_user_p, SRC_TOP_ISP1, 0, 1),
428}; 428};
429 429
430static struct samsung_div_clock exynos4415_div_clks[] __initdata = { 430static const struct samsung_div_clock exynos4415_div_clks[] __initconst = {
431 /* 431 /*
432 * NOTE: Following table is sorted by register address in ascending 432 * NOTE: Following table is sorted by register address in ascending
433 * order and then bitfield shift in descending order, as it is done 433 * order and then bitfield shift in descending order, as it is done
@@ -566,7 +566,7 @@ static struct samsung_div_clock exynos4415_div_clks[] __initdata = {
566 DIV(CLK_DIV_COPY, "div_copy", "mout_hpm", DIV_CPU1, 0, 3), 566 DIV(CLK_DIV_COPY, "div_copy", "mout_hpm", DIV_CPU1, 0, 3),
567}; 567};
568 568
569static struct samsung_gate_clock exynos4415_gate_clks[] __initdata = { 569static const struct samsung_gate_clock exynos4415_gate_clks[] __initconst = {
570 /* 570 /*
571 * NOTE: Following table is sorted by register address in ascending 571 * NOTE: Following table is sorted by register address in ascending
572 * order and then bitfield shift in descending order, as it is done 572 * order and then bitfield shift in descending order, as it is done
@@ -859,7 +859,7 @@ static struct samsung_gate_clock exynos4415_gate_clks[] __initdata = {
859/* 859/*
860 * APLL & MPLL & BPLL & ISP_PLL & DISP_PLL & G3D_PLL 860 * APLL & MPLL & BPLL & ISP_PLL & DISP_PLL & G3D_PLL
861 */ 861 */
862static struct samsung_pll_rate_table exynos4415_pll_rates[] = { 862static const struct samsung_pll_rate_table exynos4415_pll_rates[] __initconst = {
863 PLL_35XX_RATE(1600000000, 400, 3, 1), 863 PLL_35XX_RATE(1600000000, 400, 3, 1),
864 PLL_35XX_RATE(1500000000, 250, 2, 1), 864 PLL_35XX_RATE(1500000000, 250, 2, 1),
865 PLL_35XX_RATE(1400000000, 175, 3, 0), 865 PLL_35XX_RATE(1400000000, 175, 3, 0),
@@ -891,7 +891,7 @@ static struct samsung_pll_rate_table exynos4415_pll_rates[] = {
891}; 891};
892 892
893/* EPLL */ 893/* EPLL */
894static struct samsung_pll_rate_table exynos4415_epll_rates[] = { 894static const struct samsung_pll_rate_table exynos4415_epll_rates[] __initconst = {
895 PLL_36XX_RATE(800000000, 200, 3, 1, 0), 895 PLL_36XX_RATE(800000000, 200, 3, 1, 0),
896 PLL_36XX_RATE(288000000, 96, 2, 2, 0), 896 PLL_36XX_RATE(288000000, 96, 2, 2, 0),
897 PLL_36XX_RATE(192000000, 128, 2, 3, 0), 897 PLL_36XX_RATE(192000000, 128, 2, 3, 0),
@@ -909,7 +909,7 @@ static struct samsung_pll_rate_table exynos4415_epll_rates[] = {
909 { /* sentinel */ } 909 { /* sentinel */ }
910}; 910};
911 911
912static struct samsung_pll_clock exynos4415_plls[] __initdata = { 912static const struct samsung_pll_clock exynos4415_plls[] __initconst = {
913 PLL(pll_35xx, CLK_FOUT_APLL, "fout_apll", "fin_pll", 913 PLL(pll_35xx, CLK_FOUT_APLL, "fout_apll", "fin_pll",
914 APLL_LOCK, APLL_CON0, exynos4415_pll_rates), 914 APLL_LOCK, APLL_CON0, exynos4415_pll_rates),
915 PLL(pll_36xx, CLK_FOUT_EPLL, "fout_epll", "fin_pll", 915 PLL(pll_36xx, CLK_FOUT_EPLL, "fout_epll", "fin_pll",
@@ -922,7 +922,7 @@ static struct samsung_pll_clock exynos4415_plls[] __initdata = {
922 "fin_pll", DISP_PLL_LOCK, DISP_PLL_CON0, exynos4415_pll_rates), 922 "fin_pll", DISP_PLL_LOCK, DISP_PLL_CON0, exynos4415_pll_rates),
923}; 923};
924 924
925static struct samsung_cmu_info cmu_info __initdata = { 925static const struct samsung_cmu_info cmu_info __initconst = {
926 .pll_clks = exynos4415_plls, 926 .pll_clks = exynos4415_plls,
927 .nr_pll_clks = ARRAY_SIZE(exynos4415_plls), 927 .nr_pll_clks = ARRAY_SIZE(exynos4415_plls),
928 .mux_clks = exynos4415_mux_clks, 928 .mux_clks = exynos4415_mux_clks,
@@ -961,7 +961,7 @@ CLK_OF_DECLARE(exynos4415_cmu, "samsung,exynos4415-cmu", exynos4415_cmu_init);
961#define SRC_DMC 0x300 961#define SRC_DMC 0x300
962#define DIV_DMC1 0x504 962#define DIV_DMC1 0x504
963 963
964static unsigned long exynos4415_cmu_dmc_clk_regs[] __initdata = { 964static const unsigned long exynos4415_cmu_dmc_clk_regs[] __initconst = {
965 MPLL_LOCK, 965 MPLL_LOCK,
966 MPLL_CON0, 966 MPLL_CON0,
967 MPLL_CON1, 967 MPLL_CON1,
@@ -978,14 +978,14 @@ PNAME(mout_mpll_p) = { "fin_pll", "fout_mpll", };
978PNAME(mout_bpll_p) = { "fin_pll", "fout_bpll", }; 978PNAME(mout_bpll_p) = { "fin_pll", "fout_bpll", };
979PNAME(mbpll_p) = { "mout_mpll", "mout_bpll", }; 979PNAME(mbpll_p) = { "mout_mpll", "mout_bpll", };
980 980
981static struct samsung_mux_clock exynos4415_dmc_mux_clks[] __initdata = { 981static const struct samsung_mux_clock exynos4415_dmc_mux_clks[] __initconst = {
982 MUX(CLK_DMC_MOUT_MPLL, "mout_mpll", mout_mpll_p, SRC_DMC, 12, 1), 982 MUX(CLK_DMC_MOUT_MPLL, "mout_mpll", mout_mpll_p, SRC_DMC, 12, 1),
983 MUX(CLK_DMC_MOUT_BPLL, "mout_bpll", mout_bpll_p, SRC_DMC, 10, 1), 983 MUX(CLK_DMC_MOUT_BPLL, "mout_bpll", mout_bpll_p, SRC_DMC, 10, 1),
984 MUX(CLK_DMC_MOUT_DPHY, "mout_dphy", mbpll_p, SRC_DMC, 8, 1), 984 MUX(CLK_DMC_MOUT_DPHY, "mout_dphy", mbpll_p, SRC_DMC, 8, 1),
985 MUX(CLK_DMC_MOUT_DMC_BUS, "mout_dmc_bus", mbpll_p, SRC_DMC, 4, 1), 985 MUX(CLK_DMC_MOUT_DMC_BUS, "mout_dmc_bus", mbpll_p, SRC_DMC, 4, 1),
986}; 986};
987 987
988static struct samsung_div_clock exynos4415_dmc_div_clks[] __initdata = { 988static const struct samsung_div_clock exynos4415_dmc_div_clks[] __initconst = {
989 DIV(CLK_DMC_DIV_DMC, "div_dmc", "div_dmc_pre", DIV_DMC1, 27, 3), 989 DIV(CLK_DMC_DIV_DMC, "div_dmc", "div_dmc_pre", DIV_DMC1, 27, 3),
990 DIV(CLK_DMC_DIV_DPHY, "div_dphy", "mout_dphy", DIV_DMC1, 23, 3), 990 DIV(CLK_DMC_DIV_DPHY, "div_dphy", "mout_dphy", DIV_DMC1, 23, 3),
991 DIV(CLK_DMC_DIV_DMC_PRE, "div_dmc_pre", "mout_dmc_bus", 991 DIV(CLK_DMC_DIV_DMC_PRE, "div_dmc_pre", "mout_dmc_bus",
@@ -995,14 +995,14 @@ static struct samsung_div_clock exynos4415_dmc_div_clks[] __initdata = {
995 DIV(CLK_DMC_DIV_MPLL_PRE, "div_mpll_pre", "mout_mpll", DIV_DMC1, 8, 2), 995 DIV(CLK_DMC_DIV_MPLL_PRE, "div_mpll_pre", "mout_mpll", DIV_DMC1, 8, 2),
996}; 996};
997 997
998static struct samsung_pll_clock exynos4415_dmc_plls[] __initdata = { 998static const struct samsung_pll_clock exynos4415_dmc_plls[] __initconst = {
999 PLL(pll_35xx, CLK_DMC_FOUT_MPLL, "fout_mpll", "fin_pll", 999 PLL(pll_35xx, CLK_DMC_FOUT_MPLL, "fout_mpll", "fin_pll",
1000 MPLL_LOCK, MPLL_CON0, exynos4415_pll_rates), 1000 MPLL_LOCK, MPLL_CON0, exynos4415_pll_rates),
1001 PLL(pll_35xx, CLK_DMC_FOUT_BPLL, "fout_bpll", "fin_pll", 1001 PLL(pll_35xx, CLK_DMC_FOUT_BPLL, "fout_bpll", "fin_pll",
1002 BPLL_LOCK, BPLL_CON0, exynos4415_pll_rates), 1002 BPLL_LOCK, BPLL_CON0, exynos4415_pll_rates),
1003}; 1003};
1004 1004
1005static struct samsung_cmu_info cmu_dmc_info __initdata = { 1005static const struct samsung_cmu_info cmu_dmc_info __initconst = {
1006 .pll_clks = exynos4415_dmc_plls, 1006 .pll_clks = exynos4415_dmc_plls,
1007 .nr_pll_clks = ARRAY_SIZE(exynos4415_dmc_plls), 1007 .nr_pll_clks = ARRAY_SIZE(exynos4415_dmc_plls),
1008 .mux_clks = exynos4415_dmc_mux_clks, 1008 .mux_clks = exynos4415_dmc_mux_clks,