diff options
author | Kuninori Morimoto <morimoto.kuninori@renesas.com> | 2009-06-10 01:04:32 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-06-11 02:17:17 -0400 |
commit | f168dd00a9440a6f644db73bda47718fd12008e4 (patch) | |
tree | 522b1b4d20c2824b6196c3357d50d40cfe351cfb /arch/sh | |
parent | c5eeff1f8ecbc4bc7c1dd8e97a8610bc4dd3def8 (diff) |
sh: sh7724: Add JPU support
Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com>
Acked-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh')
-rw-r--r-- | arch/sh/kernel/cpu/sh4a/setup-sh7724.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c index 585dd85c6c4e..e5ac9eb11c63 100644 --- a/arch/sh/kernel/cpu/sh4a/setup-sh7724.c +++ b/arch/sh/kernel/cpu/sh4a/setup-sh7724.c | |||
@@ -451,6 +451,35 @@ static struct platform_device tmu5_device = { | |||
451 | .num_resources = ARRAY_SIZE(tmu5_resources), | 451 | .num_resources = ARRAY_SIZE(tmu5_resources), |
452 | }; | 452 | }; |
453 | 453 | ||
454 | /* JPU */ | ||
455 | static struct uio_info jpu_platform_data = { | ||
456 | .name = "JPU", | ||
457 | .version = "0", | ||
458 | .irq = 27, | ||
459 | }; | ||
460 | |||
461 | static struct resource jpu_resources[] = { | ||
462 | [0] = { | ||
463 | .name = "JPU", | ||
464 | .start = 0xfe980000, | ||
465 | .end = 0xfe9902d3, | ||
466 | .flags = IORESOURCE_MEM, | ||
467 | }, | ||
468 | [1] = { | ||
469 | /* place holder for contiguous memory */ | ||
470 | }, | ||
471 | }; | ||
472 | |||
473 | static struct platform_device jpu_device = { | ||
474 | .name = "uio_pdrv_genirq", | ||
475 | .id = 3, | ||
476 | .dev = { | ||
477 | .platform_data = &jpu_platform_data, | ||
478 | }, | ||
479 | .resource = jpu_resources, | ||
480 | .num_resources = ARRAY_SIZE(jpu_resources), | ||
481 | }; | ||
482 | |||
454 | static struct platform_device *sh7724_devices[] __initdata = { | 483 | static struct platform_device *sh7724_devices[] __initdata = { |
455 | &cmt_device, | 484 | &cmt_device, |
456 | &tmu0_device, | 485 | &tmu0_device, |
@@ -466,6 +495,7 @@ static struct platform_device *sh7724_devices[] __initdata = { | |||
466 | &vpu_device, | 495 | &vpu_device, |
467 | &veu0_device, | 496 | &veu0_device, |
468 | &veu1_device, | 497 | &veu1_device, |
498 | &jpu_device, | ||
469 | }; | 499 | }; |
470 | 500 | ||
471 | static int __init sh7724_devices_setup(void) | 501 | static int __init sh7724_devices_setup(void) |
@@ -473,6 +503,7 @@ static int __init sh7724_devices_setup(void) | |||
473 | platform_resource_setup_memory(&vpu_device, "vpu", 2 << 20); | 503 | platform_resource_setup_memory(&vpu_device, "vpu", 2 << 20); |
474 | platform_resource_setup_memory(&veu0_device, "veu0", 2 << 20); | 504 | platform_resource_setup_memory(&veu0_device, "veu0", 2 << 20); |
475 | platform_resource_setup_memory(&veu1_device, "veu1", 2 << 20); | 505 | platform_resource_setup_memory(&veu1_device, "veu1", 2 << 20); |
506 | platform_resource_setup_memory(&jpu_device, "jpu", 2 << 20); | ||
476 | 507 | ||
477 | return platform_add_devices(sh7724_devices, | 508 | return platform_add_devices(sh7724_devices, |
478 | ARRAY_SIZE(sh7724_devices)); | 509 | ARRAY_SIZE(sh7724_devices)); |