1 /* linux/arch/arm/mach-s5p64x0/include/mach/s5p64x0-clock.h 2 * 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 4 * http://www.samsung.com 5 * 6 * Header file for s5p64x0 clock support 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License version 2 as 10 * published by the Free Software Foundation. 11 */ 12 13 #ifndef __ASM_ARCH_CLOCK_H 14 #define __ASM_ARCH_CLOCK_H __FILE__ 15 16 #include <linux/clk.h> 17 18 extern struct clksrc_clk clk_mout_apll; 19 extern struct clksrc_clk clk_mout_mpll; 20 extern struct clksrc_clk clk_mout_epll; 21 22 extern int s5p64x0_epll_enable(struct clk *clk, int enable); 23 extern unsigned long s5p64x0_epll_get_rate(struct clk *clk); 24 25 extern unsigned long s5p64x0_armclk_get_rate(struct clk *clk); 26 extern unsigned long s5p64x0_armclk_round_rate(struct clk *clk, unsigned long rate); 27 extern int s5p64x0_armclk_set_rate(struct clk *clk, unsigned long rate); 28 29 extern struct clk_ops s5p64x0_clkarm_ops; 30 31 extern struct clksrc_clk clk_armclk; 32 extern struct clksrc_clk clk_dout_mpll; 33 34 extern struct clk *clkset_hclk_low_list[]; 35 extern struct clksrc_sources clkset_hclk_low; 36 37 extern int s5p64x0_pclk_ctrl(struct clk *clk, int enable); 38 extern int s5p64x0_hclk0_ctrl(struct clk *clk, int enable); 39 extern int s5p64x0_hclk1_ctrl(struct clk *clk, int enable); 40 extern int s5p64x0_sclk_ctrl(struct clk *clk, int enable); 41 extern int s5p64x0_sclk1_ctrl(struct clk *clk, int enable); 42 extern int s5p64x0_mem_ctrl(struct clk *clk, int enable); 43 44 extern int s5p64x0_clk48m_ctrl(struct clk *clk, int enable); 45 46 #endif /* __ASM_ARCH_CLOCK_H */ 47