diff options
author | Kukjin Kim <kgene.kim@samsung.com> | 2010-01-28 20:12:14 -0500 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2010-02-23 20:52:15 -0500 |
commit | 5f7f6a4a0df9b43051d57fdb8ea96c083247a08f (patch) | |
tree | 8b89db3128eb45123561cd7aad172f27000ed537 /arch/arm/plat-s5p | |
parent | a0af8b3c701d254b55fc291150d5320317c0a338 (diff) |
ARM: S5P6442: Add Samsung S5P6442 CPU support
This patch adds support for Samsung S5P6442 CPU. This patch also adds
an entry for S5P6442 cpu in plat-s5p cpu table.
Signed-off-by: Adityapratap Sharma <aditya.ps@samsung.com>
Signed-off-by: Atul Dahiya <atul.dahiya@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'arch/arm/plat-s5p')
-rw-r--r-- | arch/arm/plat-s5p/cpu.c | 10 | ||||
-rw-r--r-- | arch/arm/plat-s5p/include/plat/map-s5p.h | 1 | ||||
-rw-r--r-- | arch/arm/plat-s5p/include/plat/s5p6442.h | 33 |
3 files changed, 44 insertions, 0 deletions
diff --git a/arch/arm/plat-s5p/cpu.c b/arch/arm/plat-s5p/cpu.c index ee9c6b302ded..e69992488e2e 100644 --- a/arch/arm/plat-s5p/cpu.c +++ b/arch/arm/plat-s5p/cpu.c | |||
@@ -18,10 +18,12 @@ | |||
18 | #include <mach/regs-clock.h> | 18 | #include <mach/regs-clock.h> |
19 | #include <plat/cpu.h> | 19 | #include <plat/cpu.h> |
20 | #include <plat/s5p6440.h> | 20 | #include <plat/s5p6440.h> |
21 | #include <plat/s5p6442.h> | ||
21 | 22 | ||
22 | /* table of supported CPUs */ | 23 | /* table of supported CPUs */ |
23 | 24 | ||
24 | static const char name_s5p6440[] = "S5P6440"; | 25 | static const char name_s5p6440[] = "S5P6440"; |
26 | static const char name_s5p6442[] = "S5P6442"; | ||
25 | 27 | ||
26 | static struct cpu_table cpu_ids[] __initdata = { | 28 | static struct cpu_table cpu_ids[] __initdata = { |
27 | { | 29 | { |
@@ -32,6 +34,14 @@ static struct cpu_table cpu_ids[] __initdata = { | |||
32 | .init_uarts = s5p6440_init_uarts, | 34 | .init_uarts = s5p6440_init_uarts, |
33 | .init = s5p6440_init, | 35 | .init = s5p6440_init, |
34 | .name = name_s5p6440, | 36 | .name = name_s5p6440, |
37 | }, { | ||
38 | .idcode = 0x36442000, | ||
39 | .idmask = 0xffffff00, | ||
40 | .map_io = s5p6442_map_io, | ||
41 | .init_clocks = s5p6442_init_clocks, | ||
42 | .init_uarts = s5p6442_init_uarts, | ||
43 | .init = s5p6442_init, | ||
44 | .name = name_s5p6442, | ||
35 | }, | 45 | }, |
36 | }; | 46 | }; |
37 | 47 | ||
diff --git a/arch/arm/plat-s5p/include/plat/map-s5p.h b/arch/arm/plat-s5p/include/plat/map-s5p.h index 51d9cb5a3e2b..cc60604591dc 100644 --- a/arch/arm/plat-s5p/include/plat/map-s5p.h +++ b/arch/arm/plat-s5p/include/plat/map-s5p.h | |||
@@ -28,5 +28,6 @@ | |||
28 | #define VA_VIC(x) (S3C_VA_IRQ + ((x) * 0x10000)) | 28 | #define VA_VIC(x) (S3C_VA_IRQ + ((x) * 0x10000)) |
29 | #define VA_VIC0 VA_VIC(0) | 29 | #define VA_VIC0 VA_VIC(0) |
30 | #define VA_VIC1 VA_VIC(1) | 30 | #define VA_VIC1 VA_VIC(1) |
31 | #define VA_VIC2 VA_VIC(2) | ||
31 | 32 | ||
32 | #endif /* __ASM_PLAT_MAP_S5P_H */ | 33 | #endif /* __ASM_PLAT_MAP_S5P_H */ |
diff --git a/arch/arm/plat-s5p/include/plat/s5p6442.h b/arch/arm/plat-s5p/include/plat/s5p6442.h new file mode 100644 index 000000000000..7b8801349c94 --- /dev/null +++ b/arch/arm/plat-s5p/include/plat/s5p6442.h | |||
@@ -0,0 +1,33 @@ | |||
1 | /* arch/arm/plat-s5p/include/plat/s5p6442.h | ||
2 | * | ||
3 | * Copyright (c) 2010 Samsung Electronics Co., Ltd. | ||
4 | * http://www.samsung.com/ | ||
5 | * | ||
6 | * Header file for s5p6442 cpu support | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | */ | ||
12 | |||
13 | /* Common init code for S5P6442 related SoCs */ | ||
14 | |||
15 | extern void s5p6442_common_init_uarts(struct s3c2410_uartcfg *cfg, int no); | ||
16 | extern void s5p6442_register_clocks(void); | ||
17 | extern void s5p6442_setup_clocks(void); | ||
18 | |||
19 | #ifdef CONFIG_CPU_S5P6442 | ||
20 | |||
21 | extern int s5p6442_init(void); | ||
22 | extern void s5p6442_init_irq(void); | ||
23 | extern void s5p6442_map_io(void); | ||
24 | extern void s5p6442_init_clocks(int xtal); | ||
25 | |||
26 | #define s5p6442_init_uarts s5p6442_common_init_uarts | ||
27 | |||
28 | #else | ||
29 | #define s5p6442_init_clocks NULL | ||
30 | #define s5p6442_init_uarts NULL | ||
31 | #define s5p6442_map_io NULL | ||
32 | #define s5p6442_init NULL | ||
33 | #endif | ||