Lines Matching refs:substream

59 static int lpass_platform_pcmops_open(struct snd_pcm_substream *substream)  in lpass_platform_pcmops_open()  argument
61 struct snd_pcm_runtime *runtime = substream->runtime; in lpass_platform_pcmops_open()
62 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_platform_pcmops_open()
65 snd_soc_set_runtime_hwparams(substream, &lpass_platform_pcm_hardware); in lpass_platform_pcmops_open()
77 snd_pcm_set_runtime_buffer(substream, &substream->dma_buffer); in lpass_platform_pcmops_open()
82 static int lpass_platform_pcmops_hw_params(struct snd_pcm_substream *substream, in lpass_platform_pcmops_hw_params() argument
85 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_platform_pcmops_hw_params()
170 static int lpass_platform_pcmops_hw_free(struct snd_pcm_substream *substream) in lpass_platform_pcmops_hw_free() argument
172 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_platform_pcmops_hw_free()
188 static int lpass_platform_pcmops_prepare(struct snd_pcm_substream *substream) in lpass_platform_pcmops_prepare() argument
190 struct snd_pcm_runtime *runtime = substream->runtime; in lpass_platform_pcmops_prepare()
191 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_platform_pcmops_prepare()
209 (snd_pcm_lib_buffer_bytes(substream) >> 2) - 1); in lpass_platform_pcmops_prepare()
218 (snd_pcm_lib_period_bytes(substream) >> 2) - 1); in lpass_platform_pcmops_prepare()
237 static int lpass_platform_pcmops_trigger(struct snd_pcm_substream *substream, in lpass_platform_pcmops_trigger() argument
240 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_platform_pcmops_trigger()
309 struct snd_pcm_substream *substream) in lpass_platform_pcmops_pointer() argument
311 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_platform_pcmops_pointer()
335 return bytes_to_frames(substream->runtime, curr_addr - base_addr); in lpass_platform_pcmops_pointer()
338 static int lpass_platform_pcmops_mmap(struct snd_pcm_substream *substream, in lpass_platform_pcmops_mmap() argument
341 struct snd_pcm_runtime *runtime = substream->runtime; in lpass_platform_pcmops_mmap()
343 return dma_mmap_coherent(substream->pcm->card->dev, vma, in lpass_platform_pcmops_mmap()
360 struct snd_pcm_substream *substream, in lpass_dma_interrupt_handler() argument
364 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_dma_interrupt_handler()
378 snd_pcm_period_elapsed(substream); in lpass_dma_interrupt_handler()
392 snd_pcm_stop(substream, SNDRV_PCM_STATE_XRUN); in lpass_dma_interrupt_handler()
406 snd_pcm_stop(substream, SNDRV_PCM_STATE_DISCONNECTED); in lpass_dma_interrupt_handler()
430 if (irqs & LPAIF_IRQ_ALL(chan) && drvdata->substream[chan]) { in lpass_platform_lpaif_irq()
432 drvdata->substream[chan], in lpass_platform_lpaif_irq()
442 static int lpass_platform_alloc_buffer(struct snd_pcm_substream *substream, in lpass_platform_alloc_buffer() argument
445 struct snd_dma_buffer *buf = &substream->dma_buffer; in lpass_platform_alloc_buffer()
463 static void lpass_platform_free_buffer(struct snd_pcm_substream *substream, in lpass_platform_free_buffer() argument
466 struct snd_dma_buffer *buf = &substream->dma_buffer; in lpass_platform_free_buffer()
478 struct snd_pcm_substream *substream = in lpass_platform_pcm_new() local
479 pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream; in lpass_platform_pcm_new()
497 drvdata->substream[data->rdma_ch] = substream; in lpass_platform_pcm_new()
505 ret = lpass_platform_alloc_buffer(substream, soc_runtime); in lpass_platform_pcm_new()
520 lpass_platform_free_buffer(substream, soc_runtime); in lpass_platform_pcm_new()
526 struct snd_pcm_substream *substream = in lpass_platform_pcm_free() local
527 pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream; in lpass_platform_pcm_free()
528 struct snd_soc_pcm_runtime *soc_runtime = substream->private_data; in lpass_platform_pcm_free()
534 drvdata->substream[data->rdma_ch] = NULL; in lpass_platform_pcm_free()
539 lpass_platform_free_buffer(substream, soc_runtime); in lpass_platform_pcm_free()