aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-s5p
diff options
context:
space:
mode:
authorKukjin Kim <kgene.kim@samsung.com>2011-12-27 02:18:36 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-01-03 05:25:04 -0500
commitcc511b8d84d88ab788cddbfe8d21485b1c387493 (patch)
tree982ddc62c44ad8c2bd2bd43fd87d0b5c61c61201 /arch/arm/plat-s5p
parent3fa754c298b7e6fcbdbe615d6b609117fa7e0de9 (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/Makefile1
-rw-r--r--arch/arm/plat-s5p/cpu.c104
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
15obj-y += dev-uart.o 15obj-y += dev-uart.o
16obj-y += cpu.o
17obj-y += clock.o 16obj-y += clock.o
18obj-y += irq.o 17obj-y += irq.o
19obj-$(CONFIG_S5P_EXT_INT) += irq-eint.o 18obj-$(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
27static const char name_exynos4210[] = "EXYNOS4210";
28static const char name_exynos4212[] = "EXYNOS4212";
29static const char name_exynos4412[] = "EXYNOS4412";
30
31static 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
61static 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
92void __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}