diff options
Diffstat (limited to 'arch/arm/mach-davinci/dm644x.c')
-rw-r--r-- | arch/arm/mach-davinci/dm644x.c | 41 |
1 files changed, 32 insertions, 9 deletions
diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c index fb5449b3c97b..d145c0cbfe6a 100644 --- a/arch/arm/mach-davinci/dm644x.c +++ b/arch/arm/mach-davinci/dm644x.c | |||
@@ -484,17 +484,38 @@ static const s8 dma_chan_dm644x_no_event[] = { | |||
484 | -1 | 484 | -1 |
485 | }; | 485 | }; |
486 | 486 | ||
487 | static struct edma_soc_info dm644x_edma_info = { | 487 | static const s8 |
488 | .n_channel = 64, | 488 | queue_tc_mapping[][2] = { |
489 | .n_region = 4, | 489 | /* {event queue no, TC no} */ |
490 | .n_slot = 128, | 490 | {0, 0}, |
491 | .n_tc = 2, | 491 | {1, 1}, |
492 | .noevent = dma_chan_dm644x_no_event, | 492 | {-1, -1}, |
493 | }; | ||
494 | |||
495 | static const s8 | ||
496 | queue_priority_mapping[][2] = { | ||
497 | /* {event queue no, Priority} */ | ||
498 | {0, 3}, | ||
499 | {1, 7}, | ||
500 | {-1, -1}, | ||
501 | }; | ||
502 | |||
503 | static struct edma_soc_info dm644x_edma_info[] = { | ||
504 | { | ||
505 | .n_channel = 64, | ||
506 | .n_region = 4, | ||
507 | .n_slot = 128, | ||
508 | .n_tc = 2, | ||
509 | .n_cc = 1, | ||
510 | .noevent = dma_chan_dm644x_no_event, | ||
511 | .queue_tc_mapping = queue_tc_mapping, | ||
512 | .queue_priority_mapping = queue_priority_mapping, | ||
513 | }, | ||
493 | }; | 514 | }; |
494 | 515 | ||
495 | static struct resource edma_resources[] = { | 516 | static struct resource edma_resources[] = { |
496 | { | 517 | { |
497 | .name = "edma_cc", | 518 | .name = "edma_cc0", |
498 | .start = 0x01c00000, | 519 | .start = 0x01c00000, |
499 | .end = 0x01c00000 + SZ_64K - 1, | 520 | .end = 0x01c00000 + SZ_64K - 1, |
500 | .flags = IORESOURCE_MEM, | 521 | .flags = IORESOURCE_MEM, |
@@ -512,10 +533,12 @@ static struct resource edma_resources[] = { | |||
512 | .flags = IORESOURCE_MEM, | 533 | .flags = IORESOURCE_MEM, |
513 | }, | 534 | }, |
514 | { | 535 | { |
536 | .name = "edma0", | ||
515 | .start = IRQ_CCINT0, | 537 | .start = IRQ_CCINT0, |
516 | .flags = IORESOURCE_IRQ, | 538 | .flags = IORESOURCE_IRQ, |
517 | }, | 539 | }, |
518 | { | 540 | { |
541 | .name = "edma0_err", | ||
519 | .start = IRQ_CCERRINT, | 542 | .start = IRQ_CCERRINT, |
520 | .flags = IORESOURCE_IRQ, | 543 | .flags = IORESOURCE_IRQ, |
521 | }, | 544 | }, |
@@ -524,8 +547,8 @@ static struct resource edma_resources[] = { | |||
524 | 547 | ||
525 | static struct platform_device dm644x_edma_device = { | 548 | static struct platform_device dm644x_edma_device = { |
526 | .name = "edma", | 549 | .name = "edma", |
527 | .id = -1, | 550 | .id = 0, |
528 | .dev.platform_data = &dm644x_edma_info, | 551 | .dev.platform_data = dm644x_edma_info, |
529 | .num_resources = ARRAY_SIZE(edma_resources), | 552 | .num_resources = ARRAY_SIZE(edma_resources), |
530 | .resource = edma_resources, | 553 | .resource = edma_resources, |
531 | }; | 554 | }; |