Commit | Line | Data |
---|---|---|
8551f3ff KK |
1 | /* |
2 | * Copyright (c) 2012 Samsung Electronics Co., Ltd. | |
3 | * http://www.samsung.com | |
4 | * | |
5 | * Common Header for S3C24XX SoCs | |
6 | * | |
7 | * This program is free software; you can redistribute it and/or modify | |
8 | * it under the terms of the GNU General Public License version 2 as | |
9 | * published by the Free Software Foundation. | |
10 | */ | |
11 | ||
12 | #ifndef __ARCH_ARM_MACH_S3C24XX_COMMON_H | |
13 | #define __ARCH_ARM_MACH_S3C24XX_COMMON_H __FILE__ | |
14 | ||
7488335d | 15 | struct s3c2410_uartcfg; |
e1a621da | 16 | |
7488335d | 17 | #ifdef CONFIG_CPU_S3C2410 |
e1a621da HS |
18 | extern int s3c2410_init(void); |
19 | extern int s3c2410a_init(void); | |
e1a621da | 20 | extern void s3c2410_map_io(void); |
e1a621da | 21 | extern void s3c2410_init_uarts(struct s3c2410_uartcfg *cfg, int no); |
e1a621da | 22 | extern void s3c2410_init_clocks(int xtal); |
7488335d | 23 | extern void s3c2410_restart(char mode, const char *cmd); |
e1a621da HS |
24 | #else |
25 | #define s3c2410_init_clocks NULL | |
26 | #define s3c2410_init_uarts NULL | |
27 | #define s3c2410_map_io NULL | |
28 | #define s3c2410_init NULL | |
29 | #define s3c2410a_init NULL | |
30 | #endif | |
31 | ||
32 | #ifdef CONFIG_CPU_S3C2412 | |
e1a621da | 33 | extern int s3c2412_init(void); |
e1a621da | 34 | extern void s3c2412_map_io(void); |
e1a621da | 35 | extern void s3c2412_init_uarts(struct s3c2410_uartcfg *cfg, int no); |
e1a621da | 36 | extern void s3c2412_init_clocks(int xtal); |
e1a621da | 37 | extern int s3c2412_baseclk_add(void); |
e1a621da HS |
38 | extern void s3c2412_restart(char mode, const char *cmd); |
39 | #else | |
40 | #define s3c2412_init_clocks NULL | |
41 | #define s3c2412_init_uarts NULL | |
42 | #define s3c2412_map_io NULL | |
43 | #define s3c2412_init NULL | |
e1a621da HS |
44 | #endif |
45 | ||
46 | #ifdef CONFIG_CPU_S3C2416 | |
e1a621da | 47 | extern int s3c2416_init(void); |
e1a621da | 48 | extern void s3c2416_map_io(void); |
e1a621da | 49 | extern void s3c2416_init_uarts(struct s3c2410_uartcfg *cfg, int no); |
e1a621da | 50 | extern void s3c2416_init_clocks(int xtal); |
e1a621da | 51 | extern int s3c2416_baseclk_add(void); |
e1a621da | 52 | extern void s3c2416_restart(char mode, const char *cmd); |
e1a621da | 53 | extern void s3c2416_init_irq(void); |
e1a621da | 54 | |
7488335d | 55 | extern struct syscore_ops s3c2416_irq_syscore_ops; |
e1a621da HS |
56 | #else |
57 | #define s3c2416_init_clocks NULL | |
58 | #define s3c2416_init_uarts NULL | |
59 | #define s3c2416_map_io NULL | |
60 | #define s3c2416_init NULL | |
e1a621da HS |
61 | #endif |
62 | ||
63 | #if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2442) | |
e1a621da | 64 | extern void s3c244x_map_io(void); |
e1a621da | 65 | extern void s3c244x_init_uarts(struct s3c2410_uartcfg *cfg, int no); |
e1a621da | 66 | extern void s3c244x_init_clocks(int xtal); |
7488335d | 67 | extern void s3c244x_restart(char mode, const char *cmd); |
e1a621da HS |
68 | #else |
69 | #define s3c244x_init_clocks NULL | |
70 | #define s3c244x_init_uarts NULL | |
71 | #endif | |
72 | ||
73 | #ifdef CONFIG_CPU_S3C2440 | |
74 | extern int s3c2440_init(void); | |
e1a621da HS |
75 | extern void s3c2440_map_io(void); |
76 | #else | |
77 | #define s3c2440_init NULL | |
78 | #define s3c2440_map_io NULL | |
79 | #endif | |
80 | ||
81 | #ifdef CONFIG_CPU_S3C2442 | |
82 | extern int s3c2442_init(void); | |
e1a621da HS |
83 | extern void s3c2442_map_io(void); |
84 | #else | |
85 | #define s3c2442_init NULL | |
86 | #define s3c2442_map_io NULL | |
87 | #endif | |
88 | ||
89 | #ifdef CONFIG_CPU_S3C2443 | |
e1a621da | 90 | extern int s3c2443_init(void); |
e1a621da | 91 | extern void s3c2443_map_io(void); |
e1a621da | 92 | extern void s3c2443_init_uarts(struct s3c2410_uartcfg *cfg, int no); |
e1a621da | 93 | extern void s3c2443_init_clocks(int xtal); |
e1a621da | 94 | extern int s3c2443_baseclk_add(void); |
e1a621da | 95 | extern void s3c2443_restart(char mode, const char *cmd); |
e1a621da HS |
96 | extern void s3c2443_init_irq(void); |
97 | #else | |
98 | #define s3c2443_init_clocks NULL | |
99 | #define s3c2443_init_uarts NULL | |
100 | #define s3c2443_map_io NULL | |
101 | #define s3c2443_init NULL | |
e1a621da HS |
102 | #endif |
103 | ||
d8fdec16 HS |
104 | extern struct syscore_ops s3c24xx_irq_syscore_ops; |
105 | ||
8551f3ff | 106 | #endif /* __ARCH_ARM_MACH_S3C24XX_COMMON_H */ |