diff options
author | Heiko Schocher <hs@denx.de> | 2012-01-19 08:05:21 +0100 |
---|---|---|
committer | Sekhar Nori <nsekhar@ti.com> | 2012-02-03 00:52:15 +0530 |
commit | 0b7580ba9d4ac653cf39fa754c21fa36c080e444 (patch) | |
tree | 9b8a4b963a6f133a6172f31b126cee128fd234d4 | |
parent | 62aa2b537c6f5957afd98e29f96897419ed5ebab (diff) | |
download | op-kernel-dev-0b7580ba9d4ac653cf39fa754c21fa36c080e444.zip op-kernel-dev-0b7580ba9d4ac653cf39fa754c21fa36c080e444.tar.gz |
ARM: davinci: map default_queue to edma channels
Default queue is expected to be a low-priority queue.
This way, long transfers on the default queue started
by the codec engine will not cause audio defects.
Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Juha Kuikka <juha.kuikka@gmail.com>
Reported-by: Juha Kuikka <juha.kuikka@gmail.com>
Acked-by: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
Cc: linux-mmc@vger.kernel.org
Cc: davinci-linux-open-source@linux.davincidsp.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: Rajashekhara, Sudhakar <sudhakar.raj@ti.com>
Cc: Ido Yariv <ido@wizery.com>
Cc: Sekhar Nori <nsekhar@ti.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Sergei Shtylyov <sshtylyov@mvista.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
-rw-r--r-- | arch/arm/mach-davinci/dma.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-davinci/include/mach/edma.h | 5 |
2 files changed, 6 insertions, 5 deletions
diff --git a/arch/arm/mach-davinci/dma.c b/arch/arm/mach-davinci/dma.c index da90103..fd33919 100644 --- a/arch/arm/mach-davinci/dma.c +++ b/arch/arm/mach-davinci/dma.c @@ -1508,12 +1508,8 @@ static int __init edma_probe(struct platform_device *pdev) goto fail; } - /* Everything lives on transfer controller 1 until otherwise - * specified. This way, long transfers on the low priority queue - * started by the codec engine will not cause audio defects. - */ for (i = 0; i < edma_cc[j]->num_channels; i++) - map_dmach_queue(j, i, EVENTQ_1); + map_dmach_queue(j, i, info[j]->default_queue); queue_tc_mapping = info[j]->queue_tc_mapping; queue_priority_mapping = info[j]->queue_priority_mapping; diff --git a/arch/arm/mach-davinci/include/mach/edma.h b/arch/arm/mach-davinci/include/mach/edma.h index 20c77f2..7e84c90 100644 --- a/arch/arm/mach-davinci/include/mach/edma.h +++ b/arch/arm/mach-davinci/include/mach/edma.h @@ -250,6 +250,11 @@ struct edma_soc_info { unsigned n_slot; unsigned n_tc; unsigned n_cc; + /* + * Default queue is expected to be a low-priority queue. + * This way, long transfers on the default queue started + * by the codec engine will not cause audio defects. + */ enum dma_event_q default_queue; /* Resource reservation for other cores */ |