xref: /linux/include/linux/clk/samsung.h (revision 0c69bd2ca6ee20064dde7853cd749284e053a874)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright (c) 2020 Krzysztof Kozlowski <krzk@kernel.org>
4  */
5 
6 #ifndef __LINUX_CLK_SAMSUNG_H_
7 #define __LINUX_CLK_SAMSUNG_H_
8 
9 #include <linux/compiler_types.h>
10 
11 struct device_node;
12 
13 #ifdef CONFIG_S3C64XX_COMMON_CLK
14 void s3c64xx_clk_init(struct device_node *np, unsigned long xtal_f,
15 		      unsigned long xusbxti_f, bool s3c6400,
16 		      void __iomem *base);
17 #else
18 static inline void s3c64xx_clk_init(struct device_node *np,
19 				    unsigned long xtal_f,
20 				    unsigned long xusbxti_f,
21 				    bool s3c6400, void __iomem *base) { }
22 #endif /* CONFIG_S3C64XX_COMMON_CLK */
23 
24 #ifdef CONFIG_S3C2410_COMMON_CLK
25 void s3c2410_common_clk_init(struct device_node *np, unsigned long xti_f,
26 			     int current_soc,
27 			     void __iomem *reg_base);
28 #else
29 static inline void s3c2410_common_clk_init(struct device_node *np,
30 					   unsigned long xti_f,
31 					   int current_soc,
32 					   void __iomem *reg_base) { }
33 #endif /* CONFIG_S3C2410_COMMON_CLK */
34 
35 #ifdef CONFIG_S3C2412_COMMON_CLK
36 void s3c2412_common_clk_init(struct device_node *np, unsigned long xti_f,
37 			     unsigned long ext_f, void __iomem *reg_base);
38 #else
39 static inline void s3c2412_common_clk_init(struct device_node *np,
40 					   unsigned long xti_f,
41 					   unsigned long ext_f,
42 					   void __iomem *reg_base) { }
43 #endif /* CONFIG_S3C2412_COMMON_CLK */
44 
45 #ifdef CONFIG_S3C2443_COMMON_CLK
46 void s3c2443_common_clk_init(struct device_node *np, unsigned long xti_f,
47 			     int current_soc,
48 			     void __iomem *reg_base);
49 #else
50 static inline void s3c2443_common_clk_init(struct device_node *np,
51 					   unsigned long xti_f,
52 					   int current_soc,
53 					   void __iomem *reg_base) { }
54 #endif /* CONFIG_S3C2443_COMMON_CLK */
55 
56 #endif /* __LINUX_CLK_SAMSUNG_H_ */
57