diff options
| author | Magnus Damm <damm@opensource.se> | 2009-12-14 07:29:56 -0500 |
|---|---|---|
| committer | Paul Mundt <lethal@linux-sh.org> | 2009-12-14 22:06:31 -0500 |
| commit | be091d20efe7b045ca02bdf91c63c72d91f5899d (patch) | |
| tree | 447f1c2578b64919d2d0ba5d67d79419b96df89d | |
| parent | 632fd800f54f361cd9d36dd48587756dab670ccf (diff) | |
sh: sh2a scif pdata (sh7201/sh7203/sh7206/mxg)
This patch breaks out the sh2a scif serial port platform
data from a shared platform device to one platform
device per port. Also, add serial ports to the list of
early platform devices.
Signed-off-by: Magnus Damm <damm@opensource.se>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| -rw-r--r-- | arch/sh/kernel/cpu/sh2a/setup-mxg.c | 23 | ||||
| -rw-r--r-- | arch/sh/kernel/cpu/sh2a/setup-sh7201.c | 181 | ||||
| -rw-r--r-- | arch/sh/kernel/cpu/sh2a/setup-sh7203.c | 89 | ||||
| -rw-r--r-- | arch/sh/kernel/cpu/sh2a/setup-sh7206.c | 89 |
4 files changed, 263 insertions, 119 deletions
diff --git a/arch/sh/kernel/cpu/sh2a/setup-mxg.c b/arch/sh/kernel/cpu/sh2a/setup-mxg.c index b67376445315..8f669dc9b0da 100644 --- a/arch/sh/kernel/cpu/sh2a/setup-mxg.c +++ b/arch/sh/kernel/cpu/sh2a/setup-mxg.c | |||
| @@ -207,27 +207,23 @@ static struct platform_device mtu2_2_device = { | |||
| 207 | .num_resources = ARRAY_SIZE(mtu2_2_resources), | 207 | .num_resources = ARRAY_SIZE(mtu2_2_resources), |
| 208 | }; | 208 | }; |
| 209 | 209 | ||
| 210 | static struct plat_sci_port sci_platform_data[] = { | 210 | static struct plat_sci_port scif0_platform_data = { |
| 211 | { | 211 | .mapbase = 0xff804000, |
| 212 | .mapbase = 0xff804000, | 212 | .flags = UPF_BOOT_AUTOCONF, |
| 213 | .flags = UPF_BOOT_AUTOCONF, | 213 | .type = PORT_SCIF, |
| 214 | .type = PORT_SCIF, | 214 | .irqs = { 220, 220, 220, 220 }, |
| 215 | .irqs = { 220, 220, 220, 220 }, | ||
| 216 | }, { | ||
| 217 | .flags = 0, | ||
| 218 | } | ||
| 219 | }; | 215 | }; |
| 220 | 216 | ||
| 221 | static struct platform_device sci_device = { | 217 | static struct platform_device scif0_device = { |
| 222 | .name = "sh-sci", | 218 | .name = "sh-sci", |
| 223 | .id = -1, | 219 | .id = 0, |
| 224 | .dev = { | 220 | .dev = { |
| 225 | .platform_data = sci_platform_data, | 221 | .platform_data = &scif0_platform_data, |
| 226 | }, | 222 | }, |
| 227 | }; | 223 | }; |
| 228 | 224 | ||
| 229 | static struct platform_device *mxg_devices[] __initdata = { | 225 | static struct platform_device *mxg_devices[] __initdata = { |
| 230 | &sci_device, | 226 | &scif0_device, |
| 231 | &mtu2_0_device, | 227 | &mtu2_0_device, |
| 232 | &mtu2_1_device, | 228 | &mtu2_1_device, |
| 233 | &mtu2_2_device, | 229 | &mtu2_2_device, |
| @@ -246,6 +242,7 @@ void __init plat_irq_setup(void) | |||
| 246 | } | 242 | } |
| 247 | 243 | ||
| 248 | static struct platform_device *mxg_early_devices[] __initdata = { | 244 | static struct platform_device *mxg_early_devices[] __initdata = { |
| 245 | &scif0_device, | ||
| 249 | &mtu2_0_device, | 246 | &mtu2_0_device, |
| 250 | &mtu2_1_device, | 247 | &mtu2_1_device, |
| 251 | &mtu2_2_device, | 248 | &mtu2_2_device, |
diff --git a/arch/sh/kernel/cpu/sh2a/setup-sh7201.c b/arch/sh/kernel/cpu/sh2a/setup-sh7201.c index fbde5b75deb9..4ccfeb59eb1a 100644 --- a/arch/sh/kernel/cpu/sh2a/setup-sh7201.c +++ b/arch/sh/kernel/cpu/sh2a/setup-sh7201.c | |||
| @@ -177,57 +177,123 @@ static struct intc_mask_reg mask_registers[] __initdata = { | |||
| 177 | static DECLARE_INTC_DESC(intc_desc, "sh7201", vectors, groups, | 177 | static DECLARE_INTC_DESC(intc_desc, "sh7201", vectors, groups, |
| 178 | mask_registers, prio_registers, NULL); | 178 | mask_registers, prio_registers, NULL); |
| 179 | 179 | ||
| 180 | static struct plat_sci_port sci_platform_data[] = { | 180 | static struct plat_sci_port scif0_platform_data = { |
| 181 | { | 181 | .mapbase = 0xfffe8000, |
| 182 | .mapbase = 0xfffe8000, | 182 | .flags = UPF_BOOT_AUTOCONF, |
| 183 | .flags = UPF_BOOT_AUTOCONF, | 183 | .type = PORT_SCIF, |
| 184 | .type = PORT_SCIF, | 184 | .irqs = { 180, 180, 180, 180 } |
| 185 | .irqs = { 180, 180, 180, 180 } | 185 | }; |
| 186 | }, { | 186 | |
| 187 | .mapbase = 0xfffe8800, | 187 | static struct platform_device scif0_device = { |
| 188 | .flags = UPF_BOOT_AUTOCONF, | ||
| 189 | .type = PORT_SCIF, | ||
| 190 | .irqs = { 184, 184, 184, 184 } | ||
| 191 | }, { | ||
| 192 | .mapbase = 0xfffe9000, | ||
| 193 | .flags = UPF_BOOT_AUTOCONF, | ||
| 194 | .type = PORT_SCIF, | ||
| 195 | .irqs = { 188, 188, 188, 188 } | ||
| 196 | }, { | ||
| 197 | .mapbase = 0xfffe9800, | ||
| 198 | .flags = UPF_BOOT_AUTOCONF, | ||
| 199 | .type = PORT_SCIF, | ||
| 200 | .irqs = { 192, 192, 192, 192 } | ||
| 201 | }, { | ||
| 202 | .mapbase = 0xfffea000, | ||
| 203 | .flags = UPF_BOOT_AUTOCONF, | ||
| 204 | .type = PORT_SCIF, | ||
| 205 | .irqs = { 196, 196, 196, 196 } | ||
| 206 | }, { | ||
| 207 | .mapbase = 0xfffea800, | ||
| 208 | .flags = UPF_BOOT_AUTOCONF, | ||
| 209 | .type = PORT_SCIF, | ||
| 210 | .irqs = { 200, 200, 200, 200 } | ||
| 211 | }, { | ||
| 212 | .mapbase = 0xfffeb000, | ||
| 213 | .flags = UPF_BOOT_AUTOCONF, | ||
| 214 | .type = PORT_SCIF, | ||
| 215 | .irqs = { 204, 204, 204, 204 } | ||
| 216 | }, { | ||
| 217 | .mapbase = 0xfffeb800, | ||
| 218 | .flags = UPF_BOOT_AUTOCONF, | ||
| 219 | .type = PORT_SCIF, | ||
| 220 | .irqs = { 208, 208, 208, 208 } | ||
| 221 | }, { | ||
| 222 | .flags = 0, | ||
| 223 | } | ||
| 224 | }; | ||
| 225 | |||
| 226 | static struct platform_device sci_device = { | ||
| 227 | .name = "sh-sci", | 188 | .name = "sh-sci", |
| 228 | .id = -1, | 189 | .id = 0, |
| 190 | .dev = { | ||
| 191 | .platform_data = &scif0_platform_data, | ||
| 192 | }, | ||
| 193 | }; | ||
| 194 | |||
| 195 | static struct plat_sci_port scif1_platform_data = { | ||
| 196 | .mapbase = 0xfffe8800, | ||
| 197 | .flags = UPF_BOOT_AUTOCONF, | ||
| 198 | .type = PORT_SCIF, | ||
| 199 | .irqs = { 184, 184, 184, 184 } | ||
| 200 | }; | ||
| 201 | |||
| 202 | static struct platform_device scif1_device = { | ||
| 203 | .name = "sh-sci", | ||
| 204 | .id = 1, | ||
| 205 | .dev = { | ||
| 206 | .platform_data = &scif1_platform_data, | ||
| 207 | }, | ||
| 208 | }; | ||
| 209 | |||
| 210 | static struct plat_sci_port scif2_platform_data = { | ||
| 211 | .mapbase = 0xfffe9000, | ||
| 212 | .flags = UPF_BOOT_AUTOCONF, | ||
| 213 | .type = PORT_SCIF, | ||
| 214 | .irqs = { 188, 188, 188, 188 } | ||
| 215 | }; | ||
| 216 | |||
| 217 | static struct platform_device scif2_device = { | ||
| 218 | .name = "sh-sci", | ||
| 219 | .id = 2, | ||
| 220 | .dev = { | ||
| 221 | .platform_data = &scif2_platform_data, | ||
| 222 | }, | ||
| 223 | }; | ||
| 224 | |||
| 225 | static struct plat_sci_port scif3_platform_data = { | ||
| 226 | .mapbase = 0xfffe9800, | ||
| 227 | .flags = UPF_BOOT_AUTOCONF, | ||
| 228 | .type = PORT_SCIF, | ||
| 229 | .irqs = { 192, 192, 192, 192 } | ||
| 230 | }; | ||
| 231 | |||
| 232 | static struct platform_device scif3_device = { | ||
| 233 | .name = "sh-sci", | ||
| 234 | .id = 3, | ||
| 235 | .dev = { | ||
| 236 | .platform_data = &scif3_platform_data, | ||
| 237 | }, | ||
| 238 | }; | ||
| 239 | |||
| 240 | static struct plat_sci_port scif4_platform_data = { | ||
| 241 | .mapbase = 0xfffea000, | ||
| 242 | .flags = UPF_BOOT_AUTOCONF, | ||
| 243 | .type = PORT_SCIF, | ||
| 244 | .irqs = { 196, 196, 196, 196 } | ||
| 245 | }; | ||
| 246 | |||
| 247 | static struct platform_device scif4_device = { | ||
| 248 | .name = "sh-sci", | ||
| 249 | .id = 4, | ||
| 250 | .dev = { | ||
| 251 | .platform_data = &scif4_platform_data, | ||
| 252 | }, | ||
| 253 | }; | ||
| 254 | |||
| 255 | static struct plat_sci_port scif5_platform_data = { | ||
| 256 | .mapbase = 0xfffea800, | ||
| 257 | .flags = UPF_BOOT_AUTOCONF, | ||
| 258 | .type = PORT_SCIF, | ||
| 259 | .irqs = { 200, 200, 200, 200 } | ||
| 260 | }; | ||
| 261 | |||
| 262 | static struct platform_device scif5_device = { | ||
| 263 | .name = "sh-sci", | ||
| 264 | .id = 5, | ||
| 265 | .dev = { | ||
| 266 | .platform_data = &scif5_platform_data, | ||
| 267 | }, | ||
| 268 | }; | ||
| 269 | |||
| 270 | static struct plat_sci_port scif6_platform_data = { | ||
| 271 | .mapbase = 0xfffeb000, | ||
| 272 | .flags = UPF_BOOT_AUTOCONF, | ||
| 273 | .type = PORT_SCIF, | ||
| 274 | .irqs = { 204, 204, 204, 204 } | ||
| 275 | }; | ||
| 276 | |||
| 277 | static struct platform_device scif6_device = { | ||
| 278 | .name = "sh-sci", | ||
| 279 | .id = 6, | ||
| 280 | .dev = { | ||
| 281 | .platform_data = &scif6_platform_data, | ||
| 282 | }, | ||
| 283 | }; | ||
| 284 | |||
| 285 | static struct plat_sci_port scif7_platform_data = { | ||
| 286 | .mapbase = 0xfffeb800, | ||
| 287 | .flags = UPF_BOOT_AUTOCONF, | ||
| 288 | .type = PORT_SCIF, | ||
| 289 | .irqs = { 208, 208, 208, 208 } | ||
| 290 | }; | ||
| 291 | |||
| 292 | static struct platform_device scif7_device = { | ||
| 293 | .name = "sh-sci", | ||
| 294 | .id = 7, | ||
| 229 | .dev = { | 295 | .dev = { |
| 230 | .platform_data = sci_platform_data, | 296 | .platform_data = &scif7_platform_data, |
| 231 | }, | 297 | }, |
| 232 | }; | 298 | }; |
| 233 | 299 | ||
| @@ -345,7 +411,14 @@ static struct platform_device mtu2_2_device = { | |||
| 345 | }; | 411 | }; |
| 346 | 412 | ||
| 347 | static struct platform_device *sh7201_devices[] __initdata = { | 413 | static struct platform_device *sh7201_devices[] __initdata = { |
| 348 | &sci_device, | 414 | &scif0_device, |
| 415 | &scif1_device, | ||
| 416 | &scif2_device, | ||
| 417 | &scif3_device, | ||
| 418 | &scif4_device, | ||
| 419 | &scif5_device, | ||
| 420 | &scif6_device, | ||
| 421 | &scif7_device, | ||
| 349 | &rtc_device, | 422 | &rtc_device, |
| 350 | &mtu2_0_device, | 423 | &mtu2_0_device, |
| 351 | &mtu2_1_device, | 424 | &mtu2_1_device, |
| @@ -365,6 +438,14 @@ void __init plat_irq_setup(void) | |||
| 365 | } | 438 | } |
| 366 | 439 | ||
| 367 | static struct platform_device *sh7201_early_devices[] __initdata = { | 440 | static struct platform_device *sh7201_early_devices[] __initdata = { |
| 441 | &scif0_device, | ||
| 442 | &scif1_device, | ||
| 443 | &scif2_device, | ||
| 444 | &scif3_device, | ||
| 445 | &scif4_device, | ||
| 446 | &scif5_device, | ||
| 447 | &scif6_device, | ||
| 448 | &scif7_device, | ||
| 368 | &mtu2_0_device, | 449 | &mtu2_0_device, |
| 369 | &mtu2_1_device, | 450 | &mtu2_1_device, |
| 370 | &mtu2_2_device, | 451 | &mtu2_2_device, |
diff --git a/arch/sh/kernel/cpu/sh2a/setup-sh7203.c b/arch/sh/kernel/cpu/sh2a/setup-sh7203.c index d3fd536c9a84..3136966cc9b3 100644 --- a/arch/sh/kernel/cpu/sh2a/setup-sh7203.c +++ b/arch/sh/kernel/cpu/sh2a/setup-sh7203.c | |||
| @@ -173,37 +173,63 @@ static struct intc_mask_reg mask_registers[] __initdata = { | |||
| 173 | static DECLARE_INTC_DESC(intc_desc, "sh7203", vectors, groups, | 173 | static DECLARE_INTC_DESC(intc_desc, "sh7203", vectors, groups, |
| 174 | mask_registers, prio_registers, NULL); | 174 | mask_registers, prio_registers, NULL); |
| 175 | 175 | ||
| 176 | static struct plat_sci_port sci_platform_data[] = { | 176 | static struct plat_sci_port scif0_platform_data = { |
| 177 | { | 177 | .mapbase = 0xfffe8000, |
| 178 | .mapbase = 0xfffe8000, | 178 | .flags = UPF_BOOT_AUTOCONF, |
| 179 | .flags = UPF_BOOT_AUTOCONF, | 179 | .type = PORT_SCIF, |
| 180 | .type = PORT_SCIF, | 180 | .irqs = { 192, 192, 192, 192 }, |
| 181 | .irqs = { 192, 192, 192, 192 }, | ||
| 182 | }, { | ||
| 183 | .mapbase = 0xfffe8800, | ||
| 184 | .flags = UPF_BOOT_AUTOCONF, | ||
| 185 | .type = PORT_SCIF, | ||
| 186 | .irqs = { 196, 196, 196, 196 }, | ||
| 187 | }, { | ||
| 188 | .mapbase = 0xfffe9000, | ||
| 189 | .flags = UPF_BOOT_AUTOCONF, | ||
| 190 | .type = PORT_SCIF, | ||
| 191 | .irqs = { 200, 200, 200, 200 }, | ||
| 192 | }, { | ||
| 193 | .mapbase = 0xfffe9800, | ||
| 194 | .flags = UPF_BOOT_AUTOCONF, | ||
| 195 | .type = PORT_SCIF, | ||
| 196 | .irqs = { 204, 204, 204, 204 }, | ||
| 197 | }, { | ||
| 198 | .flags = 0, | ||
| 199 | } | ||
| 200 | }; | 181 | }; |
| 201 | 182 | ||
| 202 | static struct platform_device sci_device = { | 183 | static struct platform_device scif0_device = { |
| 203 | .name = "sh-sci", | 184 | .name = "sh-sci", |
| 204 | .id = -1, | 185 | .id = 0, |
| 186 | .dev = { | ||
| 187 | .platform_data = &scif0_platform_data, | ||
| 188 | }, | ||
| 189 | }; | ||
| 190 | |||
| 191 | static struct plat_sci_port scif1_platform_data = { | ||
| 192 | .mapbase = 0xfffe8800, | ||
| 193 | .flags = UPF_BOOT_AUTOCONF, | ||
| 194 | .type = PORT_SCIF, | ||
| 195 | .irqs = { 196, 196, 196, 196 }, | ||
| 196 | }; | ||
| 197 | |||
| 198 | static struct platform_device scif1_device = { | ||
| 199 | .name = "sh-sci", | ||
| 200 | .id = 1, | ||
| 201 | .dev = { | ||
| 202 | .platform_data = &scif1_platform_data, | ||
| 203 | }, | ||
| 204 | }; | ||
| 205 | |||
| 206 | static struct plat_sci_port scif2_platform_data = { | ||
| 207 | .mapbase = 0xfffe9000, | ||
| 208 | .flags = UPF_BOOT_AUTOCONF, | ||
| 209 | .type = PORT_SCIF, | ||
| 210 | .irqs = { 200, 200, 200, 200 }, | ||
| 211 | }; | ||
| 212 | |||
| 213 | static struct platform_device scif2_device = { | ||
| 214 | .name = "sh-sci", | ||
| 215 | .id = 2, | ||
| 216 | .dev = { | ||
| 217 | .platform_data = &scif2_platform_data, | ||
| 218 | }, | ||
| 219 | }; | ||
| 220 | |||
| 221 | static struct plat_sci_port scif3_platform_data = { | ||
| 222 | .mapbase = 0xfffe9800, | ||
| 223 | .flags = UPF_BOOT_AUTOCONF, | ||
| 224 | .type = PORT_SCIF, | ||
| 225 | .irqs = { 204, 204, 204, 204 }, | ||
| 226 | }; | ||
| 227 | |||
| 228 | static struct platform_device scif3_device = { | ||
| 229 | .name = "sh-sci", | ||
| 230 | .id = 3, | ||
| 205 | .dev = { | 231 | .dev = { |
| 206 | .platform_data = sci_platform_data, | 232 | .platform_data = &scif3_platform_data, |
| 207 | }, | 233 | }, |
| 208 | }; | 234 | }; |
| 209 | 235 | ||
| @@ -354,7 +380,10 @@ static struct platform_device rtc_device = { | |||
| 354 | }; | 380 | }; |
| 355 | 381 | ||
| 356 | static struct platform_device *sh7203_devices[] __initdata = { | 382 | static struct platform_device *sh7203_devices[] __initdata = { |
| 357 | &sci_device, | 383 | &scif0_device, |
| 384 | &scif1_device, | ||
| 385 | &scif2_device, | ||
| 386 | &scif3_device, | ||
| 358 | &cmt0_device, | 387 | &cmt0_device, |
| 359 | &cmt1_device, | 388 | &cmt1_device, |
| 360 | &mtu2_0_device, | 389 | &mtu2_0_device, |
| @@ -375,6 +404,10 @@ void __init plat_irq_setup(void) | |||
| 375 | } | 404 | } |
| 376 | 405 | ||
| 377 | static struct platform_device *sh7203_early_devices[] __initdata = { | 406 | static struct platform_device *sh7203_early_devices[] __initdata = { |
| 407 | &scif0_device, | ||
| 408 | &scif1_device, | ||
| 409 | &scif2_device, | ||
| 410 | &scif3_device, | ||
| 378 | &cmt0_device, | 411 | &cmt0_device, |
| 379 | &cmt1_device, | 412 | &cmt1_device, |
| 380 | &mtu2_0_device, | 413 | &mtu2_0_device, |
diff --git a/arch/sh/kernel/cpu/sh2a/setup-sh7206.c b/arch/sh/kernel/cpu/sh2a/setup-sh7206.c index a9ccc5e8d9e9..064873585a8b 100644 --- a/arch/sh/kernel/cpu/sh2a/setup-sh7206.c +++ b/arch/sh/kernel/cpu/sh2a/setup-sh7206.c | |||
| @@ -133,37 +133,63 @@ static struct intc_mask_reg mask_registers[] __initdata = { | |||
| 133 | static DECLARE_INTC_DESC(intc_desc, "sh7206", vectors, groups, | 133 | static DECLARE_INTC_DESC(intc_desc, "sh7206", vectors, groups, |
| 134 | mask_registers, prio_registers, NULL); | 134 | mask_registers, prio_registers, NULL); |
| 135 | 135 | ||
| 136 | static struct plat_sci_port sci_platform_data[] = { | 136 | static struct plat_sci_port scif0_platform_data = { |
| 137 | { | 137 | .mapbase = 0xfffe8000, |
| 138 | .mapbase = 0xfffe8000, | 138 | .flags = UPF_BOOT_AUTOCONF, |
| 139 | .flags = UPF_BOOT_AUTOCONF, | 139 | .type = PORT_SCIF, |
| 140 | .type = PORT_SCIF, | 140 | .irqs = { 240, 240, 240, 240 }, |
| 141 | .irqs = { 240, 240, 240, 240 }, | ||
| 142 | }, { | ||
| 143 | .mapbase = 0xfffe8800, | ||
| 144 | .flags = UPF_BOOT_AUTOCONF, | ||
| 145 | .type = PORT_SCIF, | ||
| 146 | .irqs = { 244, 244, 244, 244 }, | ||
| 147 | }, { | ||
| 148 | .mapbase = 0xfffe9000, | ||
| 149 | .flags = UPF_BOOT_AUTOCONF, | ||
| 150 | .type = PORT_SCIF, | ||
| 151 | .irqs = { 248, 248, 248, 248 }, | ||
| 152 | }, { | ||
| 153 | .mapbase = 0xfffe9800, | ||
| 154 | .flags = UPF_BOOT_AUTOCONF, | ||
| 155 | .type = PORT_SCIF, | ||
| 156 | .irqs = { 252, 252, 252, 252 }, | ||
| 157 | }, { | ||
| 158 | .flags = 0, | ||
| 159 | } | ||
| 160 | }; | 141 | }; |
| 161 | 142 | ||
| 162 | static struct platform_device sci_device = { | 143 | static struct platform_device scif0_device = { |
| 163 | .name = "sh-sci", | 144 | .name = "sh-sci", |
| 164 | .id = -1, | 145 | .id = 0, |
| 146 | .dev = { | ||
| 147 | .platform_data = &scif0_platform_data, | ||
| 148 | }, | ||
| 149 | }; | ||
| 150 | |||
| 151 | static struct plat_sci_port scif1_platform_data = { | ||
| 152 | .mapbase = 0xfffe8800, | ||
| 153 | .flags = UPF_BOOT_AUTOCONF, | ||
| 154 | .type = PORT_SCIF, | ||
| 155 | .irqs = { 244, 244, 244, 244 }, | ||
| 156 | }; | ||
| 157 | |||
| 158 | static struct platform_device scif1_device = { | ||
| 159 | .name = "sh-sci", | ||
| 160 | .id = 1, | ||
| 161 | .dev = { | ||
| 162 | .platform_data = &scif1_platform_data, | ||
| 163 | }, | ||
| 164 | }; | ||
| 165 | |||
| 166 | static struct plat_sci_port scif2_platform_data = { | ||
| 167 | .mapbase = 0xfffe9000, | ||
| 168 | .flags = UPF_BOOT_AUTOCONF, | ||
| 169 | .type = PORT_SCIF, | ||
| 170 | .irqs = { 248, 248, 248, 248 }, | ||
| 171 | }; | ||
| 172 | |||
| 173 | static struct platform_device scif2_device = { | ||
| 174 | .name = "sh-sci", | ||
| 175 | .id = 2, | ||
| 176 | .dev = { | ||
| 177 | .platform_data = &scif2_platform_data, | ||
| 178 | }, | ||
| 179 | }; | ||
| 180 | |||
| 181 | static struct plat_sci_port scif3_platform_data = { | ||
| 182 | .mapbase = 0xfffe9800, | ||
| 183 | .flags = UPF_BOOT_AUTOCONF, | ||
| 184 | .type = PORT_SCIF, | ||
| 185 | .irqs = { 252, 252, 252, 252 }, | ||
| 186 | }; | ||
| 187 | |||
| 188 | static struct platform_device scif3_device = { | ||
| 189 | .name = "sh-sci", | ||
| 190 | .id = 3, | ||
| 165 | .dev = { | 191 | .dev = { |
| 166 | .platform_data = sci_platform_data, | 192 | .platform_data = &scif3_platform_data, |
| 167 | }, | 193 | }, |
| 168 | }; | 194 | }; |
| 169 | 195 | ||
| @@ -325,7 +351,10 @@ static struct platform_device mtu2_2_device = { | |||
| 325 | }; | 351 | }; |
| 326 | 352 | ||
| 327 | static struct platform_device *sh7206_devices[] __initdata = { | 353 | static struct platform_device *sh7206_devices[] __initdata = { |
| 328 | &sci_device, | 354 | &scif0_device, |
| 355 | &scif1_device, | ||
| 356 | &scif2_device, | ||
| 357 | &scif3_device, | ||
| 329 | &cmt0_device, | 358 | &cmt0_device, |
| 330 | &cmt1_device, | 359 | &cmt1_device, |
| 331 | &mtu2_0_device, | 360 | &mtu2_0_device, |
| @@ -346,6 +375,10 @@ void __init plat_irq_setup(void) | |||
| 346 | } | 375 | } |
| 347 | 376 | ||
| 348 | static struct platform_device *sh7206_early_devices[] __initdata = { | 377 | static struct platform_device *sh7206_early_devices[] __initdata = { |
| 378 | &scif0_device, | ||
| 379 | &scif1_device, | ||
| 380 | &scif2_device, | ||
| 381 | &scif3_device, | ||
| 349 | &cmt0_device, | 382 | &cmt0_device, |
| 350 | &cmt1_device, | 383 | &cmt1_device, |
| 351 | &mtu2_0_device, | 384 | &mtu2_0_device, |
