diff options
Diffstat (limited to 'arch/arm/mach-omap2/cclock33xx_data.c')
-rw-r--r-- | arch/arm/mach-omap2/cclock33xx_data.c | 49 |
1 files changed, 44 insertions, 5 deletions
diff --git a/arch/arm/mach-omap2/cclock33xx_data.c b/arch/arm/mach-omap2/cclock33xx_data.c index 0346de56436c..ba6534d7f155 100644 --- a/arch/arm/mach-omap2/cclock33xx_data.c +++ b/arch/arm/mach-omap2/cclock33xx_data.c | |||
@@ -431,15 +431,11 @@ DEFINE_STRUCT_CLK(aes0_fck, dpll_core_ck_parents, clk_ops_null); | |||
431 | * - Driver code is not yet migrated to use hwmod/runtime pm | 431 | * - Driver code is not yet migrated to use hwmod/runtime pm |
432 | * - Modules outside kernel access (to disable them by default) | 432 | * - Modules outside kernel access (to disable them by default) |
433 | * | 433 | * |
434 | * - debugss | ||
435 | * - mmu (gfx domain) | 434 | * - mmu (gfx domain) |
436 | * - cefuse | 435 | * - cefuse |
437 | * - usbotg_fck (its additional clock and not really a modulemode) | 436 | * - usbotg_fck (its additional clock and not really a modulemode) |
438 | * - ieee5000 | 437 | * - ieee5000 |
439 | */ | 438 | */ |
440 | DEFINE_CLK_GATE(debugss_ick, "dpll_core_m4_ck", &dpll_core_m4_ck, 0x0, | ||
441 | AM33XX_CM_WKUP_DEBUGSS_CLKCTRL, AM33XX_MODULEMODE_SWCTRL_SHIFT, | ||
442 | 0x0, NULL); | ||
443 | 439 | ||
444 | DEFINE_CLK_GATE(mmu_fck, "dpll_core_m4_ck", &dpll_core_m4_ck, 0x0, | 440 | DEFINE_CLK_GATE(mmu_fck, "dpll_core_m4_ck", &dpll_core_m4_ck, 0x0, |
445 | AM33XX_CM_GFX_MMUDATA_CLKCTRL, AM33XX_MODULEMODE_SWCTRL_SHIFT, | 441 | AM33XX_CM_GFX_MMUDATA_CLKCTRL, AM33XX_MODULEMODE_SWCTRL_SHIFT, |
@@ -890,6 +886,42 @@ DEFINE_CLK_OMAP_MUX_GATE(ehrpwm2_tbclk, "l4ls_clkdm", | |||
890 | NULL, pwmss_clk_parents, ehrpwm_tbclk_ops); | 886 | NULL, pwmss_clk_parents, ehrpwm_tbclk_ops); |
891 | 887 | ||
892 | /* | 888 | /* |
889 | * debugss optional clocks | ||
890 | */ | ||
891 | DEFINE_CLK_GATE(dbg_sysclk_ck, "sys_clkin_ck", &sys_clkin_ck, | ||
892 | 0x0, AM33XX_CM_WKUP_DEBUGSS_CLKCTRL, | ||
893 | AM33XX_OPTFCLKEN_DBGSYSCLK_SHIFT, 0x0, NULL); | ||
894 | |||
895 | DEFINE_CLK_GATE(dbg_clka_ck, "dpll_core_m4_ck", &dpll_core_m4_ck, | ||
896 | 0x0, AM33XX_CM_WKUP_DEBUGSS_CLKCTRL, | ||
897 | AM33XX_OPTCLK_DEBUG_CLKA_SHIFT, 0x0, NULL); | ||
898 | |||
899 | static const char *stm_pmd_clock_mux_ck_parents[] = { | ||
900 | "dbg_sysclk_ck", "dbg_clka_ck", | ||
901 | }; | ||
902 | |||
903 | DEFINE_CLK_MUX(stm_pmd_clock_mux_ck, stm_pmd_clock_mux_ck_parents, NULL, 0x0, | ||
904 | AM33XX_CM_WKUP_DEBUGSS_CLKCTRL, AM33XX_STM_PMD_CLKSEL_SHIFT, | ||
905 | AM33XX_STM_PMD_CLKSEL_WIDTH, 0x0, NULL); | ||
906 | |||
907 | DEFINE_CLK_MUX(trace_pmd_clk_mux_ck, stm_pmd_clock_mux_ck_parents, NULL, 0x0, | ||
908 | AM33XX_CM_WKUP_DEBUGSS_CLKCTRL, | ||
909 | AM33XX_TRC_PMD_CLKSEL_SHIFT, | ||
910 | AM33XX_TRC_PMD_CLKSEL_WIDTH, 0x0, NULL); | ||
911 | |||
912 | DEFINE_CLK_DIVIDER(stm_clk_div_ck, "stm_pmd_clock_mux_ck", | ||
913 | &stm_pmd_clock_mux_ck, 0x0, AM33XX_CM_WKUP_DEBUGSS_CLKCTRL, | ||
914 | AM33XX_STM_PMD_CLKDIVSEL_SHIFT, | ||
915 | AM33XX_STM_PMD_CLKDIVSEL_WIDTH, CLK_DIVIDER_POWER_OF_TWO, | ||
916 | NULL); | ||
917 | |||
918 | DEFINE_CLK_DIVIDER(trace_clk_div_ck, "trace_pmd_clk_mux_ck", | ||
919 | &trace_pmd_clk_mux_ck, 0x0, AM33XX_CM_WKUP_DEBUGSS_CLKCTRL, | ||
920 | AM33XX_TRC_PMD_CLKDIVSEL_SHIFT, | ||
921 | AM33XX_TRC_PMD_CLKDIVSEL_WIDTH, CLK_DIVIDER_POWER_OF_TWO, | ||
922 | NULL); | ||
923 | |||
924 | /* | ||
893 | * clkdev | 925 | * clkdev |
894 | */ | 926 | */ |
895 | static struct omap_clk am33xx_clks[] = { | 927 | static struct omap_clk am33xx_clks[] = { |
@@ -926,7 +958,6 @@ static struct omap_clk am33xx_clks[] = { | |||
926 | CLK("481cc000.d_can", NULL, &dcan0_fck), | 958 | CLK("481cc000.d_can", NULL, &dcan0_fck), |
927 | CLK(NULL, "dcan1_fck", &dcan1_fck), | 959 | CLK(NULL, "dcan1_fck", &dcan1_fck), |
928 | CLK("481d0000.d_can", NULL, &dcan1_fck), | 960 | CLK("481d0000.d_can", NULL, &dcan1_fck), |
929 | CLK(NULL, "debugss_ick", &debugss_ick), | ||
930 | CLK(NULL, "pruss_ocp_gclk", &pruss_ocp_gclk), | 961 | CLK(NULL, "pruss_ocp_gclk", &pruss_ocp_gclk), |
931 | CLK(NULL, "mcasp0_fck", &mcasp0_fck), | 962 | CLK(NULL, "mcasp0_fck", &mcasp0_fck), |
932 | CLK(NULL, "mcasp1_fck", &mcasp1_fck), | 963 | CLK(NULL, "mcasp1_fck", &mcasp1_fck), |
@@ -969,6 +1000,13 @@ static struct omap_clk am33xx_clks[] = { | |||
969 | CLK(NULL, "clkout2_div_ck", &clkout2_div_ck), | 1000 | CLK(NULL, "clkout2_div_ck", &clkout2_div_ck), |
970 | CLK(NULL, "timer_32k_ck", &clkdiv32k_ick), | 1001 | CLK(NULL, "timer_32k_ck", &clkdiv32k_ick), |
971 | CLK(NULL, "timer_sys_ck", &sys_clkin_ck), | 1002 | CLK(NULL, "timer_sys_ck", &sys_clkin_ck), |
1003 | CLK(NULL, "dbg_sysclk_ck", &dbg_sysclk_ck), | ||
1004 | CLK(NULL, "dbg_clka_ck", &dbg_clka_ck), | ||
1005 | CLK(NULL, "stm_pmd_clock_mux_ck", &stm_pmd_clock_mux_ck), | ||
1006 | CLK(NULL, "trace_pmd_clk_mux_ck", &trace_pmd_clk_mux_ck), | ||
1007 | CLK(NULL, "stm_clk_div_ck", &stm_clk_div_ck), | ||
1008 | CLK(NULL, "trace_clk_div_ck", &trace_clk_div_ck), | ||
1009 | CLK(NULL, "clkout2_ck", &clkout2_ck), | ||
972 | CLK("48300200.ehrpwm", "tbclk", &ehrpwm0_tbclk), | 1010 | CLK("48300200.ehrpwm", "tbclk", &ehrpwm0_tbclk), |
973 | CLK("48302200.ehrpwm", "tbclk", &ehrpwm1_tbclk), | 1011 | CLK("48302200.ehrpwm", "tbclk", &ehrpwm1_tbclk), |
974 | CLK("48304200.ehrpwm", "tbclk", &ehrpwm2_tbclk), | 1012 | CLK("48304200.ehrpwm", "tbclk", &ehrpwm2_tbclk), |
@@ -982,6 +1020,7 @@ static const char *enable_init_clks[] = { | |||
982 | "l4hs_gclk", | 1020 | "l4hs_gclk", |
983 | "l4fw_gclk", | 1021 | "l4fw_gclk", |
984 | "l4ls_gclk", | 1022 | "l4ls_gclk", |
1023 | "clkout2_ck", /* Required for external peripherals like, Audio codecs */ | ||
985 | }; | 1024 | }; |
986 | 1025 | ||
987 | int __init am33xx_clk_init(void) | 1026 | int __init am33xx_clk_init(void) |