diff options
Diffstat (limited to 'arch/arm/mach-s3c2410')
34 files changed, 90 insertions, 107 deletions
diff --git a/arch/arm/mach-s3c2410/Kconfig b/arch/arm/mach-s3c2410/Kconfig index 9f46bf330bc8..eb4ec411312b 100644 --- a/arch/arm/mach-s3c2410/Kconfig +++ b/arch/arm/mach-s3c2410/Kconfig | |||
@@ -5,6 +5,7 @@ menu "S3C24XX Implementations" | |||
5 | config MACH_AML_M5900 | 5 | config MACH_AML_M5900 |
6 | bool "AML M5900 Series" | 6 | bool "AML M5900 Series" |
7 | select CPU_S3C2410 | 7 | select CPU_S3C2410 |
8 | select PM_SIMTEC if PM | ||
8 | help | 9 | help |
9 | Say Y here if you are using the American Microsystems M5900 Series | 10 | Say Y here if you are using the American Microsystems M5900 Series |
10 | <http://www.amltd.com> | 11 | <http://www.amltd.com> |
@@ -12,6 +13,7 @@ config MACH_AML_M5900 | |||
12 | config MACH_ANUBIS | 13 | config MACH_ANUBIS |
13 | bool "Simtec Electronics ANUBIS" | 14 | bool "Simtec Electronics ANUBIS" |
14 | select CPU_S3C2440 | 15 | select CPU_S3C2440 |
16 | select PM_SIMTEC if PM | ||
15 | help | 17 | help |
16 | Say Y here if you are using the Simtec Electronics ANUBIS | 18 | Say Y here if you are using the Simtec Electronics ANUBIS |
17 | development system | 19 | development system |
@@ -19,6 +21,7 @@ config MACH_ANUBIS | |||
19 | config MACH_OSIRIS | 21 | config MACH_OSIRIS |
20 | bool "Simtec IM2440D20 (OSIRIS) module" | 22 | bool "Simtec IM2440D20 (OSIRIS) module" |
21 | select CPU_S3C2440 | 23 | select CPU_S3C2440 |
24 | select PM_SIMTEC if PM | ||
22 | help | 25 | help |
23 | Say Y here if you are using the Simtec IM2440D20 module, also | 26 | Say Y here if you are using the Simtec IM2440D20 module, also |
24 | known as the Osiris. | 27 | known as the Osiris. |
@@ -26,6 +29,7 @@ config MACH_OSIRIS | |||
26 | config ARCH_BAST | 29 | config ARCH_BAST |
27 | bool "Simtec Electronics BAST (EB2410ITX)" | 30 | bool "Simtec Electronics BAST (EB2410ITX)" |
28 | select CPU_S3C2410 | 31 | select CPU_S3C2410 |
32 | select PM_SIMTEC if PM | ||
29 | select ISA | 33 | select ISA |
30 | help | 34 | help |
31 | Say Y here if you are using the Simtec Electronics EB2410ITX | 35 | Say Y here if you are using the Simtec Electronics EB2410ITX |
@@ -43,14 +47,13 @@ config BAST_PC104_IRQ | |||
43 | 47 | ||
44 | config PM_H1940 | 48 | config PM_H1940 |
45 | bool | 49 | bool |
46 | depends on PM | ||
47 | help | 50 | help |
48 | Internal node for H1940 and related PM | 51 | Internal node for H1940 and related PM |
49 | 52 | ||
50 | config ARCH_H1940 | 53 | config ARCH_H1940 |
51 | bool "IPAQ H1940" | 54 | bool "IPAQ H1940" |
52 | select CPU_S3C2410 | 55 | select CPU_S3C2410 |
53 | select PM_H1940 | 56 | select PM_H1940 if PM |
54 | help | 57 | help |
55 | Say Y here if you are using the HP IPAQ H1940 | 58 | Say Y here if you are using the HP IPAQ H1940 |
56 | 59 | ||
@@ -112,6 +115,7 @@ config MACH_SMDK2413 | |||
112 | 115 | ||
113 | config MACH_VR1000 | 116 | config MACH_VR1000 |
114 | bool "Thorcom VR1000" | 117 | bool "Thorcom VR1000" |
118 | select PM_SIMTEC if PM | ||
115 | select CPU_S3C2410 | 119 | select CPU_S3C2410 |
116 | help | 120 | help |
117 | Say Y here if you are using the Thorcom VR1000 board. | 121 | Say Y here if you are using the Thorcom VR1000 board. |
@@ -122,7 +126,7 @@ config MACH_VR1000 | |||
122 | config MACH_RX3715 | 126 | config MACH_RX3715 |
123 | bool "HP iPAQ rx3715" | 127 | bool "HP iPAQ rx3715" |
124 | select CPU_S3C2440 | 128 | select CPU_S3C2440 |
125 | select PM_H1940 | 129 | select PM_H1940 if PM |
126 | help | 130 | help |
127 | Say Y here if you are using the HP iPAQ rx3715. | 131 | Say Y here if you are using the HP iPAQ rx3715. |
128 | 132 | ||
@@ -156,7 +160,6 @@ config S3C2410_CLOCK | |||
156 | 160 | ||
157 | config S3C2410_PM | 161 | config S3C2410_PM |
158 | bool | 162 | bool |
159 | depends on CONFIG_PM | ||
160 | help | 163 | help |
161 | Power Management code common to S3C2410 and better | 164 | Power Management code common to S3C2410 and better |
162 | 165 | ||
@@ -171,7 +174,7 @@ config CPU_S3C2410 | |||
171 | bool | 174 | bool |
172 | depends on ARCH_S3C2410 | 175 | depends on ARCH_S3C2410 |
173 | select S3C2410_CLOCK | 176 | select S3C2410_CLOCK |
174 | select S3C2410_PM | 177 | select S3C2410_PM if PM |
175 | help | 178 | help |
176 | Support for S3C2410 and S3C2410A family from the S3C24XX line | 179 | Support for S3C2410 and S3C2410A family from the S3C24XX line |
177 | of Samsung Mobile CPUs. | 180 | of Samsung Mobile CPUs. |
@@ -186,14 +189,13 @@ config CPU_S3C2412_ONLY | |||
186 | 189 | ||
187 | config S3C2412_PM | 190 | config S3C2412_PM |
188 | bool | 191 | bool |
189 | default y if PM | ||
190 | depends on CPU_S3C2412 | ||
191 | help | 192 | help |
192 | Internal config node to apply S3C2412 power management | 193 | Internal config node to apply S3C2412 power management |
193 | 194 | ||
194 | config CPU_S3C2412 | 195 | config CPU_S3C2412 |
195 | bool | 196 | bool |
196 | depends on ARCH_S3C2410 | 197 | depends on ARCH_S3C2410 |
198 | select S3C2412_PM if PM | ||
197 | help | 199 | help |
198 | Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line | 200 | Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line |
199 | 201 | ||
@@ -207,7 +209,7 @@ config CPU_S3C2440 | |||
207 | bool | 209 | bool |
208 | depends on ARCH_S3C2410 | 210 | depends on ARCH_S3C2410 |
209 | select S3C2410_CLOCK | 211 | select S3C2410_CLOCK |
210 | select S3C2410_PM | 212 | select S3C2410_PM if PM |
211 | select CPU_S3C244X | 213 | select CPU_S3C244X |
212 | help | 214 | help |
213 | Support for S3C2440 Samsung Mobile CPU based systems. | 215 | Support for S3C2440 Samsung Mobile CPU based systems. |
@@ -216,7 +218,7 @@ config CPU_S3C2442 | |||
216 | bool | 218 | bool |
217 | depends on ARCH_S3C2420 | 219 | depends on ARCH_S3C2420 |
218 | select S3C2410_CLOCK | 220 | select S3C2410_CLOCK |
219 | select S3C2410_PM | 221 | select S3C2410_PM if PM |
220 | select CPU_S3C244X | 222 | select CPU_S3C244X |
221 | help | 223 | help |
222 | Support for S3C2442 Samsung Mobile CPU based systems. | 224 | Support for S3C2442 Samsung Mobile CPU based systems. |
@@ -300,8 +302,9 @@ config S3C2410_PM_CHECK_CHUNKSIZE | |||
300 | 302 | ||
301 | config PM_SIMTEC | 303 | config PM_SIMTEC |
302 | bool | 304 | bool |
303 | depends on PM && (ARCH_BAST || MACH_VR1000 || MACH_AML_M5900) | 305 | help |
304 | default y | 306 | Common power management code for systems that are |
307 | compatible with the Simtec style of power management | ||
305 | 308 | ||
306 | config S3C2410_LOWLEVEL_UART_PORT | 309 | config S3C2410_LOWLEVEL_UART_PORT |
307 | int "S3C2410 UART to use for low-level messages" | 310 | int "S3C2410 UART to use for low-level messages" |
diff --git a/arch/arm/mach-s3c2410/cpu.c b/arch/arm/mach-s3c2410/cpu.c index 9d4899eddf1f..ae1f5bb63f7a 100644 --- a/arch/arm/mach-s3c2410/cpu.c +++ b/arch/arm/mach-s3c2410/cpu.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <linux/module.h> | 26 | #include <linux/module.h> |
27 | #include <linux/interrupt.h> | 27 | #include <linux/interrupt.h> |
28 | #include <linux/ioport.h> | 28 | #include <linux/ioport.h> |
29 | #include <linux/serial_core.h> | ||
29 | #include <linux/platform_device.h> | 30 | #include <linux/platform_device.h> |
30 | 31 | ||
31 | #include <asm/hardware.h> | 32 | #include <asm/hardware.h> |
diff --git a/arch/arm/mach-s3c2410/devs.c b/arch/arm/mach-s3c2410/devs.c index cae35ff76f33..faccde2092d2 100644 --- a/arch/arm/mach-s3c2410/devs.c +++ b/arch/arm/mach-s3c2410/devs.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/list.h> | 17 | #include <linux/list.h> |
18 | #include <linux/timer.h> | 18 | #include <linux/timer.h> |
19 | #include <linux/init.h> | 19 | #include <linux/init.h> |
20 | #include <linux/serial_core.h> | ||
20 | #include <linux/platform_device.h> | 21 | #include <linux/platform_device.h> |
21 | 22 | ||
22 | #include <asm/mach/arch.h> | 23 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-s3c2410/dma.c b/arch/arm/mach-s3c2410/dma.c index 01abb0ace234..fa860e716b4f 100644 --- a/arch/arm/mach-s3c2410/dma.c +++ b/arch/arm/mach-s3c2410/dma.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* linux/arch/arm/mach-s3c2410/dma.c | 1 | /* linux/arch/arm/mach-s3c2410/dma.c |
2 | * | 2 | * |
3 | * (c) 2003-2005,2006 Simtec Electronics | 3 | * Copyright (c) 2003-2005,2006 Simtec Electronics |
4 | * Ben Dooks <ben@simtec.co.uk> | 4 | * Ben Dooks <ben@simtec.co.uk> |
5 | * | 5 | * |
6 | * S3C2410 DMA core | 6 | * S3C2410 DMA core |
@@ -1053,11 +1053,11 @@ int s3c2410_dma_config(dmach_t channel, | |||
1053 | if (chan == NULL) | 1053 | if (chan == NULL) |
1054 | return -EINVAL; | 1054 | return -EINVAL; |
1055 | 1055 | ||
1056 | printk("Initial dcon is %08x\n", dcon); | 1056 | pr_debug("%s: Initial dcon is %08x\n", __FUNCTION__, dcon); |
1057 | 1057 | ||
1058 | dcon |= chan->dcon & dma_sel.dcon_mask; | 1058 | dcon |= chan->dcon & dma_sel.dcon_mask; |
1059 | 1059 | ||
1060 | printk("New dcon is %08x\n", dcon); | 1060 | pr_debug("%s: New dcon is %08x\n", __FUNCTION__, dcon); |
1061 | 1061 | ||
1062 | switch (xferunit) { | 1062 | switch (xferunit) { |
1063 | case 1: | 1063 | case 1: |
diff --git a/arch/arm/mach-s3c2410/irq.h b/arch/arm/mach-s3c2410/irq.h index 3686a0082245..e5913da3b919 100644 --- a/arch/arm/mach-s3c2410/irq.h +++ b/arch/arm/mach-s3c2410/irq.h | |||
@@ -8,8 +8,6 @@ | |||
8 | * This program is free software; you can redistribute it and/or modify | 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 | 9 | * it under the terms of the GNU General Public License version 2 as |
10 | * published by the Free Software Foundation. | 10 | * published by the Free Software Foundation. |
11 | * | ||
12 | * Modifications: | ||
13 | */ | 11 | */ |
14 | 12 | ||
15 | #define irqdbf(x...) | 13 | #define irqdbf(x...) |
diff --git a/arch/arm/mach-s3c2410/mach-anubis.c b/arch/arm/mach-s3c2410/mach-anubis.c index e94cdcd96591..0fad0c2fe07b 100644 --- a/arch/arm/mach-s3c2410/mach-anubis.c +++ b/arch/arm/mach-s3c2410/mach-anubis.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/list.h> | 15 | #include <linux/list.h> |
16 | #include <linux/timer.h> | 16 | #include <linux/timer.h> |
17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
18 | #include <linux/serial_core.h> | ||
18 | #include <linux/platform_device.h> | 19 | #include <linux/platform_device.h> |
19 | 20 | ||
20 | #include <asm/mach/arch.h> | 21 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-s3c2410/mach-bast.c b/arch/arm/mach-s3c2410/mach-bast.c index 2968fb235f95..b8b76757ec54 100644 --- a/arch/arm/mach-s3c2410/mach-bast.c +++ b/arch/arm/mach-s3c2410/mach-bast.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/list.h> | 16 | #include <linux/list.h> |
17 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/serial_core.h> | ||
19 | #include <linux/platform_device.h> | 20 | #include <linux/platform_device.h> |
20 | #include <linux/dm9000.h> | 21 | #include <linux/dm9000.h> |
21 | 22 | ||
diff --git a/arch/arm/mach-s3c2410/mach-h1940.c b/arch/arm/mach-s3c2410/mach-h1940.c index f5b98099a5d9..15b625eae499 100644 --- a/arch/arm/mach-s3c2410/mach-h1940.c +++ b/arch/arm/mach-s3c2410/mach-h1940.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/list.h> | 17 | #include <linux/list.h> |
18 | #include <linux/timer.h> | 18 | #include <linux/timer.h> |
19 | #include <linux/init.h> | 19 | #include <linux/init.h> |
20 | #include <linux/serial_core.h> | ||
20 | #include <linux/platform_device.h> | 21 | #include <linux/platform_device.h> |
21 | 22 | ||
22 | #include <asm/mach/arch.h> | 23 | #include <asm/mach/arch.h> |
@@ -37,8 +38,6 @@ | |||
37 | #include <asm/arch/h1940-latch.h> | 38 | #include <asm/arch/h1940-latch.h> |
38 | #include <asm/arch/fb.h> | 39 | #include <asm/arch/fb.h> |
39 | 40 | ||
40 | #include <linux/serial_core.h> | ||
41 | |||
42 | #include "clock.h" | 41 | #include "clock.h" |
43 | #include "devs.h" | 42 | #include "devs.h" |
44 | #include "cpu.h" | 43 | #include "cpu.h" |
diff --git a/arch/arm/mach-s3c2410/mach-n30.c b/arch/arm/mach-s3c2410/mach-n30.c index 116ac3169966..0411e9adb54d 100644 --- a/arch/arm/mach-s3c2410/mach-n30.c +++ b/arch/arm/mach-s3c2410/mach-n30.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/timer.h> | 20 | #include <linux/timer.h> |
21 | #include <linux/init.h> | 21 | #include <linux/init.h> |
22 | #include <linux/delay.h> | 22 | #include <linux/delay.h> |
23 | #include <linux/serial_core.h> | ||
23 | #include <linux/platform_device.h> | 24 | #include <linux/platform_device.h> |
24 | #include <linux/kthread.h> | 25 | #include <linux/kthread.h> |
25 | 26 | ||
@@ -37,8 +38,6 @@ | |||
37 | #include <asm/arch/regs-gpio.h> | 38 | #include <asm/arch/regs-gpio.h> |
38 | #include <asm/arch/iic.h> | 39 | #include <asm/arch/iic.h> |
39 | 40 | ||
40 | #include <linux/serial_core.h> | ||
41 | |||
42 | #include "s3c2410.h" | 41 | #include "s3c2410.h" |
43 | #include "clock.h" | 42 | #include "clock.h" |
44 | #include "devs.h" | 43 | #include "devs.h" |
diff --git a/arch/arm/mach-s3c2410/mach-nexcoder.c b/arch/arm/mach-s3c2410/mach-nexcoder.c index 065a1d4e860b..d6dfdad8c90b 100644 --- a/arch/arm/mach-s3c2410/mach-nexcoder.c +++ b/arch/arm/mach-s3c2410/mach-nexcoder.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/timer.h> | 19 | #include <linux/timer.h> |
20 | #include <linux/init.h> | 20 | #include <linux/init.h> |
21 | #include <linux/string.h> | 21 | #include <linux/string.h> |
22 | #include <linux/serial_core.h> | ||
22 | #include <linux/platform_device.h> | 23 | #include <linux/platform_device.h> |
23 | 24 | ||
24 | #include <linux/mtd/map.h> | 25 | #include <linux/mtd/map.h> |
diff --git a/arch/arm/mach-s3c2410/mach-osiris.c b/arch/arm/mach-s3c2410/mach-osiris.c index a4ab144e7292..37b40850c9b9 100644 --- a/arch/arm/mach-s3c2410/mach-osiris.c +++ b/arch/arm/mach-s3c2410/mach-osiris.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/timer.h> | 16 | #include <linux/timer.h> |
17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
18 | #include <linux/device.h> | 18 | #include <linux/device.h> |
19 | #include <linux/serial_core.h> | ||
19 | 20 | ||
20 | #include <asm/mach/arch.h> | 21 | #include <asm/mach/arch.h> |
21 | #include <asm/mach/map.h> | 22 | #include <asm/mach/map.h> |
diff --git a/arch/arm/mach-s3c2410/mach-otom.c b/arch/arm/mach-s3c2410/mach-otom.c index c71673fd9955..2c738b375e4d 100644 --- a/arch/arm/mach-s3c2410/mach-otom.c +++ b/arch/arm/mach-s3c2410/mach-otom.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/list.h> | 15 | #include <linux/list.h> |
16 | #include <linux/timer.h> | 16 | #include <linux/timer.h> |
17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
18 | #include <linux/serial_core.h> | ||
18 | #include <linux/platform_device.h> | 19 | #include <linux/platform_device.h> |
19 | 20 | ||
20 | #include <asm/mach/arch.h> | 21 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-s3c2410/mach-smdk2410.c b/arch/arm/mach-s3c2410/mach-smdk2410.c index b3b0171d5052..01c0c986d827 100644 --- a/arch/arm/mach-s3c2410/mach-smdk2410.c +++ b/arch/arm/mach-s3c2410/mach-smdk2410.c | |||
@@ -35,6 +35,7 @@ | |||
35 | #include <linux/list.h> | 35 | #include <linux/list.h> |
36 | #include <linux/timer.h> | 36 | #include <linux/timer.h> |
37 | #include <linux/init.h> | 37 | #include <linux/init.h> |
38 | #include <linux/serial_core.h> | ||
38 | #include <linux/platform_device.h> | 39 | #include <linux/platform_device.h> |
39 | 40 | ||
40 | #include <asm/mach/arch.h> | 41 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-s3c2410/mach-smdk2413.c b/arch/arm/mach-s3c2410/mach-smdk2413.c index 3a4ca7f6f7b9..4f89abd7a6df 100644 --- a/arch/arm/mach-s3c2410/mach-smdk2413.c +++ b/arch/arm/mach-s3c2410/mach-smdk2413.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/list.h> | 17 | #include <linux/list.h> |
18 | #include <linux/timer.h> | 18 | #include <linux/timer.h> |
19 | #include <linux/init.h> | 19 | #include <linux/init.h> |
20 | #include <linux/serial_core.h> | ||
20 | #include <linux/platform_device.h> | 21 | #include <linux/platform_device.h> |
21 | 22 | ||
22 | #include <asm/mach/arch.h> | 23 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-s3c2410/mach-smdk2440.c b/arch/arm/mach-s3c2410/mach-smdk2440.c index e2205ff1b0ee..2b61f4ed1da4 100644 --- a/arch/arm/mach-s3c2410/mach-smdk2440.c +++ b/arch/arm/mach-s3c2410/mach-smdk2440.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/list.h> | 19 | #include <linux/list.h> |
20 | #include <linux/timer.h> | 20 | #include <linux/timer.h> |
21 | #include <linux/init.h> | 21 | #include <linux/init.h> |
22 | #include <linux/serial_core.h> | ||
22 | #include <linux/platform_device.h> | 23 | #include <linux/platform_device.h> |
23 | 24 | ||
24 | #include <asm/mach/arch.h> | 25 | #include <asm/mach/arch.h> |
diff --git a/arch/arm/mach-s3c2410/mach-vr1000.c b/arch/arm/mach-s3c2410/mach-vr1000.c index e2eda3937ab0..a382fc095110 100644 --- a/arch/arm/mach-s3c2410/mach-vr1000.c +++ b/arch/arm/mach-s3c2410/mach-vr1000.c | |||
@@ -352,7 +352,7 @@ static struct platform_device vr1000_led2 = { | |||
352 | 352 | ||
353 | static struct platform_device vr1000_led3 = { | 353 | static struct platform_device vr1000_led3 = { |
354 | .name = "s3c24xx_led", | 354 | .name = "s3c24xx_led", |
355 | .id = 1, | 355 | .id = 3, |
356 | .dev = { | 356 | .dev = { |
357 | .platform_data = &vr1000_led3_pdata, | 357 | .platform_data = &vr1000_led3_pdata, |
358 | }, | 358 | }, |
diff --git a/arch/arm/mach-s3c2410/mach-vstms.c b/arch/arm/mach-s3c2410/mach-vstms.c index ea554e7c006e..0360e1055bcd 100644 --- a/arch/arm/mach-s3c2410/mach-vstms.c +++ b/arch/arm/mach-s3c2410/mach-vstms.c | |||
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/list.h> | 15 | #include <linux/list.h> |
16 | #include <linux/timer.h> | 16 | #include <linux/timer.h> |
17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
18 | #include <linux/serial_core.h> | ||
18 | #include <linux/platform_device.h> | 19 | #include <linux/platform_device.h> |
19 | 20 | ||
20 | #include <linux/mtd/mtd.h> | 21 | #include <linux/mtd/mtd.h> |
diff --git a/arch/arm/mach-s3c2410/pm-simtec.c b/arch/arm/mach-s3c2410/pm-simtec.c index 42cd05e298f8..619133eb7168 100644 --- a/arch/arm/mach-s3c2410/pm-simtec.c +++ b/arch/arm/mach-s3c2410/pm-simtec.c | |||
@@ -27,7 +27,6 @@ | |||
27 | #include <asm/io.h> | 27 | #include <asm/io.h> |
28 | 28 | ||
29 | #include <asm/arch/map.h> | 29 | #include <asm/arch/map.h> |
30 | #include <asm/arch/regs-serial.h> | ||
31 | #include <asm/arch/regs-gpio.h> | 30 | #include <asm/arch/regs-gpio.h> |
32 | #include <asm/arch/regs-mem.h> | 31 | #include <asm/arch/regs-mem.h> |
33 | 32 | ||
diff --git a/arch/arm/mach-s3c2410/pm.c b/arch/arm/mach-s3c2410/pm.c index b49a0b3b72b3..00834097eb82 100644 --- a/arch/arm/mach-s3c2410/pm.c +++ b/arch/arm/mach-s3c2410/pm.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <linux/crc32.h> | 34 | #include <linux/crc32.h> |
35 | #include <linux/ioport.h> | 35 | #include <linux/ioport.h> |
36 | #include <linux/delay.h> | 36 | #include <linux/delay.h> |
37 | #include <linux/serial_core.h> | ||
37 | 38 | ||
38 | #include <asm/cacheflush.h> | 39 | #include <asm/cacheflush.h> |
39 | #include <asm/hardware.h> | 40 | #include <asm/hardware.h> |
diff --git a/arch/arm/mach-s3c2410/s3c2410-clock.c b/arch/arm/mach-s3c2410/s3c2410-clock.c index 00abe199a08e..992cc6af230e 100644 --- a/arch/arm/mach-s3c2410/s3c2410-clock.c +++ b/arch/arm/mach-s3c2410/s3c2410-clock.c | |||
@@ -30,13 +30,18 @@ | |||
30 | #include <linux/clk.h> | 30 | #include <linux/clk.h> |
31 | #include <linux/mutex.h> | 31 | #include <linux/mutex.h> |
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/serial_core.h> | ||
34 | |||
35 | #include <asm/mach/map.h> | ||
33 | 36 | ||
34 | #include <asm/hardware.h> | 37 | #include <asm/hardware.h> |
35 | #include <asm/io.h> | 38 | #include <asm/io.h> |
36 | 39 | ||
40 | #include <asm/arch/regs-serial.h> | ||
37 | #include <asm/arch/regs-clock.h> | 41 | #include <asm/arch/regs-clock.h> |
38 | #include <asm/arch/regs-gpio.h> | 42 | #include <asm/arch/regs-gpio.h> |
39 | 43 | ||
44 | #include "s3c2410.h" | ||
40 | #include "clock.h" | 45 | #include "clock.h" |
41 | #include "cpu.h" | 46 | #include "cpu.h" |
42 | 47 | ||
diff --git a/arch/arm/mach-s3c2410/s3c2410-dma.c b/arch/arm/mach-s3c2410/s3c2410-dma.c index 51e5098b32e8..e67ba3911f11 100644 --- a/arch/arm/mach-s3c2410/s3c2410-dma.c +++ b/arch/arm/mach-s3c2410/s3c2410-dma.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* linux/arch/arm/mach-s3c2410/s3c2410-dma.c | 1 | /* linux/arch/arm/mach-s3c2410/s3c2410-dma.c |
2 | * | 2 | * |
3 | * (c) 2006 Simtec Electronics | 3 | * Copyright (c) 2006 Simtec Electronics |
4 | * Ben Dooks <ben@simtec.co.uk> | 4 | * Ben Dooks <ben@simtec.co.uk> |
5 | * | 5 | * |
6 | * S3C2410 DMA selection | 6 | * S3C2410 DMA selection |
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/sysdev.h> | 17 | #include <linux/sysdev.h> |
18 | #include <linux/serial_core.h> | ||
18 | 19 | ||
19 | #include <asm/dma.h> | 20 | #include <asm/dma.h> |
20 | #include <asm/arch/dma.h> | 21 | #include <asm/arch/dma.h> |
@@ -131,6 +132,7 @@ static int s3c2410_dma_add(struct sys_device *sysdev) | |||
131 | return s3c24xx_dma_init_map(&s3c2410_dma_sel); | 132 | return s3c24xx_dma_init_map(&s3c2410_dma_sel); |
132 | } | 133 | } |
133 | 134 | ||
135 | #if defined(CONFIG_CPU_S3C2410) | ||
134 | static struct sysdev_driver s3c2410_dma_driver = { | 136 | static struct sysdev_driver s3c2410_dma_driver = { |
135 | .add = s3c2410_dma_add, | 137 | .add = s3c2410_dma_add, |
136 | }; | 138 | }; |
@@ -141,9 +143,10 @@ static int __init s3c2410_dma_init(void) | |||
141 | } | 143 | } |
142 | 144 | ||
143 | arch_initcall(s3c2410_dma_init); | 145 | arch_initcall(s3c2410_dma_init); |
146 | #endif | ||
144 | 147 | ||
148 | #if defined(CONFIG_CPU_S3C2442) | ||
145 | /* S3C2442 DMA contains the same selection table as the S3C2410 */ | 149 | /* S3C2442 DMA contains the same selection table as the S3C2410 */ |
146 | |||
147 | static struct sysdev_driver s3c2442_dma_driver = { | 150 | static struct sysdev_driver s3c2442_dma_driver = { |
148 | .add = s3c2410_dma_add, | 151 | .add = s3c2410_dma_add, |
149 | }; | 152 | }; |
@@ -154,5 +157,5 @@ static int __init s3c2442_dma_init(void) | |||
154 | } | 157 | } |
155 | 158 | ||
156 | arch_initcall(s3c2442_dma_init); | 159 | arch_initcall(s3c2442_dma_init); |
157 | 160 | #endif | |
158 | 161 | ||
diff --git a/arch/arm/mach-s3c2410/s3c2410-pm.c b/arch/arm/mach-s3c2410/s3c2410-pm.c index 77c6814c0f05..8bb6e5e21f59 100644 --- a/arch/arm/mach-s3c2410/s3c2410-pm.c +++ b/arch/arm/mach-s3c2410/s3c2410-pm.c | |||
@@ -87,7 +87,7 @@ static void s3c2410_pm_prepare(void) | |||
87 | 87 | ||
88 | } | 88 | } |
89 | 89 | ||
90 | int s3c2410_pm_resume(struct sys_device *dev) | 90 | static int s3c2410_pm_resume(struct sys_device *dev) |
91 | { | 91 | { |
92 | unsigned long tmp; | 92 | unsigned long tmp; |
93 | 93 | ||
@@ -111,6 +111,7 @@ static int s3c2410_pm_add(struct sys_device *dev) | |||
111 | return 0; | 111 | return 0; |
112 | } | 112 | } |
113 | 113 | ||
114 | #if defined(CONFIG_CPU_S3C2410) | ||
114 | static struct sysdev_driver s3c2410_pm_driver = { | 115 | static struct sysdev_driver s3c2410_pm_driver = { |
115 | .add = s3c2410_pm_add, | 116 | .add = s3c2410_pm_add, |
116 | .resume = s3c2410_pm_resume, | 117 | .resume = s3c2410_pm_resume, |
@@ -124,7 +125,9 @@ static int __init s3c2410_pm_drvinit(void) | |||
124 | } | 125 | } |
125 | 126 | ||
126 | arch_initcall(s3c2410_pm_drvinit); | 127 | arch_initcall(s3c2410_pm_drvinit); |
128 | #endif | ||
127 | 129 | ||
130 | #if defined(CONFIG_CPU_S3C2440) | ||
128 | static struct sysdev_driver s3c2440_pm_driver = { | 131 | static struct sysdev_driver s3c2440_pm_driver = { |
129 | .add = s3c2410_pm_add, | 132 | .add = s3c2410_pm_add, |
130 | .resume = s3c2410_pm_resume, | 133 | .resume = s3c2410_pm_resume, |
@@ -136,7 +139,9 @@ static int __init s3c2440_pm_drvinit(void) | |||
136 | } | 139 | } |
137 | 140 | ||
138 | arch_initcall(s3c2440_pm_drvinit); | 141 | arch_initcall(s3c2440_pm_drvinit); |
142 | #endif | ||
139 | 143 | ||
144 | #if defined(CONFIG_CPU_S3C2442) | ||
140 | static struct sysdev_driver s3c2442_pm_driver = { | 145 | static struct sysdev_driver s3c2442_pm_driver = { |
141 | .add = s3c2410_pm_add, | 146 | .add = s3c2410_pm_add, |
142 | .resume = s3c2410_pm_resume, | 147 | .resume = s3c2410_pm_resume, |
@@ -148,3 +153,4 @@ static int __init s3c2442_pm_drvinit(void) | |||
148 | } | 153 | } |
149 | 154 | ||
150 | arch_initcall(s3c2442_pm_drvinit); | 155 | arch_initcall(s3c2442_pm_drvinit); |
156 | #endif | ||
diff --git a/arch/arm/mach-s3c2410/s3c2410.c b/arch/arm/mach-s3c2410/s3c2410.c index 183e4033ce61..4cdc0d70c19f 100644 --- a/arch/arm/mach-s3c2410/s3c2410.c +++ b/arch/arm/mach-s3c2410/s3c2410.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/sysdev.h> | 19 | #include <linux/sysdev.h> |
20 | #include <linux/serial_core.h> | ||
20 | #include <linux/platform_device.h> | 21 | #include <linux/platform_device.h> |
21 | 22 | ||
22 | #include <asm/mach/arch.h> | 23 | #include <asm/mach/arch.h> |
@@ -38,11 +39,9 @@ | |||
38 | /* Initial IO mappings */ | 39 | /* Initial IO mappings */ |
39 | 40 | ||
40 | static struct map_desc s3c2410_iodesc[] __initdata = { | 41 | static struct map_desc s3c2410_iodesc[] __initdata = { |
41 | IODESC_ENT(USBHOST), | ||
42 | IODESC_ENT(CLKPWR), | 42 | IODESC_ENT(CLKPWR), |
43 | IODESC_ENT(LCD), | 43 | IODESC_ENT(LCD), |
44 | IODESC_ENT(TIMER), | 44 | IODESC_ENT(TIMER), |
45 | IODESC_ENT(ADC), | ||
46 | IODESC_ENT(WATCHDOG), | 45 | IODESC_ENT(WATCHDOG), |
47 | }; | 46 | }; |
48 | 47 | ||
diff --git a/arch/arm/mach-s3c2410/s3c2412-clock.c b/arch/arm/mach-s3c2410/s3c2412-clock.c index c95ed3e18580..8f94ad83901d 100644 --- a/arch/arm/mach-s3c2410/s3c2412-clock.c +++ b/arch/arm/mach-s3c2410/s3c2412-clock.c | |||
@@ -30,13 +30,18 @@ | |||
30 | #include <linux/clk.h> | 30 | #include <linux/clk.h> |
31 | #include <linux/mutex.h> | 31 | #include <linux/mutex.h> |
32 | #include <linux/delay.h> | 32 | #include <linux/delay.h> |
33 | #include <linux/serial_core.h> | ||
34 | |||
35 | #include <asm/mach/map.h> | ||
33 | 36 | ||
34 | #include <asm/hardware.h> | 37 | #include <asm/hardware.h> |
35 | #include <asm/io.h> | 38 | #include <asm/io.h> |
36 | 39 | ||
40 | #include <asm/arch/regs-serial.h> | ||
37 | #include <asm/arch/regs-clock.h> | 41 | #include <asm/arch/regs-clock.h> |
38 | #include <asm/arch/regs-gpio.h> | 42 | #include <asm/arch/regs-gpio.h> |
39 | 43 | ||
44 | #include "s3c2412.h" | ||
40 | #include "clock.h" | 45 | #include "clock.h" |
41 | #include "cpu.h" | 46 | #include "cpu.h" |
42 | 47 | ||
@@ -49,7 +54,7 @@ | |||
49 | * set the correct muxing at initialisation | 54 | * set the correct muxing at initialisation |
50 | */ | 55 | */ |
51 | 56 | ||
52 | int s3c2412_clkcon_enable(struct clk *clk, int enable) | 57 | static int s3c2412_clkcon_enable(struct clk *clk, int enable) |
53 | { | 58 | { |
54 | unsigned int clocks = clk->ctrlbit; | 59 | unsigned int clocks = clk->ctrlbit; |
55 | unsigned long clkcon; | 60 | unsigned long clkcon; |
@@ -556,7 +561,7 @@ struct clk_init { | |||
556 | struct clk *src_1; | 561 | struct clk *src_1; |
557 | }; | 562 | }; |
558 | 563 | ||
559 | struct clk_init clks_src[] __initdata = { | 564 | static struct clk_init clks_src[] __initdata = { |
560 | { | 565 | { |
561 | .clk = &clk_usysclk, | 566 | .clk = &clk_usysclk, |
562 | .bit = S3C2412_CLKSRC_USBCLK_HCLK, | 567 | .bit = S3C2412_CLKSRC_USBCLK_HCLK, |
@@ -619,7 +624,7 @@ static void __init s3c2412_clk_initparents(void) | |||
619 | 624 | ||
620 | /* clocks to add straight away */ | 625 | /* clocks to add straight away */ |
621 | 626 | ||
622 | struct clk *clks[] __initdata = { | 627 | static struct clk *clks[] __initdata = { |
623 | &clk_ext, | 628 | &clk_ext, |
624 | &clk_usb_bus, | 629 | &clk_usb_bus, |
625 | &clk_erefclk, | 630 | &clk_erefclk, |
diff --git a/arch/arm/mach-s3c2410/s3c2412-dma.c b/arch/arm/mach-s3c2410/s3c2412-dma.c index 171f3706d36d..fe71a8fdb87c 100644 --- a/arch/arm/mach-s3c2410/s3c2412-dma.c +++ b/arch/arm/mach-s3c2410/s3c2412-dma.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* linux/arch/arm/mach-s3c2410/s3c2412-dma.c | 1 | /* linux/arch/arm/mach-s3c2410/s3c2412-dma.c |
2 | * | 2 | * |
3 | * (c) 2006 Simtec Electronics | 3 | * Copyright (c) 2006 Simtec Electronics |
4 | * Ben Dooks <ben@simtec.co.uk> | 4 | * Ben Dooks <ben@simtec.co.uk> |
5 | * | 5 | * |
6 | * S3C2412 DMA selection | 6 | * S3C2412 DMA selection |
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/sysdev.h> | 17 | #include <linux/sysdev.h> |
18 | #include <linux/serial_core.h> | ||
18 | 19 | ||
19 | #include <asm/dma.h> | 20 | #include <asm/dma.h> |
20 | #include <asm/arch/dma.h> | 21 | #include <asm/arch/dma.h> |
diff --git a/arch/arm/mach-s3c2410/s3c2412.c b/arch/arm/mach-s3c2410/s3c2412.c index e76431c41461..2f651a811ecd 100644 --- a/arch/arm/mach-s3c2410/s3c2412.c +++ b/arch/arm/mach-s3c2410/s3c2412.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/sysdev.h> | 19 | #include <linux/sysdev.h> |
20 | #include <linux/serial_core.h> | ||
20 | #include <linux/platform_device.h> | 21 | #include <linux/platform_device.h> |
21 | 22 | ||
22 | #include <asm/mach/arch.h> | 23 | #include <asm/mach/arch.h> |
@@ -60,7 +61,6 @@ static struct map_desc s3c2412_iodesc[] __initdata = { | |||
60 | IODESC_ENT(CLKPWR), | 61 | IODESC_ENT(CLKPWR), |
61 | IODESC_ENT(LCD), | 62 | IODESC_ENT(LCD), |
62 | IODESC_ENT(TIMER), | 63 | IODESC_ENT(TIMER), |
63 | IODESC_ENT(ADC), | ||
64 | IODESC_ENT(WATCHDOG), | 64 | IODESC_ENT(WATCHDOG), |
65 | }; | 65 | }; |
66 | 66 | ||
diff --git a/arch/arm/mach-s3c2410/s3c2440-clock.c b/arch/arm/mach-s3c2410/s3c2440-clock.c index 15796864d010..ba13c1d079d1 100644 --- a/arch/arm/mach-s3c2410/s3c2440-clock.c +++ b/arch/arm/mach-s3c2410/s3c2440-clock.c | |||
@@ -113,18 +113,18 @@ static int s3c2440_clk_add(struct sys_device *sysdev) | |||
113 | { | 113 | { |
114 | unsigned long camdivn = __raw_readl(S3C2440_CAMDIVN); | 114 | unsigned long camdivn = __raw_readl(S3C2440_CAMDIVN); |
115 | unsigned long clkdivn; | 115 | unsigned long clkdivn; |
116 | struct clk *clk_h; | 116 | struct clk *clock_h; |
117 | struct clk *clk_p; | 117 | struct clk *clock_p; |
118 | struct clk *clk_upll; | 118 | struct clk *clock_upll; |
119 | 119 | ||
120 | printk("S3C2440: Clock Support, DVS %s\n", | 120 | printk("S3C2440: Clock Support, DVS %s\n", |
121 | (camdivn & S3C2440_CAMDIVN_DVSEN) ? "on" : "off"); | 121 | (camdivn & S3C2440_CAMDIVN_DVSEN) ? "on" : "off"); |
122 | 122 | ||
123 | clk_p = clk_get(NULL, "pclk"); | 123 | clock_p = clk_get(NULL, "pclk"); |
124 | clk_h = clk_get(NULL, "hclk"); | 124 | clock_h = clk_get(NULL, "hclk"); |
125 | clk_upll = clk_get(NULL, "upll"); | 125 | clock_upll = clk_get(NULL, "upll"); |
126 | 126 | ||
127 | if (IS_ERR(clk_p) || IS_ERR(clk_h) || IS_ERR(clk_upll)) { | 127 | if (IS_ERR(clock_p) || IS_ERR(clock_h) || IS_ERR(clock_upll)) { |
128 | printk(KERN_ERR "S3C2440: Failed to get parent clocks\n"); | 128 | printk(KERN_ERR "S3C2440: Failed to get parent clocks\n"); |
129 | return -EINVAL; | 129 | return -EINVAL; |
130 | } | 130 | } |
@@ -132,8 +132,8 @@ static int s3c2440_clk_add(struct sys_device *sysdev) | |||
132 | /* check rate of UPLL, and if it is near 96MHz, then change | 132 | /* check rate of UPLL, and if it is near 96MHz, then change |
133 | * to using half the UPLL rate for the system */ | 133 | * to using half the UPLL rate for the system */ |
134 | 134 | ||
135 | if (clk_get_rate(clk_upll) > (94 * MHZ)) { | 135 | if (clk_get_rate(clock_upll) > (94 * MHZ)) { |
136 | clk_usb_bus.rate = clk_get_rate(clk_upll) / 2; | 136 | clk_usb_bus.rate = clk_get_rate(clock_upll) / 2; |
137 | 137 | ||
138 | mutex_lock(&clocks_mutex); | 138 | mutex_lock(&clocks_mutex); |
139 | 139 | ||
@@ -144,9 +144,9 @@ static int s3c2440_clk_add(struct sys_device *sysdev) | |||
144 | mutex_unlock(&clocks_mutex); | 144 | mutex_unlock(&clocks_mutex); |
145 | } | 145 | } |
146 | 146 | ||
147 | s3c2440_clk_cam.parent = clk_h; | 147 | s3c2440_clk_cam.parent = clock_h; |
148 | s3c2440_clk_ac97.parent = clk_p; | 148 | s3c2440_clk_ac97.parent = clock_p; |
149 | s3c2440_clk_cam_upll.parent = clk_upll; | 149 | s3c2440_clk_cam_upll.parent = clock_upll; |
150 | 150 | ||
151 | s3c24xx_register_clock(&s3c2440_clk_ac97); | 151 | s3c24xx_register_clock(&s3c2440_clk_ac97); |
152 | s3c24xx_register_clock(&s3c2440_clk_cam); | 152 | s3c24xx_register_clock(&s3c2440_clk_cam); |
diff --git a/arch/arm/mach-s3c2410/s3c2440-dma.c b/arch/arm/mach-s3c2410/s3c2440-dma.c index 11e109c84a15..47b861b9443d 100644 --- a/arch/arm/mach-s3c2410/s3c2440-dma.c +++ b/arch/arm/mach-s3c2410/s3c2440-dma.c | |||
@@ -1,6 +1,6 @@ | |||
1 | /* linux/arch/arm/mach-s3c2410/s3c2440-dma.c | 1 | /* linux/arch/arm/mach-s3c2410/s3c2440-dma.c |
2 | * | 2 | * |
3 | * (c) 2006 Simtec Electronics | 3 | * Copyright (c) 2006 Simtec Electronics |
4 | * Ben Dooks <ben@simtec.co.uk> | 4 | * Ben Dooks <ben@simtec.co.uk> |
5 | * | 5 | * |
6 | * S3C2440 DMA selection | 6 | * S3C2440 DMA selection |
@@ -15,6 +15,7 @@ | |||
15 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
16 | #include <linux/init.h> | 16 | #include <linux/init.h> |
17 | #include <linux/sysdev.h> | 17 | #include <linux/sysdev.h> |
18 | #include <linux/serial_core.h> | ||
18 | 19 | ||
19 | #include <asm/dma.h> | 20 | #include <asm/dma.h> |
20 | #include <asm/arch/dma.h> | 21 | #include <asm/arch/dma.h> |
diff --git a/arch/arm/mach-s3c2410/s3c2440.c b/arch/arm/mach-s3c2410/s3c2440.c index 0ab50f44f318..344eb27cca48 100644 --- a/arch/arm/mach-s3c2410/s3c2440.c +++ b/arch/arm/mach-s3c2410/s3c2440.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/platform_device.h> | 19 | #include <linux/platform_device.h> |
20 | #include <linux/serial_core.h> | ||
20 | #include <linux/sysdev.h> | 21 | #include <linux/sysdev.h> |
21 | #include <linux/clk.h> | 22 | #include <linux/clk.h> |
22 | 23 | ||
@@ -28,17 +29,9 @@ | |||
28 | #include <asm/io.h> | 29 | #include <asm/io.h> |
29 | #include <asm/irq.h> | 30 | #include <asm/irq.h> |
30 | 31 | ||
31 | #include <asm/arch/regs-clock.h> | ||
32 | #include <asm/arch/regs-serial.h> | ||
33 | #include <asm/arch/regs-gpio.h> | ||
34 | #include <asm/arch/regs-gpioj.h> | ||
35 | #include <asm/arch/regs-dsc.h> | ||
36 | |||
37 | #include "s3c2440.h" | 32 | #include "s3c2440.h" |
38 | #include "clock.h" | ||
39 | #include "devs.h" | 33 | #include "devs.h" |
40 | #include "cpu.h" | 34 | #include "cpu.h" |
41 | #include "pm.h" | ||
42 | 35 | ||
43 | static struct sys_device s3c2440_sysdev = { | 36 | static struct sys_device s3c2440_sysdev = { |
44 | .cls = &s3c2440_sysclass, | 37 | .cls = &s3c2440_sysclass, |
diff --git a/arch/arm/mach-s3c2410/s3c2440.h b/arch/arm/mach-s3c2410/s3c2440.h index 29cb6df65a48..dcd316076c59 100644 --- a/arch/arm/mach-s3c2410/s3c2440.h +++ b/arch/arm/mach-s3c2410/s3c2440.h | |||
@@ -8,28 +8,10 @@ | |||
8 | * This program is free software; you can redistribute it and/or modify | 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 | 9 | * it under the terms of the GNU General Public License version 2 as |
10 | * published by the Free Software Foundation. | 10 | * published by the Free Software Foundation. |
11 | * | ||
12 | * Modifications: | ||
13 | * 24-Aug-2004 BJD Start of S3C2440 CPU support | ||
14 | * 04-Nov-2004 BJD Added s3c2440_init_uarts() | ||
15 | * 04-Jan-2005 BJD Moved uart init to cpu code | ||
16 | * 10-Jan-2005 BJD Moved 2440 specific init here | ||
17 | * 14-Jan-2005 BJD Split the clock initialisation code | ||
18 | */ | 11 | */ |
19 | 12 | ||
20 | #ifdef CONFIG_CPU_S3C2440 | 13 | #ifdef CONFIG_CPU_S3C2440 |
21 | |||
22 | extern int s3c2440_init(void); | 14 | extern int s3c2440_init(void); |
23 | |||
24 | extern void s3c2440_map_io(struct map_desc *mach_desc, int size); | ||
25 | |||
26 | extern void s3c2440_init_uarts(struct s3c2410_uartcfg *cfg, int no); | ||
27 | |||
28 | extern void s3c2440_init_clocks(int xtal); | ||
29 | |||
30 | #else | 15 | #else |
31 | #define s3c2440_init_clocks NULL | ||
32 | #define s3c2440_init_uarts NULL | ||
33 | #define s3c2440_map_io NULL | ||
34 | #define s3c2440_init NULL | 16 | #define s3c2440_init NULL |
35 | #endif | 17 | #endif |
diff --git a/arch/arm/mach-s3c2410/s3c2442-clock.c b/arch/arm/mach-s3c2410/s3c2442-clock.c index d9f54b5cab7f..4e292ca7c9be 100644 --- a/arch/arm/mach-s3c2410/s3c2442-clock.c +++ b/arch/arm/mach-s3c2410/s3c2442-clock.c | |||
@@ -117,18 +117,18 @@ static int s3c2442_clk_add(struct sys_device *sysdev) | |||
117 | { | 117 | { |
118 | unsigned long camdivn = __raw_readl(S3C2440_CAMDIVN); | 118 | unsigned long camdivn = __raw_readl(S3C2440_CAMDIVN); |
119 | unsigned long clkdivn; | 119 | unsigned long clkdivn; |
120 | struct clk *clk_h; | 120 | struct clk *clock_h; |
121 | struct clk *clk_p; | 121 | struct clk *clock_p; |
122 | struct clk *clk_upll; | 122 | struct clk *clock_upll; |
123 | 123 | ||
124 | printk("S3C2442: Clock Support, DVS %s\n", | 124 | printk("S3C2442: Clock Support, DVS %s\n", |
125 | (camdivn & S3C2440_CAMDIVN_DVSEN) ? "on" : "off"); | 125 | (camdivn & S3C2440_CAMDIVN_DVSEN) ? "on" : "off"); |
126 | 126 | ||
127 | clk_p = clk_get(NULL, "pclk"); | 127 | clock_p = clk_get(NULL, "pclk"); |
128 | clk_h = clk_get(NULL, "hclk"); | 128 | clock_h = clk_get(NULL, "hclk"); |
129 | clk_upll = clk_get(NULL, "upll"); | 129 | clock_upll = clk_get(NULL, "upll"); |
130 | 130 | ||
131 | if (IS_ERR(clk_p) || IS_ERR(clk_h) || IS_ERR(clk_upll)) { | 131 | if (IS_ERR(clock_p) || IS_ERR(clock_h) || IS_ERR(clock_upll)) { |
132 | printk(KERN_ERR "S3C2442: Failed to get parent clocks\n"); | 132 | printk(KERN_ERR "S3C2442: Failed to get parent clocks\n"); |
133 | return -EINVAL; | 133 | return -EINVAL; |
134 | } | 134 | } |
@@ -136,8 +136,8 @@ static int s3c2442_clk_add(struct sys_device *sysdev) | |||
136 | /* check rate of UPLL, and if it is near 96MHz, then change | 136 | /* check rate of UPLL, and if it is near 96MHz, then change |
137 | * to using half the UPLL rate for the system */ | 137 | * to using half the UPLL rate for the system */ |
138 | 138 | ||
139 | if (clk_get_rate(clk_upll) > (94 * MHZ)) { | 139 | if (clk_get_rate(clock_upll) > (94 * MHZ)) { |
140 | clk_usb_bus.rate = clk_get_rate(clk_upll) / 2; | 140 | clk_usb_bus.rate = clk_get_rate(clock_upll) / 2; |
141 | 141 | ||
142 | mutex_lock(&clocks_mutex); | 142 | mutex_lock(&clocks_mutex); |
143 | 143 | ||
@@ -148,8 +148,8 @@ static int s3c2442_clk_add(struct sys_device *sysdev) | |||
148 | mutex_unlock(&clocks_mutex); | 148 | mutex_unlock(&clocks_mutex); |
149 | } | 149 | } |
150 | 150 | ||
151 | s3c2442_clk_cam.parent = clk_h; | 151 | s3c2442_clk_cam.parent = clock_h; |
152 | s3c2442_clk_cam_upll.parent = clk_upll; | 152 | s3c2442_clk_cam_upll.parent = clock_upll; |
153 | 153 | ||
154 | s3c24xx_register_clock(&s3c2442_clk_cam); | 154 | s3c24xx_register_clock(&s3c2442_clk_cam); |
155 | s3c24xx_register_clock(&s3c2442_clk_cam_upll); | 155 | s3c24xx_register_clock(&s3c2442_clk_cam_upll); |
diff --git a/arch/arm/mach-s3c2410/s3c2442.c b/arch/arm/mach-s3c2410/s3c2442.c index 581667efd13c..428732ee68c4 100644 --- a/arch/arm/mach-s3c2410/s3c2442.c +++ b/arch/arm/mach-s3c2410/s3c2442.c | |||
@@ -16,29 +16,11 @@ | |||
16 | #include <linux/list.h> | 16 | #include <linux/list.h> |
17 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/platform_device.h> | 19 | #include <linux/serial_core.h> |
20 | #include <linux/sysdev.h> | 20 | #include <linux/sysdev.h> |
21 | #include <linux/clk.h> | ||
22 | |||
23 | #include <asm/mach/arch.h> | ||
24 | #include <asm/mach/map.h> | ||
25 | #include <asm/mach/irq.h> | ||
26 | |||
27 | #include <asm/hardware.h> | ||
28 | #include <asm/io.h> | ||
29 | #include <asm/irq.h> | ||
30 | |||
31 | #include <asm/arch/regs-clock.h> | ||
32 | #include <asm/arch/regs-serial.h> | ||
33 | #include <asm/arch/regs-gpio.h> | ||
34 | #include <asm/arch/regs-gpioj.h> | ||
35 | #include <asm/arch/regs-dsc.h> | ||
36 | 21 | ||
37 | #include "s3c2442.h" | 22 | #include "s3c2442.h" |
38 | #include "clock.h" | ||
39 | #include "devs.h" | ||
40 | #include "cpu.h" | 23 | #include "cpu.h" |
41 | #include "pm.h" | ||
42 | 24 | ||
43 | static struct sys_device s3c2442_sysdev = { | 25 | static struct sys_device s3c2442_sysdev = { |
44 | .cls = &s3c2442_sysclass, | 26 | .cls = &s3c2442_sysclass, |
diff --git a/arch/arm/mach-s3c2410/s3c244x.c b/arch/arm/mach-s3c2410/s3c244x.c index 9a2258270de9..23c7494ad10d 100644 --- a/arch/arm/mach-s3c2410/s3c244x.c +++ b/arch/arm/mach-s3c2410/s3c244x.c | |||
@@ -16,6 +16,7 @@ | |||
16 | #include <linux/list.h> | 16 | #include <linux/list.h> |
17 | #include <linux/timer.h> | 17 | #include <linux/timer.h> |
18 | #include <linux/init.h> | 18 | #include <linux/init.h> |
19 | #include <linux/serial_core.h> | ||
19 | #include <linux/platform_device.h> | 20 | #include <linux/platform_device.h> |
20 | #include <linux/sysdev.h> | 21 | #include <linux/sysdev.h> |
21 | #include <linux/clk.h> | 22 | #include <linux/clk.h> |
@@ -47,8 +48,6 @@ static struct map_desc s3c244x_iodesc[] __initdata = { | |||
47 | IODESC_ENT(TIMER), | 48 | IODESC_ENT(TIMER), |
48 | IODESC_ENT(WATCHDOG), | 49 | IODESC_ENT(WATCHDOG), |
49 | IODESC_ENT(LCD), | 50 | IODESC_ENT(LCD), |
50 | IODESC_ENT(ADC), | ||
51 | IODESC_ENT(USBHOST), | ||
52 | }; | 51 | }; |
53 | 52 | ||
54 | /* uart initialisation */ | 53 | /* uart initialisation */ |
diff --git a/arch/arm/mach-s3c2410/usb-simtec.h b/arch/arm/mach-s3c2410/usb-simtec.h index d8aa6127dedb..03842ede9e71 100644 --- a/arch/arm/mach-s3c2410/usb-simtec.h +++ b/arch/arm/mach-s3c2410/usb-simtec.h | |||
@@ -10,9 +10,6 @@ | |||
10 | * This program is free software; you can redistribute it and/or modify | 10 | * This program is free software; you can redistribute it and/or modify |
11 | * it under the terms of the GNU General Public License version 2 as | 11 | * it under the terms of the GNU General Public License version 2 as |
12 | * published by the Free Software Foundation. | 12 | * published by the Free Software Foundation. |
13 | * | ||
14 | * Modifications: | ||
15 | * 20-Aug-2004 BJD Created | ||
16 | */ | 13 | */ |
17 | 14 | ||
18 | extern int usb_simtec_init(void); | 15 | extern int usb_simtec_init(void); |