diff options
Diffstat (limited to 'arch/arm/mach-davinci/dm646x.c')
| -rw-r--r-- | arch/arm/mach-davinci/dm646x.c | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c index 94045656cff6..e4a3df1872ac 100644 --- a/arch/arm/mach-davinci/dm646x.c +++ b/arch/arm/mach-davinci/dm646x.c | |||
| @@ -529,16 +529,18 @@ dm646x_queue_priority_mapping[][2] = { | |||
| 529 | {-1, -1}, | 529 | {-1, -1}, |
| 530 | }; | 530 | }; |
| 531 | 531 | ||
| 532 | static struct edma_soc_info dm646x_edma_info[] = { | 532 | static struct edma_soc_info edma_cc0_info = { |
| 533 | { | 533 | .n_channel = 64, |
| 534 | .n_channel = 64, | 534 | .n_region = 6, /* 0-1, 4-7 */ |
| 535 | .n_region = 6, /* 0-1, 4-7 */ | 535 | .n_slot = 512, |
| 536 | .n_slot = 512, | 536 | .n_tc = 4, |
| 537 | .n_tc = 4, | 537 | .n_cc = 1, |
| 538 | .n_cc = 1, | 538 | .queue_tc_mapping = dm646x_queue_tc_mapping, |
| 539 | .queue_tc_mapping = dm646x_queue_tc_mapping, | 539 | .queue_priority_mapping = dm646x_queue_priority_mapping, |
| 540 | .queue_priority_mapping = dm646x_queue_priority_mapping, | 540 | }; |
| 541 | }, | 541 | |
| 542 | static struct edma_soc_info *dm646x_edma_info[EDMA_MAX_CC] = { | ||
| 543 | &edma_cc0_info, | ||
| 542 | }; | 544 | }; |
| 543 | 545 | ||
| 544 | static struct resource edma_resources[] = { | 546 | static struct resource edma_resources[] = { |
| @@ -877,6 +879,13 @@ void dm646x_setup_vpif(struct vpif_display_config *display_config, | |||
| 877 | platform_device_register(&vpif_capture_dev); | 879 | platform_device_register(&vpif_capture_dev); |
| 878 | } | 880 | } |
| 879 | 881 | ||
| 882 | int __init dm646x_init_edma(struct edma_rsv_info *rsv) | ||
| 883 | { | ||
| 884 | edma_cc0_info.rsv = rsv; | ||
| 885 | |||
| 886 | return platform_device_register(&dm646x_edma_device); | ||
| 887 | } | ||
| 888 | |||
| 880 | void __init dm646x_init(void) | 889 | void __init dm646x_init(void) |
| 881 | { | 890 | { |
| 882 | dm646x_board_setup_refclk(&ref_clk); | 891 | dm646x_board_setup_refclk(&ref_clk); |
| @@ -888,7 +897,6 @@ static int __init dm646x_init_devices(void) | |||
| 888 | if (!cpu_is_davinci_dm646x()) | 897 | if (!cpu_is_davinci_dm646x()) |
| 889 | return 0; | 898 | return 0; |
| 890 | 899 | ||
| 891 | platform_device_register(&dm646x_edma_device); | ||
| 892 | platform_device_register(&dm646x_emac_device); | 900 | platform_device_register(&dm646x_emac_device); |
| 893 | return 0; | 901 | return 0; |
| 894 | } | 902 | } |
