aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk
diff options
context:
space:
mode:
authorNaveen Krishna Ch <naveenkrishna.ch@gmail.com>2014-10-28 07:18:54 -0400
committerSylwester Nawrocki <s.nawrocki@samsung.com>2014-10-31 05:45:53 -0400
commit2ab2dfe5d4eef6bad8cdd90dc6bba5a7660273d4 (patch)
tree1dc45cbf7e6d2225eb15874ba7949a81582feb69 /drivers/clk
parentf5e127cd5ee52b3f0edaeeb7a40c0b9599f4e691 (diff)
clk: samsung: exynos7: add gate clocks for WDT, TMU and PWM blocks
Add clock support for the watchdog timer, pwm timer and thermal management unit IPs in Exynos7. Signed-off-by: Naveen Krishna Ch <naveenkrishna.ch@gmail.com> Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Diffstat (limited to 'drivers/clk')
-rw-r--r--drivers/clk/samsung/clk-exynos7.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/clk/samsung/clk-exynos7.c b/drivers/clk/samsung/clk-exynos7.c
index 3a30f43fa925..17e5cf4d2248 100644
--- a/drivers/clk/samsung/clk-exynos7.c
+++ b/drivers/clk/samsung/clk-exynos7.c
@@ -486,9 +486,12 @@ static struct samsung_gate_clock peric0_gate_clks[] __initdata = {
486 ENABLE_PCLK_PERIC0, 14, 0, 0), 486 ENABLE_PCLK_PERIC0, 14, 0, 0),
487 GATE(PCLK_UART0, "pclk_uart0", "mout_aclk_peric0_66_user", 487 GATE(PCLK_UART0, "pclk_uart0", "mout_aclk_peric0_66_user",
488 ENABLE_PCLK_PERIC0, 16, 0, 0), 488 ENABLE_PCLK_PERIC0, 16, 0, 0),
489 GATE(PCLK_PWM, "pclk_pwm", "mout_aclk_peric0_66_user",
490 ENABLE_PCLK_PERIC0, 21, 0, 0),
489 491
490 GATE(SCLK_UART0, "sclk_uart0_user", "mout_sclk_uart0_user", 492 GATE(SCLK_UART0, "sclk_uart0_user", "mout_sclk_uart0_user",
491 ENABLE_SCLK_PERIC0, 16, 0, 0), 493 ENABLE_SCLK_PERIC0, 16, 0, 0),
494 GATE(SCLK_PWM, "sclk_pwm", "fin_pll", ENABLE_SCLK_PERIC0, 21, 0, 0),
492}; 495};
493 496
494static struct samsung_cmu_info peric0_cmu_info __initdata = { 497static struct samsung_cmu_info peric0_cmu_info __initdata = {
@@ -586,7 +589,9 @@ CLK_OF_DECLARE(exynos7_clk_peric1, "samsung,exynos7-clock-peric1",
586 589
587/* Register Offset definitions for CMU_PERIS (0x10040000) */ 590/* Register Offset definitions for CMU_PERIS (0x10040000) */
588#define MUX_SEL_PERIS 0x0200 591#define MUX_SEL_PERIS 0x0200
592#define ENABLE_PCLK_PERIS 0x0900
589#define ENABLE_PCLK_PERIS_SECURE_CHIPID 0x0910 593#define ENABLE_PCLK_PERIS_SECURE_CHIPID 0x0910
594#define ENABLE_SCLK_PERIS 0x0A00
590#define ENABLE_SCLK_PERIS_SECURE_CHIPID 0x0A10 595#define ENABLE_SCLK_PERIS_SECURE_CHIPID 0x0A10
591 596
592/* List of parent clocks for Muxes in CMU_PERIS */ 597/* List of parent clocks for Muxes in CMU_PERIS */
@@ -594,7 +599,9 @@ PNAME(mout_aclk_peris_66_p) = { "fin_pll", "dout_aclk_peris_66" };
594 599
595static unsigned long peris_clk_regs[] __initdata = { 600static unsigned long peris_clk_regs[] __initdata = {
596 MUX_SEL_PERIS, 601 MUX_SEL_PERIS,
602 ENABLE_PCLK_PERIS,
597 ENABLE_PCLK_PERIS_SECURE_CHIPID, 603 ENABLE_PCLK_PERIS_SECURE_CHIPID,
604 ENABLE_SCLK_PERIS,
598 ENABLE_SCLK_PERIS_SECURE_CHIPID, 605 ENABLE_SCLK_PERIS_SECURE_CHIPID,
599}; 606};
600 607
@@ -604,10 +611,17 @@ static struct samsung_mux_clock peris_mux_clks[] __initdata = {
604}; 611};
605 612
606static struct samsung_gate_clock peris_gate_clks[] __initdata = { 613static struct samsung_gate_clock peris_gate_clks[] __initdata = {
614 GATE(PCLK_WDT, "pclk_wdt", "mout_aclk_peris_66_user",
615 ENABLE_PCLK_PERIS, 6, 0, 0),
616 GATE(PCLK_TMU, "pclk_tmu_apbif", "mout_aclk_peris_66_user",
617 ENABLE_PCLK_PERIS, 10, 0, 0),
618
607 GATE(PCLK_CHIPID, "pclk_chipid", "mout_aclk_peris_66_user", 619 GATE(PCLK_CHIPID, "pclk_chipid", "mout_aclk_peris_66_user",
608 ENABLE_PCLK_PERIS_SECURE_CHIPID, 0, 0, 0), 620 ENABLE_PCLK_PERIS_SECURE_CHIPID, 0, 0, 0),
609 GATE(SCLK_CHIPID, "sclk_chipid", "fin_pll", 621 GATE(SCLK_CHIPID, "sclk_chipid", "fin_pll",
610 ENABLE_SCLK_PERIS_SECURE_CHIPID, 0, 0, 0), 622 ENABLE_SCLK_PERIS_SECURE_CHIPID, 0, 0, 0),
623
624 GATE(SCLK_TMU, "sclk_tmu", "fin_pll", ENABLE_SCLK_PERIS, 10, 0, 0),
611}; 625};
612 626
613static struct samsung_cmu_info peris_cmu_info __initdata = { 627static struct samsung_cmu_info peris_cmu_info __initdata = {