diff options
| author | Kukjin Kim <kgene.kim@samsung.com> | 2010-08-31 03:30:51 -0400 |
|---|---|---|
| committer | Kukjin Kim <kgene.kim@samsung.com> | 2010-10-17 21:33:34 -0400 |
| commit | 19a2c06548db1fa69c40be5bf3ad2095d6119871 (patch) | |
| tree | c08194d0121bc5dae632aeba254ef641e46015c3 | |
| parent | 13904fba37aa00867dee0b4fe13df92fed1120f9 (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.c | 37 | ||||
| -rw-r--r-- | arch/arm/mach-s5p6440/include/mach/map.h | 7 | ||||
| -rw-r--r-- | arch/arm/mach-s5p6442/cpu.c | 27 | ||||
| -rw-r--r-- | arch/arm/mach-s5p6442/include/mach/map.h | 6 | ||||
| -rw-r--r-- | arch/arm/mach-s5pc100/cpu.c | 25 | ||||
| -rw-r--r-- | arch/arm/mach-s5pc100/include/mach/map.h | 11 | ||||
| -rw-r--r-- | arch/arm/mach-s5pv210/cpu.c | 22 | ||||
| -rw-r--r-- | arch/arm/mach-s5pv210/include/mach/map.h | 8 | ||||
| -rw-r--r-- | arch/arm/mach-s5pv310/cpu.c | 26 | ||||
| -rw-r--r-- | arch/arm/plat-s5p/cpu.c | 22 |
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 | |||
| 45 | static 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 | |||
| 43 | static void s5p6440_idle(void) | 69 | static 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 | ||
| 63 | void __init s5p6440_map_io(void) | 90 | void __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 | ||
| 69 | void __init s5p6440_init_clocks(int xtal) | 98 | void __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 | ||
| 71 | void __init s5p6442_map_io(void) | 92 | void __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 | ||
