diff options
author | Peter Ujfalusi <peter.ujfalusi@ti.com> | 2011-05-12 06:04:55 -0400 |
---|---|---|
committer | Liam Girdwood <lrg@ti.com> | 2011-05-13 07:00:14 -0400 |
commit | b417382419c67fda6463e02eafb8efebd5f8759e (patch) | |
tree | bb491c29f1fb5eaf5e3ae2737a38e8af1a7e27e1 /sound/soc | |
parent | 63405ce85a4d902bd64ccb4477473d661ae52c95 (diff) |
ASoC: omap-pcm: Period wakeup disabling on OMAP2+
Allow disabling ALSA period wakeup interrupts.
This can only be done on OMAP2+ (2/3/4), since there
we can chain the DMA.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Jarkko Nikula <jhnikula@gmail.com>
Signed-off-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/omap/omap-pcm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/soc/omap/omap-pcm.c b/sound/soc/omap/omap-pcm.c index 0c6eb30e92b9..e6a6b991d05f 100644 --- a/sound/soc/omap/omap-pcm.c +++ b/sound/soc/omap/omap-pcm.c | |||
@@ -37,7 +37,8 @@ static const struct snd_pcm_hardware omap_pcm_hardware = { | |||
37 | SNDRV_PCM_INFO_MMAP_VALID | | 37 | SNDRV_PCM_INFO_MMAP_VALID | |
38 | SNDRV_PCM_INFO_INTERLEAVED | | 38 | SNDRV_PCM_INFO_INTERLEAVED | |
39 | SNDRV_PCM_INFO_PAUSE | | 39 | SNDRV_PCM_INFO_PAUSE | |
40 | SNDRV_PCM_INFO_RESUME, | 40 | SNDRV_PCM_INFO_RESUME | |
41 | SNDRV_PCM_INFO_NO_PERIOD_WAKEUP, | ||
41 | .formats = SNDRV_PCM_FMTBIT_S16_LE | | 42 | .formats = SNDRV_PCM_FMTBIT_S16_LE | |
42 | SNDRV_PCM_FMTBIT_S32_LE, | 43 | SNDRV_PCM_FMTBIT_S32_LE, |
43 | .period_bytes_min = 32, | 44 | .period_bytes_min = 32, |
@@ -195,7 +196,7 @@ static int omap_pcm_prepare(struct snd_pcm_substream *substream) | |||
195 | if ((cpu_is_omap1510())) | 196 | if ((cpu_is_omap1510())) |
196 | omap_enable_dma_irq(prtd->dma_ch, OMAP_DMA_FRAME_IRQ | | 197 | omap_enable_dma_irq(prtd->dma_ch, OMAP_DMA_FRAME_IRQ | |
197 | OMAP_DMA_LAST_IRQ | OMAP_DMA_BLOCK_IRQ); | 198 | OMAP_DMA_LAST_IRQ | OMAP_DMA_BLOCK_IRQ); |
198 | else | 199 | else if (!substream->runtime->no_period_wakeup) |
199 | omap_enable_dma_irq(prtd->dma_ch, OMAP_DMA_FRAME_IRQ); | 200 | omap_enable_dma_irq(prtd->dma_ch, OMAP_DMA_FRAME_IRQ); |
200 | 201 | ||
201 | if (!(cpu_class_is_omap1())) { | 202 | if (!(cpu_class_is_omap1())) { |