1 /* linux/arch/arm/plat-samsung/include/plat/s5p-clock.h 2 * 3 * Copyright (c) 2009-2010 Samsung Electronics Co., Ltd. 4 * http://www.samsung.com 5 * 6 * Header file for s5p 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_PLAT_S5P_CLOCK_H 14 #define __ASM_PLAT_S5P_CLOCK_H __FILE__ 15 16 #include <linux/clk.h> 17 18 #define GET_DIV(clk, field) ((((clk) & field##_MASK) >> field##_SHIFT) + 1) 19 20 #define clk_fin_apll clk_ext_xtal_mux 21 #define clk_fin_bpll clk_ext_xtal_mux 22 #define clk_fin_cpll clk_ext_xtal_mux 23 #define clk_fin_mpll clk_ext_xtal_mux 24 #define clk_fin_epll clk_ext_xtal_mux 25 #define clk_fin_dpll clk_ext_xtal_mux 26 #define clk_fin_vpll clk_ext_xtal_mux 27 #define clk_fin_hpll clk_ext_xtal_mux 28 29 extern struct clk clk_ext_xtal_mux; 30 extern struct clk clk_xusbxti; 31 extern struct clk clk_48m; 32 extern struct clk s5p_clk_27m; 33 extern struct clk clk_fout_apll; 34 extern struct clk clk_fout_bpll; 35 extern struct clk clk_fout_cpll; 36 extern struct clk clk_fout_mpll; 37 extern struct clk clk_fout_epll; 38 extern struct clk clk_fout_dpll; 39 extern struct clk clk_fout_vpll; 40 extern struct clk clk_arm; 41 extern struct clk clk_vpll; 42 43 extern struct clksrc_sources clk_src_apll; 44 extern struct clksrc_sources clk_src_bpll; 45 extern struct clksrc_sources clk_src_cpll; 46 extern struct clksrc_sources clk_src_mpll; 47 extern struct clksrc_sources clk_src_epll; 48 extern struct clksrc_sources clk_src_dpll; 49 50 extern int s5p_gatectrl(void __iomem *reg, struct clk *clk, int enable); 51 52 /* Common EPLL operations for S5P platform */ 53 extern int s5p_epll_enable(struct clk *clk, int enable); 54 extern unsigned long s5p_epll_get_rate(struct clk *clk); 55 56 /* SPDIF clk operations common for S5PC100/V210/C110 and Exynos4 */ 57 extern int s5p_spdif_set_rate(struct clk *clk, unsigned long rate); 58 extern unsigned long s5p_spdif_get_rate(struct clk *clk); 59 60 extern struct clk_ops s5p_sclk_spdif_ops; 61 #endif /* __ASM_PLAT_S5P_CLOCK_H */ 62