aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKukjin Kim <kgene.kim@samsung.com>2010-08-31 03:30:51 -0400
committerKukjin Kim <kgene.kim@samsung.com>2010-10-17 21:33:34 -0400
commit19a2c06548db1fa69c40be5bf3ad2095d6119871 (patch)
treec08194d0121bc5dae632aeba254ef641e46015c3
parent13904fba37aa00867dee0b4fe13df92fed1120f9 (diff)
ARM: S5P: Moves initial map for merging S5P64X0
This patch moves some initial maps from plat-s5p to machine, so that can merge mach-s5p6440 and mach-s5p6450. Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
-rw-r--r--arch/arm/mach-s5p6440/cpu.c37
-rw-r--r--arch/arm/mach-s5p6440/include/mach/map.h7
-rw-r--r--arch/arm/mach-s5p6442/cpu.c27
-rw-r--r--arch/arm/mach-s5p6442/include/mach/map.h6
-rw-r--r--arch/arm/mach-s5pc100/cpu.c25
-rw-r--r--arch/arm/mach-s5pc100/include/mach/map.h11
-rw-r--r--arch/arm/mach-s5pv210/cpu.c22
-rw-r--r--arch/arm/mach-s5pv210/include/mach/map.h8
-rw-r--r--arch/arm/mach-s5pv310/cpu.c26
-rw-r--r--arch/arm/plat-s5p/cpu.c22
10 files changed, 125 insertions, 66 deletions
diff --git a/arch/arm/mach-s5p6440/cpu.c b/arch/arm/mach-s5p6440/cpu.c
index ec592e866054..8a09e0fc2730 100644
--- a/arch/arm/mach-s5p6440/cpu.c
+++ b/arch/arm/mach-s5p6440/cpu.c
@@ -1,7 +1,7 @@
1/* linux/arch/arm/mach-s5p6440/cpu.c 1/* linux/arch/arm/mach-s5p6440/cpu.c
2 * 2 *
3 * Copyright (c) 2009 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2009-2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4 * http://www.samsung.com
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify 6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as 7 * it under the terms of the GNU General Public License version 2 as
@@ -40,6 +40,32 @@
40#include <plat/s5p6440.h> 40#include <plat/s5p6440.h>
41#include <plat/adc-core.h> 41#include <plat/adc-core.h>
42 42
43/* Initial IO mappings */
44
45static struct map_desc s5p6440_iodesc[] __initdata = {
46 {
47 .virtual = (unsigned long)S5P_VA_GPIO,
48 .pfn = __phys_to_pfn(S5P6440_PA_GPIO),
49 .length = SZ_4K,
50 .type = MT_DEVICE,
51 }, {
52 .virtual = (unsigned long)VA_VIC0,
53 .pfn = __phys_to_pfn(S5P6440_PA_VIC0),
54 .length = SZ_16K,
55 .type = MT_DEVICE,
56 }, {
57 .virtual = (unsigned long)VA_VIC1,
58 .pfn = __phys_to_pfn(S5P6440_PA_VIC1),
59 .length = SZ_16K,
60 .type = MT_DEVICE,
61 }, {
62 .virtual = (unsigned long)S3C_VA_UART,
63 .pfn = __phys_to_pfn(S3C_PA_UART),
64 .length = SZ_512K,
65 .type = MT_DEVICE,
66 }
67};
68
43static void s5p6440_idle(void) 69static void s5p6440_idle(void)
44{ 70{
45 unsigned long val; 71 unsigned long val;
@@ -55,15 +81,18 @@ static void s5p6440_idle(void)
55 local_irq_enable(); 81 local_irq_enable();
56} 82}
57 83
58/* s5p6440_map_io 84/*
85 * s5p6440_map_io
59 * 86 *
60 * register the standard cpu IO areas 87 * register the standard cpu IO areas
61*/ 88 */
62 89
63void __init s5p6440_map_io(void) 90void __init s5p6440_map_io(void)
64{ 91{
65 /* initialize any device information early */ 92 /* initialize any device information early */
66 s3c_adc_setname("s3c64xx-adc"); 93 s3c_adc_setname("s3c64xx-adc");
94
95 iotable_init(s5p6440_iodesc, ARRAY_SIZE(s5p6440_iodesc));
67} 96}
68 97
69void __init s5p6440_init_clocks(int xtal) 98void __init s5p6440_init_clocks(int xtal)
diff --git a/arch/arm/mach-s5p6440/include/mach/map.h b/arch/arm/mach-s5p6440/include/mach/map.h
index 6cc5cbc88ffb..11d31fe87ccf 100644
--- a/arch/arm/mach-s5p6440/include/mach/map.h
+++ b/arch/arm/mach-s5p6440/include/mach/map.h
@@ -24,23 +24,18 @@
24#define S5P_PA_SYSCON S5P6440_PA_SYSCON 24#define S5P_PA_SYSCON S5P6440_PA_SYSCON
25 25
26#define S5P6440_PA_GPIO (0xE0308000) 26#define S5P6440_PA_GPIO (0xE0308000)
27#define S5P_PA_GPIO S5P6440_PA_GPIO
28 27
29#define S5P6440_PA_VIC0 (0xE4000000) 28#define S5P6440_PA_VIC0 (0xE4000000)
30#define S5P_PA_VIC0 S5P6440_PA_VIC0 29#define S5P6440_PA_VIC1 (0xE4100000)
31 30
32#define S5P6440_PA_PDMA 0xE9000000 31#define S5P6440_PA_PDMA 0xE9000000
33 32
34#define S5P6440_PA_VIC1 (0xE4100000)
35#define S5P_PA_VIC1 S5P6440_PA_VIC1
36
37#define S5P6440_PA_TIMER (0xEA000000) 33#define S5P6440_PA_TIMER (0xEA000000)
38#define S5P_PA_TIMER S5P6440_PA_TIMER 34#define S5P_PA_TIMER S5P6440_PA_TIMER
39 35
40#define S5P6440_PA_RTC (0xEA100000) 36#define S5P6440_PA_RTC (0xEA100000)
41 37
42#define S5P6440_PA_WDT (0xEA200000) 38#define S5P6440_PA_WDT (0xEA200000)
43#define S5P_PA_WDT S5P6440_PA_WDT
44 39
45#define S5P6440_PA_UART (0xEC000000) 40#define S5P6440_PA_UART (0xEC000000)
46 41
diff --git a/arch/arm/mach-s5p6442/cpu.c b/arch/arm/mach-s5p6442/cpu.c
index 70ac681af72b..842af86bda6d 100644
--- a/arch/arm/mach-s5p6442/cpu.c
+++ b/arch/arm/mach-s5p6442/cpu.c
@@ -1,7 +1,7 @@
1/* linux/arch/arm/mach-s5p6442/cpu.c 1/* linux/arch/arm/mach-s5p6442/cpu.c
2 * 2 *
3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd.
4 * http://www.samsung.com/ 4 * http://www.samsung.com
5 * 5 *
6 * This program is free software; you can redistribute it and/or modify 6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as 7 * it under the terms of the GNU General Public License version 2 as
@@ -48,10 +48,30 @@ static struct map_desc s5p6442_iodesc[] __initdata = {
48 .length = SZ_16K, 48 .length = SZ_16K,
49 .type = MT_DEVICE, 49 .type = MT_DEVICE,
50 }, { 50 }, {
51 .virtual = (unsigned long)S5P_VA_GPIO,
52 .pfn = __phys_to_pfn(S5P6442_PA_GPIO),
53 .length = SZ_4K,
54 .type = MT_DEVICE,
55 }, {
56 .virtual = (unsigned long)VA_VIC0,
57 .pfn = __phys_to_pfn(S5P6442_PA_VIC0),
58 .length = SZ_16K,
59 .type = MT_DEVICE,
60 }, {
61 .virtual = (unsigned long)VA_VIC1,
62 .pfn = __phys_to_pfn(S5P6442_PA_VIC1),
63 .length = SZ_16K,
64 .type = MT_DEVICE,
65 }, {
51 .virtual = (unsigned long)VA_VIC2, 66 .virtual = (unsigned long)VA_VIC2,
52 .pfn = __phys_to_pfn(S5P6442_PA_VIC2), 67 .pfn = __phys_to_pfn(S5P6442_PA_VIC2),
53 .length = SZ_16K, 68 .length = SZ_16K,
54 .type = MT_DEVICE, 69 .type = MT_DEVICE,
70 }, {
71 .virtual = (unsigned long)S3C_VA_UART,
72 .pfn = __phys_to_pfn(S3C_PA_UART),
73 .length = SZ_512K,
74 .type = MT_DEVICE,
55 } 75 }
56}; 76};
57 77
@@ -63,10 +83,11 @@ static void s5p6442_idle(void)
63 local_irq_enable(); 83 local_irq_enable();
64} 84}
65 85
66/* s5p6442_map_io 86/*
87 * s5p6442_map_io
67 * 88 *
68 * register the standard cpu IO areas 89 * register the standard cpu IO areas
69*/ 90 */
70 91
71void __init s5p6442_map_io(void) 92void __init s5p6442_map_io(void)
72{ 93{
diff --git a/arch/arm/mach-s5p6442/include/mach/map.h b/arch/arm/mach-s5p6442/include/mach/map.h
index 281d256faafb..31fb2e68d527 100644
--- a/arch/arm/mach-s5p6442/include/mach/map.h
+++ b/arch/arm/mach-s5p6442/include/mach/map.h
@@ -23,16 +23,10 @@
23#define S5P_PA_SYSCON S5P6442_PA_SYSCON 23#define S5P_PA_SYSCON S5P6442_PA_SYSCON
24 24