Commit | Line | Data |
---|---|---|
b024043b KK |
1 | /* |
2 | * Copyright (c) 2011 Samsung Electronics Co., Ltd. | |
3 | * http://www.samsung.com | |
4 | * | |
5 | * Copyright 2008 Openmoko, Inc. | |
6 | * Copyright 2008 Simtec Electronics | |
7 | * Ben Dooks <ben@simtec.co.uk> | |
8 | * http://armlinux.simtec.co.uk/ | |
9 | * | |
10 | * Common Header for S3C64XX machines | |
11 | * | |
12 | * This program is free software; you can redistribute it and/or modify | |
13 | * it under the terms of the GNU General Public License version 2 as | |
14 | * published by the Free Software Foundation. | |
15 | */ | |
16 | ||
17 | #ifndef __ARCH_ARM_MACH_S3C64XX_COMMON_H | |
18 | #define __ARCH_ARM_MACH_S3C64XX_COMMON_H | |
19 | ||
7b6d864b RH |
20 | #include <linux/reboot.h> |
21 | ||
b024043b KK |
22 | void s3c64xx_init_irq(u32 vic0, u32 vic1); |
23 | void s3c64xx_init_io(struct map_desc *mach_desc, int size); | |
24 | ||
7b6d864b | 25 | void s3c64xx_restart(enum reboot_mode mode, const char *cmd); |
cc8f252b | 26 | void s3c64xx_init_late(void); |
ff84ded2 | 27 | |
b69f460d TF |
28 | void s3c64xx_clk_init(struct device_node *np, unsigned long xtal_f, |
29 | unsigned long xusbxti_f, bool is_s3c6400, void __iomem *reg_base); | |
30 | void s3c64xx_set_xtal_freq(unsigned long freq); | |
31 | void s3c64xx_set_xusbxti_freq(unsigned long freq); | |
32 | ||
b024043b KK |
33 | #ifdef CONFIG_CPU_S3C6400 |
34 | ||
35 | extern int s3c6400_init(void); | |
36 | extern void s3c6400_init_irq(void); | |
37 | extern void s3c6400_map_io(void); | |
b024043b KK |
38 | |
39 | #else | |
b024043b KK |
40 | #define s3c6400_map_io NULL |
41 | #define s3c6400_init NULL | |
42 | #endif | |
43 | ||
44 | #ifdef CONFIG_CPU_S3C6410 | |
45 | ||
46 | extern int s3c6410_init(void); | |
47 | extern void s3c6410_init_irq(void); | |
48 | extern void s3c6410_map_io(void); | |
b024043b KK |
49 | |
50 | #else | |
b024043b KK |
51 | #define s3c6410_map_io NULL |
52 | #define s3c6410_init NULL | |
53 | #endif | |
54 | ||
cc8f252b SG |
55 | #ifdef CONFIG_PM |
56 | int __init s3c64xx_pm_late_initcall(void); | |
57 | #else | |
58 | static inline int s3c64xx_pm_late_initcall(void) { return 0; } | |
59 | #endif | |
60 | ||
1db0287a TF |
61 | #ifdef CONFIG_S3C64XX_PL080 |
62 | extern struct pl08x_platform_data s3c64xx_dma0_plat_data; | |
63 | extern struct pl08x_platform_data s3c64xx_dma1_plat_data; | |
64 | #endif | |
65 | ||
b024043b | 66 | #endif /* __ARCH_ARM_MACH_S3C64XX_COMMON_H */ |