ASoC: dmaengine-pcm: Make requesting the DMA channel at PCM open optional
authorLars-Peter Clausen <lars@metafoo.de>
Mon, 15 Apr 2013 17:19:48 +0000 (19:19 +0200)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Wed, 17 Apr 2013 13:17:54 +0000 (14:17 +0100)
commit7c1c1d4a7b4ca1266057a3632d27450f5575caf9
tree39e53ebd108b551ba939fd13ca9e3c2f8f869400
parent69b6f19622ce0aef41df884b75e3f789c64b89c0
ASoC: dmaengine-pcm: Make requesting the DMA channel at PCM open optional

Refactor the dmaengine PCM library to allow the DMA channel to be requested
before opening a PCM substream. snd_dmaengine_pcm_open() now expects a DMA
channel instead of a filter function and filter parameter as its parameters.
snd_dmaengine_pcm_close() is updated to not release the DMA channel. This allows
a dmaengine based PCM driver to request its channels before the substream is
opened.

The patch also introduces two new functions, snd_dmaengine_pcm_open_request_chan()
and snd_dmaengine_pcm_close_release_chan(), which have the same signature and
behaviour of the old snd_dmaengine_pcm_{open,close}() and internally use the new
variants of these functions. All users of snd_dmaengine_pcm_{open,close}() are
updated to use snd_dmaengine_pcm_open_request_chan() and
snd_dmaengine_pcm_close_release_chan().

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Tested-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
include/sound/dmaengine_pcm.h
sound/soc/atmel/atmel-pcm-dma.c
sound/soc/cirrus/ep93xx-pcm.c
sound/soc/fsl/imx-pcm-dma.c
sound/soc/mxs/mxs-pcm.c
sound/soc/omap/omap-pcm.c
sound/soc/pxa/mmp-pcm.c
sound/soc/soc-dmaengine-pcm.c
sound/soc/spear/spear_pcm.c
sound/soc/tegra/tegra_pcm.c
sound/soc/ux500/ux500_pcm.c