diff options
author | Chanwoo Choi <cw00.choi@samsung.com> | 2015-01-14 20:50:52 -0500 |
---|---|---|
committer | Sylwester Nawrocki <s.nawrocki@samsung.com> | 2015-01-28 09:51:17 -0500 |
commit | e64fb42da4c6c713cfc7cad607e97e0773fa41ff (patch) | |
tree | 290f1207fd8549047ebea3ff56393f704c6a964b | |
parent | 01e5200d169a442651f823e4941ca61d78ec2b8d (diff) |
clk: samsung: exynos4: Add divider clock id for memory bus frequency
This patch adds the divider clock id for Exynos4 memory bus frequency.
The clock id is used for DVFS (Dynamic Voltage/Frequency Scaling)
feature of the exynos memory bus.
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
-rw-r--r-- | drivers/clk/samsung/clk-exynos4.c | 10 | ||||
-rw-r--r-- | include/dt-bindings/clock/exynos4.h | 7 |
2 files changed, 11 insertions, 6 deletions
diff --git a/drivers/clk/samsung/clk-exynos4.c b/drivers/clk/samsung/clk-exynos4.c index 88e8c6bbd77f..51462e85675f 100644 --- a/drivers/clk/samsung/clk-exynos4.c +++ b/drivers/clk/samsung/clk-exynos4.c | |||
@@ -703,12 +703,12 @@ static struct samsung_mux_clock exynos4x12_mux_clks[] __initdata = { | |||
703 | 703 | ||
704 | /* list of divider clocks supported in all exynos4 soc's */ | 704 | /* list of divider clocks supported in all exynos4 soc's */ |
705 | static struct samsung_div_clock exynos4_div_clks[] __initdata = { | 705 | static struct samsung_div_clock exynos4_div_clks[] __initdata = { |
706 | DIV(0, "div_gdl", "mout_gdl", DIV_LEFTBUS, 0, 3), | 706 | DIV(CLK_DIV_GDL, "div_gdl", "mout_gdl", DIV_LEFTBUS, 0, 3), |
707 | DIV(0, "div_gpl", "div_gdl", DIV_LEFTBUS, 4, 3), | 707 | DIV(0, "div_gpl", "div_gdl", DIV_LEFTBUS, 4, 3), |
708 | DIV(0, "div_clkout_leftbus", "mout_clkout_leftbus", | 708 | DIV(0, "div_clkout_leftbus", "mout_clkout_leftbus", |
709 | CLKOUT_CMU_LEFTBUS, 8, 6), | 709 | CLKOUT_CMU_LEFTBUS, 8, 6), |
710 | 710 | ||
711 | DIV(0, "div_gdr", "mout_gdr", DIV_RIGHTBUS, 0, 3), | 711 | DIV(CLK_DIV_GDR, "div_gdr", "mout_gdr", DIV_RIGHTBUS, 0, 3), |
712 | DIV(0, "div_gpr", "div_gdr", DIV_RIGHTBUS, 4, 3), | 712 | DIV(0, "div_gpr", "div_gdr", DIV_RIGHTBUS, 4, 3), |
713 | DIV(0, "div_clkout_rightbus", "mout_clkout_rightbus", | 713 | DIV(0, "div_clkout_rightbus", "mout_clkout_rightbus", |
714 | CLKOUT_CMU_RIGHTBUS, 8, 6), | 714 | CLKOUT_CMU_RIGHTBUS, 8, 6), |
@@ -781,10 +781,10 @@ static struct samsung_div_clock exynos4_div_clks[] __initdata = { | |||
781 | CLK_SET_RATE_PARENT, 0), | 781 | CLK_SET_RATE_PARENT, 0), |
782 | DIV(0, "div_clkout_top", "mout_clkout_top", CLKOUT_CMU_TOP, 8, 6), | 782 | DIV(0, "div_clkout_top", "mout_clkout_top", CLKOUT_CMU_TOP, 8, 6), |
783 | 783 | ||
784 | DIV(0, "div_acp", "mout_dmc_bus", DIV_DMC0, 0, 3), | 784 | DIV(CLK_DIV_ACP, "div_acp", "mout_dmc_bus", DIV_DMC0, 0, 3), |
785 | DIV(0, "div_acp_pclk", "div_acp", DIV_DMC0, 4, 3), | 785 | DIV(0, "div_acp_pclk", "div_acp", DIV_DMC0, 4, 3), |
786 | DIV(0, "div_dphy", "mout_dphy", DIV_DMC0, 8, 3), | 786 | DIV(0, "div_dphy", "mout_dphy", DIV_DMC0, 8, 3), |
787 | DIV(0, "div_dmc", "mout_dmc_bus", DIV_DMC0, 12, 3), | 787 | DIV(CLK_DIV_DMC, "div_dmc", "mout_dmc_bus", DIV_DMC0, 12, 3), |
788 | DIV(0, "div_dmcd", "div_dmc", DIV_DMC0, 16, 3), | 788 | DIV(0, "div_dmcd", "div_dmc", DIV_DMC0, 16, 3), |
789 | DIV(0, "div_dmcp", "div_dmcd", DIV_DMC0, 20, 3), | 789 | DIV(0, "div_dmcp", "div_dmcd", DIV_DMC0, 20, 3), |
790 | DIV(0, "div_pwi", "mout_pwi", DIV_DMC1, 8, 4), | 790 | DIV(0, "div_pwi", "mout_pwi", DIV_DMC1, 8, 4), |
@@ -829,7 +829,7 @@ static struct samsung_div_clock exynos4x12_div_clks[] __initdata = { | |||
829 | DIV_F(CLK_DIV_MCUISP1, "div_mcuisp1", "div_mcuisp0", E4X12_DIV_ISP1, | 829 | DIV_F(CLK_DIV_MCUISP1, "div_mcuisp1", "div_mcuisp0", E4X12_DIV_ISP1, |
830 | 8, 3, CLK_GET_RATE_NOCACHE, 0), | 830 | 8, 3, CLK_GET_RATE_NOCACHE, 0), |
831 | DIV(CLK_SCLK_FIMG2D, "sclk_fimg2d", "mout_g2d", DIV_DMC1, 0, 4), | 831 | DIV(CLK_SCLK_FIMG2D, "sclk_fimg2d", "mout_g2d", DIV_DMC1, 0, 4), |
832 | DIV(0, "div_c2c", "mout_c2c", DIV_DMC1, 4, 3), | 832 | DIV(CLK_DIV_C2C, "div_c2c", "mout_c2c", DIV_DMC1, 4, 3), |
833 | DIV(0, "div_c2c_aclk", "div_c2c", DIV_DMC1, 12, 3), | 833 | DIV(0, "div_c2c_aclk", "div_c2c", DIV_DMC1, 12, 3), |
834 | }; | 834 | }; |
835 | 835 | ||
diff --git a/include/dt-bindings/clock/exynos4.h b/include/dt-bindings/clock/exynos4.h index 34fe28c622d0..c4b1676ea674 100644 --- a/include/dt-bindings/clock/exynos4.h +++ b/include/dt-bindings/clock/exynos4.h | |||
@@ -262,8 +262,13 @@ | |||
262 | #define CLK_DIV_MCUISP1 453 /* Exynos4x12 only */ | 262 | #define CLK_DIV_MCUISP1 453 /* Exynos4x12 only */ |
263 | #define CLK_DIV_ACLK200 454 /* Exynos4x12 only */ | 263 | #define CLK_DIV_ACLK200 454 /* Exynos4x12 only */ |
264 | #define CLK_DIV_ACLK400_MCUISP 455 /* Exynos4x12 only */ | 264 | #define CLK_DIV_ACLK400_MCUISP 455 /* Exynos4x12 only */ |
265 | #define CLK_DIV_ACP 456 | ||
266 | #define CLK_DIV_DMC 457 | ||
267 | #define CLK_DIV_C2C 458 /* Exynos4x12 only */ | ||
268 | #define CLK_DIV_GDL 459 | ||
269 | #define CLK_DIV_GDR 460 | ||
265 | 270 | ||
266 | /* must be greater than maximal clock id */ | 271 | /* must be greater than maximal clock id */ |
267 | #define CLK_NR_CLKS 456 | 272 | #define CLK_NR_CLKS 461 |
268 | 273 | ||
269 | #endif /* _DT_BINDINGS_CLOCK_EXYNOS_4_H */ | 274 | #endif /* _DT_BINDINGS_CLOCK_EXYNOS_4_H */ |