]> git.baikalelectronics.ru Git - kernel.git/commit
ASoC: davinci: let platform data define edma queue numbers
authorSekhar Nori <nsekhar@ti.com>
Mon, 19 Jul 2010 07:01:16 +0000 (12:31 +0530)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Tue, 20 Jul 2010 08:57:20 +0000 (09:57 +0100)
commit97b5b8f20f53d654bc2249ad2c781c57251f4b6e
tree7a2825b052267b6c74f320f375d5820ee66954fe
parente8e61a5eca2df7f63850ffb4d7611dfa113c2660
ASoC: davinci: let platform data define edma queue numbers

Currently the EDMA queue to be used by for servicing ASP through
internal RAM is fixed to EDMAQ_0 and that to service internal RAM
from external RAM is fixed to EDMAQ_1.

This may not be the desirable configuration on all platforms. For
example, on DM365, queue 0 has large fifo size and is more suitable
for video transfers. Having audio and video transfers on the same
queue may lead to starvation on audio side.

platform data as defined currently passes a queue number to the driver
but that remains unused inside the driver.

Fix this by defining one queue each for ASP and RAM transfers in the
platform data and using it inside the driver.

Since EDMAQ_0 maps to 0, thats the queue that will be used if
the asp queue number is not initialized. None of the platforms
currently utilize ping-pong transfers through internal RAM so that
functionality remains unchanged too.

This patch has been tested on DM644x and OMAP-L138 EVMs.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
arch/arm/mach-davinci/board-da830-evm.c
arch/arm/mach-davinci/board-da850-evm.c
arch/arm/mach-davinci/board-dm646x-evm.c
arch/arm/mach-davinci/include/mach/asp.h
sound/soc/davinci/davinci-i2s.c
sound/soc/davinci/davinci-mcasp.c
sound/soc/davinci/davinci-pcm.c
sound/soc/davinci/davinci-pcm.h