1 /* 2 * This program is free software; you can redistribute it and/or 3 * modify it under the terms of the GNU General Public License as 4 * published by the Free Software Foundation version 2. 5 */ 6 7 #include <linux/kernel.h> 8 #include <linux/clk-provider.h> 9 #include <linux/clk/ti.h> 10 11 #include "clock.h" 12 13 static struct ti_dt_clk dm814_clks[] = { 14 DT_CLK(NULL, "devosc_ck", "devosc_ck"), 15 DT_CLK(NULL, "mpu_ck", "mpu_ck"), 16 DT_CLK(NULL, "sysclk4_ck", "sysclk4_ck"), 17 DT_CLK(NULL, "sysclk5_ck", "sysclk5_ck"), 18 DT_CLK(NULL, "sysclk6_ck", "sysclk6_ck"), 19 DT_CLK(NULL, "sysclk8_ck", "sysclk8_ck"), 20 DT_CLK(NULL, "sysclk10_ck", "sysclk10_ck"), 21 DT_CLK(NULL, "sysclk18_ck", "sysclk18_ck"), 22 DT_CLK(NULL, "timer_sys_ck", "devosc_ck"), 23 DT_CLK(NULL, "timer1_fck", "timer1_fck"), 24 DT_CLK(NULL, "timer2_fck", "timer2_fck"), 25 DT_CLK(NULL, "cpsw_125mhz_gclk", "cpsw_125mhz_gclk"), 26 DT_CLK(NULL, "cpsw_cpts_rft_clk", "cpsw_cpts_rft_clk"), 27 { .node_name = NULL }, 28 }; 29 30 int __init dm814x_dt_clk_init(void) 31 { 32 ti_dt_clocks_register(dm814_clks); 33 omap2_clk_disable_autoidle_all(); 34 omap2_clk_enable_init_clocks(NULL, 0); 35 36 return 0; 37 } 38