2 * Copyright (c) 2013 Samsung Electronics Co., Ltd.
3 * Copyright (c) 2013 Linaro Ltd.
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
9 * Common Clock Framework support for all PLL's in Samsung platforms
12 #ifndef __SAMSUNG_CLK_PLL_H
13 #define __SAMSUNG_CLK_PLL_H
15 enum samsung_pll_type {
22 #define PLL_35XX_RATE(_rate, _m, _p, _s) \
30 #define PLL_36XX_RATE(_rate, _m, _p, _s, _k) \
39 /* NOTE: Rate table should be kept sorted in descending order. */
41 struct samsung_pll_rate_table {
61 extern struct clk * __init samsung_clk_register_pll45xx(const char *name,
62 const char *pname, const void __iomem *con_reg,
63 enum pll45xx_type type);
64 extern struct clk * __init samsung_clk_register_pll46xx(const char *name,
65 const char *pname, const void __iomem *con_reg,
66 enum pll46xx_type type);
67 extern struct clk *samsung_clk_register_pll6552(const char *name,
68 const char *pname, void __iomem *base);
69 extern struct clk *samsung_clk_register_pll6553(const char *name,
70 const char *pname, void __iomem *base);
71 extern struct clk * __init samsung_clk_register_pll2550x(const char *name,
72 const char *pname, const void __iomem *reg_base,
73 const unsigned long offset);
75 #endif /* __SAMSUNG_CLK_PLL_H */