aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c2410/cpu.c
diff options
context:
space:
mode:
authorBen Dooks <ben-linux@fluff.org>2006-06-18 18:06:41 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-06-18 18:06:41 -0400
commit96ce2385dd2817da549910001a69ac0a2762a1b9 (patch)
tree18ec36e9e1e8a6b7c19aacb53c256fdb941c4ecd /arch/arm/mach-s3c2410/cpu.c
parent66a9b49a370baac75d90b7da9a2445997a8a9438 (diff)
[ARM] 3559/1: S3C2442: core and serial port
Patch from Ben Dooks Core support for the Samsung S3C2442, and the serial port driver update to allow the serial port blocks to be used. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-s3c2410/cpu.c')
-rw-r--r--arch/arm/mach-s3c2410/cpu.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/arch/arm/mach-s3c2410/cpu.c b/arch/arm/mach-s3c2410/cpu.c
index acc58adfbd21..52842e6e86e6 100644
--- a/arch/arm/mach-s3c2410/cpu.c
+++ b/arch/arm/mach-s3c2410/cpu.c
@@ -44,7 +44,9 @@
44#include "clock.h" 44#include "clock.h"
45#include "s3c2400.h" 45#include "s3c2400.h"
46#include "s3c2410.h" 46#include "s3c2410.h"
47#include "s3c244x.h"
47#include "s3c2440.h" 48#include "s3c2440.h"
49#include "s3c2442.h"
48 50
49struct cpu_table { 51struct cpu_table {
50 unsigned long idcode; 52 unsigned long idcode;
@@ -61,6 +63,7 @@ struct cpu_table {
61static const char name_s3c2400[] = "S3C2400"; 63static const char name_s3c2400[] = "S3C2400";
62static const char name_s3c2410[] = "S3C2410"; 64static const char name_s3c2410[] = "S3C2410";
63static const char name_s3c2440[] = "S3C2440"; 65static const char name_s3c2440[] = "S3C2440";
66static const char name_s3c2442[] = "S3C2442";
64static const char name_s3c2410a[] = "S3C2410A"; 67static const char name_s3c2410a[] = "S3C2410A";
65static const char name_s3c2440a[] = "S3C2440A"; 68static const char name_s3c2440a[] = "S3C2440A";
66 69
@@ -86,22 +89,31 @@ static struct cpu_table cpu_ids[] __initdata = {
86 { 89 {
87 .idcode = 0x32440000, 90 .idcode = 0x32440000,
88 .idmask = 0xffffffff, 91 .idmask = 0xffffffff,
89 .map_io = s3c2440_map_io, 92 .map_io = s3c244x_map_io,
90 .init_clocks = s3c2440_init_clocks, 93 .init_clocks = s3c244x_init_clocks,
91 .init_uarts = s3c2440_init_uarts, 94 .init_uarts = s3c244x_init_uarts,
92 .init = s3c2440_init, 95 .init = s3c2440_init,
93 .name = name_s3c2440 96 .name = name_s3c2440
94 }, 97 },
95 { 98 {
96 .idcode = 0x32440001, 99 .idcode = 0x32440001,
97 .idmask = 0xffffffff, 100 .idmask = 0xffffffff,
98 .map_io = s3c2440_map_io, 101 .map_io = s3c244x_map_io,
99 .init_clocks = s3c2440_init_clocks, 102 .init_clocks = s3c244x_init_clocks,
100 .init_uarts = s3c2440_init_uarts, 103 .init_uarts = s3c244x_init_uarts,
101 .init = s3c2440_init, 104 .init = s3c2440_init,
102 .name = name_s3c2440a 105 .name = name_s3c2440a
103 }, 106 },
104 { 107 {
108 .idcode = 0x32440aaa,
109 .idmask = 0xffffffff,
110 .map_io = s3c244x_map_io,
111 .init_clocks = s3c244x_init_clocks,
112 .init_uarts = s3c244x_init_uarts,
113 .init = s3c2442_init,
114 .name = name_s3c2442
115 },
116 {
105 .idcode = 0x0, /* S3C2400 doesn't have an idcode */ 117 .idcode = 0x0, /* S3C2400 doesn't have an idcode */
106 .idmask = 0xffffffff, 118 .idmask = 0xffffffff,
107 .map_io = s3c2400_map_io, 119 .map_io = s3c2400_map_io,