diff options
author | Kukjin Kim <kgene.kim@samsung.com> | 2011-12-27 02:18:36 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2012-01-03 05:25:04 -0500 |
commit | cc511b8d84d88ab788cddbfe8d21485b1c387493 (patch) | |
tree | 982ddc62c44ad8c2bd2bd43fd87d0b5c61c61201 /arch/arm/plat-s5p | |
parent | 3fa754c298b7e6fcbdbe615d6b609117fa7e0de9 (diff) |
ARM: 7257/1: EXYNOS: introduce arch/arm/mach-exynos/common.[ch]
This patch introduces common.[ch] which are used only in the
arch/arm/mach-exynos/ directory. The common.c file merges
the cpu.c, init.c, irq-combiner.c and irq-eint.c files which
are used commonly on EXYNOS SoCs and the common.h file replaces
with plat/exynos4.h file.
Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/plat-s5p')
-rw-r--r-- | arch/arm/plat-s5p/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/plat-s5p/cpu.c | 104 |
2 files changed, 0 insertions, 105 deletions
diff --git a/arch/arm/plat-s5p/Makefile b/arch/arm/plat-s5p/Makefile index 876344038b8d..30d8c3016e6b 100644 --- a/arch/arm/plat-s5p/Makefile +++ b/arch/arm/plat-s5p/Makefile | |||
@@ -13,7 +13,6 @@ obj- := | |||
13 | # Core files | 13 | # Core files |
14 | 14 | ||
15 | obj-y += dev-uart.o | 15 | obj-y += dev-uart.o |
16 | obj-y += cpu.o | ||
17 | obj-y += clock.o | 16 | obj-y += clock.o |
18 | obj-y += irq.o | 17 | obj-y += irq.o |
19 | obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o | 18 | obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o |
diff --git a/arch/arm/plat-s5p/cpu.c b/arch/arm/plat-s5p/cpu.c deleted file mode 100644 index 63c3fadf64ef..000000000000 --- a/arch/arm/plat-s5p/cpu.c +++ /dev/null | |||
@@ -1,104 +0,0 @@ | |||
1 | /* linux/arch/arm/plat-s5p/cpu.c | ||
2 | * | ||
3 | * Copyright (c) 2009-2011 Samsung Electronics Co., Ltd. | ||
4 | * http://www.samsung.com | ||
5 | * | ||
6 | * S5P 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 | #include <linux/init.h> | ||
14 | #include <linux/module.h> | ||
15 | |||
16 | #include <asm/mach/arch.h> | ||
17 | #include <asm/mach/map.h> | ||
18 | |||
19 | #include <mach/map.h> | ||
20 | #include <mach/regs-clock.h> | ||
21 | |||
22 | #include <plat/cpu.h> | ||
23 | #include <plat/exynos4.h> | ||
24 | |||
25 | /* table of supported CPUs */ | ||
26 | |||
27 | static const char name_exynos4210[] = "EXYNOS4210"; | ||
28 | static const char name_exynos4212[] = "EXYNOS4212"; | ||
29 | static const char name_exynos4412[] = "EXYNOS4412"; | ||
30 | |||
31 | static struct cpu_table cpu_ids[] __initdata = { | ||
32 | { | ||
33 | .idcode = EXYNOS4210_CPU_ID, | ||
34 | .idmask = EXYNOS4_CPU_MASK, | ||
35 | .map_io = exynos4_map_io, | ||
36 | .init_clocks = exynos4_init_clocks, | ||
37 | .init_uarts = exynos4_init_uarts, | ||
38 | .init = exynos_init, | ||
39 | .name = name_exynos4210, | ||
40 | }, { | ||
41 | .idcode = EXYNOS4212_CPU_ID, | ||
42 | .idmask = EXYNOS4_CPU_MASK, | ||
43 | .map_io = exynos4_map_io, | ||
44 | .init_clocks = exynos4_init_clocks, | ||
45 | .init_uarts = exynos4_init_uarts, | ||
46 | .init = exynos_init, | ||
47 | .name = name_exynos4212, | ||
48 | }, { | ||
49 | .idcode = EXYNOS4412_CPU_ID, | ||
50 | .idmask = EXYNOS4_CPU_MASK, | ||
51 | .map_io = exynos4_map_io, | ||
52 | .init_clocks = exynos4_init_clocks, | ||
53 | .init_uarts = exynos4_init_uarts, | ||
54 | .init = exynos_init, | ||
55 | .name = name_exynos4412, | ||
56 | }, | ||
57 | }; | ||
58 | |||
59 | /* minimal IO mapping */ | ||
60 | |||
61 | static struct map_desc s5p_iodesc[] __initdata = { | ||
62 | { | ||
63 | .virtual = (unsigned long)S5P_VA_CHIPID, | ||
64 | .pfn = __phys_to_pfn(S5P_PA_CHIPID), | ||
65 | .length = SZ_4K, | ||
66 | .type = MT_DEVICE, | ||
67 | }, { | ||
68 | .virtual = (unsigned long)S3C_VA_SYS, | ||
69 | .pfn = __phys_to_pfn(S5P_PA_SYSCON), | ||
70 | .length = SZ_64K, | ||
71 | .type = MT_DEVICE, | ||
72 | }, { | ||
73 | .virtual = (unsigned long)S3C_VA_TIMER, | ||
74 | .pfn = __phys_to_pfn(S5P_PA_TIMER), | ||
75 | .length = SZ_16K, | ||
76 | .type = MT_DEVICE, | ||
77 | }, { | ||
78 | .virtual = (unsigned long)S3C_VA_WATCHDOG, | ||
79 | .pfn = __phys_to_pfn(S3C_PA_WDT), | ||
80 | .length = SZ_4K, | ||
81 | .type = MT_DEVICE, | ||
82 | }, { | ||
83 | .virtual = (unsigned long)S5P_VA_SROMC, | ||
84 | .pfn = __phys_to_pfn(S5P_PA_SROMC), | ||
85 | .length = SZ_4K, | ||
86 | .type = MT_DEVICE, | ||
87 | }, | ||
88 | }; | ||
89 | |||
90 | /* read cpu identification code */ | ||
91 | |||
92 | void __init s5p_init_io(struct map_desc *mach_desc, | ||
93 | int size, void __iomem *cpuid_addr) | ||
94 | { | ||
95 | /* initialize the io descriptors we need for initialization */ | ||
96 | iotable_init(s5p_iodesc, ARRAY_SIZE(s5p_iodesc)); | ||
97 | if (mach_desc) | ||
98 | iotable_init(mach_desc, size); | ||
99 | |||
100 | /* detect cpu id and rev. */ | ||
101 | s5p_init_cpu(cpuid_addr); | ||
102 | |||
103 | s3c_init_cpu(samsung_cpu_id, cpu_ids, ARRAY_SIZE(cpu_ids)); | ||
104 | } | ||