diff options
author | Ben Dooks <ben-linux@fluff.org> | 2008-10-21 09:06:32 -0400 |
---|---|---|
committer | Ben Dooks <ben-linux@fluff.org> | 2008-12-15 16:46:39 -0500 |
commit | bcae8aeb320dfe8dde4b3512237a5b76737b0120 (patch) | |
tree | 871b63ba72aba38732f8c345230f108117111ff0 | |
parent | ce46a9c497ed788146449c230765ee5d6dd3cb53 (diff) |
[ARM] S3C24A0: Initial architecture support files
Initial architecture support for the S3C24A0 ARCH_S3C24A0.
We don't yet add an kconfig entry in the main arch/arm/Kconfig
file as the series is not complete, so that is left until enough
support is in to be useful.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
-rw-r--r-- | arch/arm/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/mach-s3c24a0/include/mach/io.h | 16 | ||||
-rw-r--r-- | arch/arm/mach-s3c24a0/include/mach/system.h | 25 | ||||
-rw-r--r-- | arch/arm/mach-s3c24a0/include/mach/timex.h | 18 | ||||
-rw-r--r-- | arch/arm/mach-s3c24a0/include/mach/vmalloc.h | 17 | ||||
-rw-r--r-- | arch/arm/plat-s3c/Kconfig | 12 | ||||
-rw-r--r-- | arch/arm/plat-s3c24xx/Kconfig | 4 |
7 files changed, 85 insertions, 8 deletions
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 260864f3f010..27ff1e90d277 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile | |||
@@ -121,6 +121,7 @@ endif | |||
121 | machine-$(CONFIG_ARCH_OMAP3) := omap2 | 121 | machine-$(CONFIG_ARCH_OMAP3) := omap2 |
122 | plat-$(CONFIG_ARCH_OMAP) := omap | 122 | plat-$(CONFIG_ARCH_OMAP) := omap |
123 | machine-$(CONFIG_ARCH_S3C2410) := s3c2410 s3c2400 s3c2412 s3c2440 s3c2442 s3c2443 | 123 | machine-$(CONFIG_ARCH_S3C2410) := s3c2410 s3c2400 s3c2412 s3c2440 s3c2442 s3c2443 |
124 | machine-$(CONFIG_ARCH_S3C24A0) := s3c24a0 | ||
124 | plat-$(CONFIG_PLAT_S3C24XX) := s3c24xx s3c | 125 | plat-$(CONFIG_PLAT_S3C24XX) := s3c24xx s3c |
125 | machine-$(CONFIG_ARCH_LH7A40X) := lh7a40x | 126 | machine-$(CONFIG_ARCH_LH7A40X) := lh7a40x |
126 | machine-$(CONFIG_ARCH_VERSATILE) := versatile | 127 | machine-$(CONFIG_ARCH_VERSATILE) := versatile |
diff --git a/arch/arm/mach-s3c24a0/include/mach/io.h b/arch/arm/mach-s3c24a0/include/mach/io.h new file mode 100644 index 000000000000..c163364773b3 --- /dev/null +++ b/arch/arm/mach-s3c24a0/include/mach/io.h | |||
@@ -0,0 +1,16 @@ | |||
1 | /* arch/arm/mach-s3c24a0/include/mach/io.h | ||
2 | * | ||
3 | * Copyright 2008 Simtec Electronics | ||
4 | * Ben Dooks <ben-linux@fluff.org> | ||
5 | * | ||
6 | * IO access and mapping routines for the S3C24A0 | ||
7 | */ | ||
8 | |||
9 | #ifndef __ASM_ARM_ARCH_IO_H | ||
10 | #define __ASM_ARM_ARCH_IO_H | ||
11 | |||
12 | /* No current ISA/PCI bus support. */ | ||
13 | #define __io(a) ((void __iomem *)(a)) | ||
14 | #define __mem_pci(a) (a) | ||
15 | |||
16 | #endif | ||
diff --git a/arch/arm/mach-s3c24a0/include/mach/system.h b/arch/arm/mach-s3c24a0/include/mach/system.h new file mode 100644 index 000000000000..bd1bd1957656 --- /dev/null +++ b/arch/arm/mach-s3c24a0/include/mach/system.h | |||
@@ -0,0 +1,25 @@ | |||
1 | /* linux/arch/arm/mach-s3c24a0/include/mach/system.h | ||
2 | * | ||
3 | * Copyright 2008 Simtec Electronics | ||
4 | * Ben Dooks <ben@simtec.co.uk> | ||
5 | * | ||
6 | * S3C24A0 - System function defines and includes | ||
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 <mach/hardware.h> | ||
14 | #include <asm/io.h> | ||
15 | |||
16 | #include <mach/map.h> | ||
17 | |||
18 | static void arch_idle(void) | ||
19 | { | ||
20 | /* currently no specific idle support. */ | ||
21 | } | ||
22 | |||
23 | void (*s3c24xx_reset_hook)(void); | ||
24 | |||
25 | #include <asm/plat-s3c24xx/system-reset.h> | ||
diff --git a/arch/arm/mach-s3c24a0/include/mach/timex.h b/arch/arm/mach-s3c24a0/include/mach/timex.h new file mode 100644 index 000000000000..98573424a016 --- /dev/null +++ b/arch/arm/mach-s3c24a0/include/mach/timex.h | |||
@@ -0,0 +1,18 @@ | |||
1 | /* linux/arch/arm/mach-s3c24a0/include/mach/timex.h | ||
2 | * | ||
3 | * Copyright (c) 2008 Simtec Electronics | ||
4 | * Ben Dooks <ben@simtec.co.uk> | ||
5 | * | ||
6 | * S3C2410 - time parameters | ||
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 | #ifndef __ASM_ARCH_TIMEX_H | ||
14 | #define __ASM_ARCH_TIMEX_H | ||
15 | |||
16 | #define CLOCK_TICK_RATE 12000000 | ||
17 | |||
18 | #endif /* __ASM_ARCH_TIMEX_H */ | ||
diff --git a/arch/arm/mach-s3c24a0/include/mach/vmalloc.h b/arch/arm/mach-s3c24a0/include/mach/vmalloc.h new file mode 100644 index 000000000000..4d4fe4849589 --- /dev/null +++ b/arch/arm/mach-s3c24a0/include/mach/vmalloc.h | |||
@@ -0,0 +1,17 @@ | |||
1 | /* linux/include/asm-arm/arch-s3c24ao/vmalloc.h | ||
2 | * | ||
3 | * Copyright 2008 Simtec Electronics <linux@simtec.co.uk> | ||
4 | |||
5 | * This program is free software; you can redistribute it and/or modify | ||
6 | * it under the terms of the GNU General Public License version 2 as | ||
7 | * published by the Free Software Foundation. | ||
8 | * | ||
9 | * S3C24A0 vmalloc definition | ||
10 | */ | ||
11 | |||
12 | #ifndef __ASM_ARCH_VMALLOC_H | ||
13 | #define __ASM_ARCH_VMALLOC_H | ||
14 | |||
15 | #define VMALLOC_END (0xE0000000) | ||
16 | |||
17 | #endif /* __ASM_ARCH_VMALLOC_H */ | ||
diff --git a/arch/arm/plat-s3c/Kconfig b/arch/arm/plat-s3c/Kconfig index 31656c33e05e..b57ada400f90 100644 --- a/arch/arm/plat-s3c/Kconfig +++ b/arch/arm/plat-s3c/Kconfig | |||
@@ -6,8 +6,8 @@ | |||
6 | 6 | ||
7 | config PLAT_S3C | 7 | config PLAT_S3C |
8 | bool | 8 | bool |
9 | depends on ARCH_S3C2410 | 9 | depends on ARCH_S3C2410 || ARCH_S3C24A0 |
10 | default y if ARCH_S3C2410 | 10 | default y |
11 | select NO_IOPORT | 11 | select NO_IOPORT |
12 | help | 12 | help |
13 | Base platform code for any Samsung S3C device | 13 | Base platform code for any Samsung S3C device |
@@ -16,24 +16,24 @@ config PLAT_S3C | |||
16 | 16 | ||
17 | config CPU_LLSERIAL_S3C2410_ONLY | 17 | config CPU_LLSERIAL_S3C2410_ONLY |
18 | bool | 18 | bool |
19 | depends on ARCH_S3C2410 | 19 | depends on PLAT_S3C |
20 | default y if CPU_LLSERIAL_S3C2410 && !CPU_LLSERIAL_S3C2440 | 20 | default y if CPU_LLSERIAL_S3C2410 && !CPU_LLSERIAL_S3C2440 |
21 | 21 | ||
22 | config CPU_LLSERIAL_S3C2440_ONLY | 22 | config CPU_LLSERIAL_S3C2440_ONLY |
23 | bool | 23 | bool |
24 | depends on ARCH_S3C2410 | 24 | depends on PLAT_S3C |
25 | default y if CPU_LLSERIAL_S3C2440 && !CPU_LLSERIAL_S3C2410 | 25 | default y if CPU_LLSERIAL_S3C2440 && !CPU_LLSERIAL_S3C2410 |
26 | 26 | ||
27 | config CPU_LLSERIAL_S3C2410 | 27 | config CPU_LLSERIAL_S3C2410 |
28 | bool | 28 | bool |
29 | depends on ARCH_S3C2410 | 29 | depends on PLAT_S3C |
30 | help | 30 | help |
31 | Selected if there is an S3C2410 (or register compatible) serial | 31 | Selected if there is an S3C2410 (or register compatible) serial |
32 | low-level implementation needed | 32 | low-level implementation needed |
33 | 33 | ||
34 | config CPU_LLSERIAL_S3C2440 | 34 | config CPU_LLSERIAL_S3C2440 |
35 | bool | 35 | bool |
36 | depends on ARCH_S3C2410 | 36 | depends on PLAT_S3C |
37 | help | 37 | help |
38 | Selected if there is an S3C2440 (or register compatible) serial | 38 | Selected if there is an S3C2440 (or register compatible) serial |
39 | low-level implementation needed | 39 | low-level implementation needed |
diff --git a/arch/arm/plat-s3c24xx/Kconfig b/arch/arm/plat-s3c24xx/Kconfig index d3faf01bbfc2..f0d54fdf88d4 100644 --- a/arch/arm/plat-s3c24xx/Kconfig +++ b/arch/arm/plat-s3c24xx/Kconfig | |||
@@ -6,8 +6,8 @@ | |||
6 | 6 | ||
7 | config PLAT_S3C24XX | 7 | config PLAT_S3C24XX |
8 | bool | 8 | bool |
9 | depends on ARCH_S3C2410 | 9 | depends on ARCH_S3C2410 || ARCH_S3C24A0 |
10 | default y if ARCH_S3C2410 | 10 | default y |
11 | select NO_IOPORT | 11 | select NO_IOPORT |
12 | select ARCH_REQUIRE_GPIOLIB | 12 | select ARCH_REQUIRE_GPIOLIB |
13 | help | 13 | help |