diff options
Diffstat (limited to 'arch/sh/kernel')
-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)); |