Lines Matching full:pcm
3 * atmel-pcm.c -- ALSA PCM interface for the Atmel atmel SoC.
10 * Based on at91-pcm. by:
14 * Based on pxa2xx-pcm.c by:
30 #include <sound/pcm.h>
34 #include "atmel-pcm.h"
37 static int atmel_pcm_preallocate_dma_buffer(struct snd_pcm *pcm, in atmel_pcm_preallocate_dma_buffer() argument
40 struct snd_pcm_substream *substream = pcm->streams[stream].substream; in atmel_pcm_preallocate_dma_buffer()
45 buf->dev.dev = pcm->card->dev; in atmel_pcm_preallocate_dma_buffer()
47 buf->area = dma_alloc_coherent(pcm->card->dev, size, in atmel_pcm_preallocate_dma_buffer()
49 pr_debug("atmel-pcm: alloc dma buffer: area=%p, addr=%p, size=%zu\n", in atmel_pcm_preallocate_dma_buffer()
72 struct snd_pcm *pcm = rtd->pcm; in atmel_pcm_new() local
79 if (pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream) { in atmel_pcm_new()
80 pr_debug("atmel-pcm: allocating PCM playback DMA buffer\n"); in atmel_pcm_new()
81 ret = atmel_pcm_preallocate_dma_buffer(pcm, in atmel_pcm_new()
87 if (pcm->streams[SNDRV_PCM_STREAM_CAPTURE].substream) { in atmel_pcm_new()
88 pr_debug("atmel-pcm: allocating PCM capture DMA buffer\n"); in atmel_pcm_new()
89 ret = atmel_pcm_preallocate_dma_buffer(pcm, in atmel_pcm_new()
99 struct snd_pcm *pcm) in atmel_pcm_free() argument
106 substream = pcm->streams[stream].substream; in atmel_pcm_free()
113 dma_free_coherent(pcm->card->dev, buf->bytes, in atmel_pcm_free()
163 pr_warn("atmel-pcm: buffer %s on %s (SSC_SR=%#x, count=%d)\n", in atmel_pcm_dma_irq()
200 * PCM operations
223 pr_debug("atmel-pcm: " in atmel_pcm_hw_params()
268 pr_debug("atmel-pcm:buffer_size = %ld," in atmel_pcm_trigger()
287 pr_debug("atmel-pcm: trigger: " in atmel_pcm_trigger()
400 MODULE_DESCRIPTION("Atmel PCM module");