blob: f3a9b43cba4aa05a7215022d53f2f7bbed89d9b3 [file] [log] [blame]
Kukjin Kim95af2142011-12-22 23:28:28 +01001/*
2 * Copyright (c) 2011 Samsung Electronics Co., Ltd.
3 * http://www.samsung.com
4 *
5 * Common Header for S5P64X0 machines
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_S5P64X0_COMMON_H
13#define __ARCH_ARM_MACH_S5P64X0_COMMON_H
14
Robin Holt7b6d8642013-07-08 16:01:40 -070015#include <linux/reboot.h>
16
Kukjin Kim95af2142011-12-22 23:28:28 +010017void s5p6440_init_irq(void);
18void s5p6450_init_irq(void);
19void s5p64x0_init_io(struct map_desc *mach_desc, int size);
20
21void s5p6440_register_clocks(void);
22void s5p6440_setup_clocks(void);
23
24void s5p6450_register_clocks(void);
25void s5p6450_setup_clocks(void);
26
Robin Holt7b6d8642013-07-08 16:01:40 -070027void s5p64x0_restart(enum reboot_mode mode, const char *cmd);
Kukjin Kim73aed8b2011-12-22 23:34:25 +010028
Kukjin Kim95af2142011-12-22 23:28:28 +010029#ifdef CONFIG_CPU_S5P6440
30
31extern int s5p64x0_init(void);
32extern void s5p6440_map_io(void);
33extern void s5p6440_init_clocks(int xtal);
34
35extern void s5p6440_init_uarts(struct s3c2410_uartcfg *cfg, int no);
36
37#else
38#define s5p6440_init_clocks NULL
39#define s5p6440_init_uarts NULL
40#define s5p6440_map_io NULL
41#define s5p64x0_init NULL
42#endif
43
44#ifdef CONFIG_CPU_S5P6450
45
46extern int s5p64x0_init(void);
47extern void s5p6450_map_io(void);
48extern void s5p6450_init_clocks(int xtal);
49
50extern void s5p6450_init_uarts(struct s3c2410_uartcfg *cfg, int no);
51
52#else
53#define s5p6450_init_clocks NULL
54#define s5p6450_init_uarts NULL
55#define s5p6450_map_io NULL
56#define s5p64x0_init NULL
57#endif
58
59#endif /* __ARCH_ARM_MACH_S5P64X0_COMMON_H */