s5p-clock.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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. #ifndef __ASM_PLAT_S5P_CLOCK_H
  13. #define __ASM_PLAT_S5P_CLOCK_H __FILE__
  14. #include <linux/clk.h>
  15. #define GET_DIV(clk, field) ((((clk) & field##_MASK) >> field##_SHIFT) + 1)
  16. #define clk_fin_apll clk_ext_xtal_mux
  17. #define clk_fin_bpll clk_ext_xtal_mux
  18. #define clk_fin_cpll clk_ext_xtal_mux
  19. #define clk_fin_mpll clk_ext_xtal_mux
  20. #define clk_fin_epll clk_ext_xtal_mux
  21. #define clk_fin_dpll clk_ext_xtal_mux
  22. #define clk_fin_vpll clk_ext_xtal_mux
  23. #define clk_fin_hpll clk_ext_xtal_mux
  24. extern struct clk clk_ext_xtal_mux;
  25. extern struct clk clk_xusbxti;
  26. extern struct clk clk_48m;
  27. extern struct clk s5p_clk_27m;
  28. extern struct clk clk_fout_apll;
  29. extern struct clk clk_fout_bpll;
  30. extern struct clk clk_fout_cpll;
  31. extern struct clk clk_fout_mpll;
  32. extern struct clk clk_fout_epll;
  33. extern struct clk clk_fout_dpll;
  34. extern struct clk clk_fout_vpll;
  35. extern struct clk clk_arm;
  36. extern struct clk clk_vpll;
  37. extern struct clksrc_sources clk_src_apll;
  38. extern struct clksrc_sources clk_src_bpll;
  39. extern struct clksrc_sources clk_src_cpll;
  40. extern struct clksrc_sources clk_src_mpll;
  41. extern struct clksrc_sources clk_src_epll;
  42. extern struct clksrc_sources clk_src_dpll;
  43. extern int s5p_gatectrl(void __iomem *reg, struct clk *clk, int enable);
  44. /* Common EPLL operations for S5P platform */
  45. extern int s5p_epll_enable(struct clk *clk, int enable);
  46. extern unsigned long s5p_epll_get_rate(struct clk *clk);
  47. /* SPDIF clk operations common for S5PC100/V210/C110 and Exynos4 */
  48. extern int s5p_spdif_set_rate(struct clk *clk, unsigned long rate);
  49. extern unsigned long s5p_spdif_get_rate(struct clk *clk);
  50. extern struct clk_ops s5p_sclk_spdif_ops;
  51. #endif /* __ASM_PLAT_S5P_CLOCK_H */