linux/sound/soc/omap
Peter Ujfalusi cf80e15860 ASoC: omap-mcbsp: Support for sDMA packet mode
Utilize the sDMA controller's packet syncronization mode, when
the McBSP FIFO is in use (by extending the THRESHOLD mode).
When the sDMA is configured for packet mode, the sDMA frame size
does not need to match with the McBSP threshold configuration.
Uppon DMA request the sDMA will transfer packet size number of
words, and still trigger interrupt on frame boundary.

The patch extends the original THRESHOLD mode by doing the
following:

if (period_words <= max_threshold)
Current THRESHOLD mode configuration

Otherwise (period_words > max_threshold)
McBSP threshold = sDMA packet size
sDMA frame size = period size

With the extended THRESHOLD mode we can remove the constraint
for the maximum period size, since if the period size is
bigger than the maximum allowed threshold, than the driver
will switch to packet mode, and picks the best (biggest)
threshold value, which can divide evenly the period size.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Acked-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-02 10:38:16 +01:00
..
am3517evm.c ASoC: Adding OMAP3517 / AM3517 EVM support in ASOC 2009-10-29 22:28:18 +00:00
ams-delta.c Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 2009-12-08 08:15:29 -08:00
igep0020.c ASoC: Add support for IGEP v2 2009-11-19 10:48:43 +00:00
Kconfig ASoC: SDP4430: Add sdp4430 machine driver 2010-05-19 14:04:40 +01:00
Makefile ASoC: SDP4430: Add sdp4430 machine driver 2010-05-19 14:04:40 +01:00
mcpdm.c Merge branch 'topic/asoc' into for-linus 2010-05-20 12:00:43 +02:00
mcpdm.h ASoC: OMAP4: Add support for McPDM 2010-02-23 10:39:48 +00:00
n810.c omap: headers: Move remaining headers from include/mach to include/plat 2009-10-20 09:40:47 -07:00
omap2evm.c omap: headers: Move remaining headers from include/mach to include/plat 2009-10-20 09:40:47 -07:00
omap3beagle.c Add ASoC support for Devkit8000 2010-02-11 19:49:48 +00:00
omap3evm.c Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 2009-12-08 08:15:29 -08:00
omap3pandora.c ASoC: pandora: fix CLKX polarity 2010-06-21 18:16:17 +01:00
omap-mcbsp.c ASoC: omap-mcbsp: Support for sDMA packet mode 2010-08-02 10:38:16 +01:00
omap-mcbsp.h ASoC: OMAP-McBSP: ASoC interface for McBSP sidetone 2010-02-23 10:57:39 -08:00
omap-mcpdm.c ALSA: ASoC: move dma_data from snd_soc_dai to snd_soc_pcm_stream 2010-04-05 19:14:11 +01:00
omap-mcpdm.h ASoC: OMAP4: Add McPDM platform driver 2010-02-23 10:41:05 +00:00
omap-pcm.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 2010-04-07 08:42:25 -07:00
omap-pcm.h ASoC: OMAP: data_type and sync_mode configurable in audio dma 2010-02-23 10:38:52 +00:00
osk5912.c omap: headers: Move remaining headers from include/mach to include/plat 2009-10-20 09:40:47 -07:00
overo.c Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 2009-12-08 08:15:29 -08:00
rx51.c ASoC: RX-51: Add basic jack detection 2010-06-23 11:29:14 +01:00
sdp3430.c mfd: twl: fix twl4030 rename for remaining driver, board files 2009-12-16 12:44:04 -08:00
sdp4430.c ASoC: sdp4430 - add sdp4430 pcm ops to DAI. 2010-05-19 14:14:51 +01:00
zoom2.c ASoC: zoom2 - update DAPM pins 2010-04-28 13:27:18 +01:00