aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/dm646x.c
diff options
context:
space:
mode:
authorSudhakar Rajashekhara <sudhakar.raj@ti.com>2010-01-06 06:59:49 -0500
committerKevin Hilman <khilman@deeprootsystems.com>2010-02-04 16:30:02 -0500
commitf900d552f95a009e4c4910aff7acbd45f952aa2e (patch)
tree8c326e61d18d65c502414c178d5dc49ca1a020a7 /arch/arm/mach-davinci/dm646x.c
parent447f18f1b4a3e86159353d016dcaac25414b3a42 (diff)
davinci: build list of unused EDMA events dynamically
Currently, the edma_noevent list is passed from platform data. But on some architectures, there will be many EDMA channels which will not be used at all. This patch scans all the platform devices and then builds a list of events which are not being used. The unused event list will be used to allocate EDMA channels in case of EDMA_CHANNEL_ANY usage instead of the edma_noevent being used earlier for this purpose. This patch is based on David Brownells's suggestion at http://article.gmane.org/gmane.linux.davinci/15176. Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
Diffstat (limited to 'arch/arm/mach-davinci/dm646x.c')
-rw-r--r--arch/arm/mach-davinci/dm646x.c9
1 files changed, 0 insertions, 9 deletions
diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c
index 515d3edb9a3..7eb34e9253c 100644
--- a/arch/arm/mach-davinci/dm646x.c
+++ b/arch/arm/mach-davinci/dm646x.c
@@ -511,14 +511,6 @@ static u8 dm646x_default_priorities[DAVINCI_N_AINTC_IRQ] = {
511 511
512/*----------------------------------------------------------------------*/ 512/*----------------------------------------------------------------------*/
513 513
514static const s8 dma_chan_dm646x_no_event[] = {
515 0, 1, 2, 3, 13,
516 14, 15, 24, 25, 26,
517 27, 30, 31, 54, 55,
518 56,
519 -1
520};
521
522/* Four Transfer Controllers on DM646x */ 514/* Four Transfer Controllers on DM646x */
523static const s8 515static const s8
524dm646x_queue_tc_mapping[][2] = { 516dm646x_queue_tc_mapping[][2] = {
@@ -547,7 +539,6 @@ static struct edma_soc_info dm646x_edma_info[] = {
547 .n_slot = 512, 539 .n_slot = 512,
548 .n_tc = 4, 540 .n_tc = 4,
549 .n_cc = 1, 541 .n_cc = 1,
550 .noevent = dma_chan_dm646x_no_event,
551 .queue_tc_mapping = dm646x_queue_tc_mapping, 542 .queue_tc_mapping = dm646x_queue_tc_mapping,
552 .queue_priority_mapping = dm646x_queue_priority_mapping, 543 .queue_priority_mapping = dm646x_queue_priority_mapping,
553 }, 544 },