Lines Matching refs:substream

40 	struct snd_pcm_substream *substream)  in dmaengine_dma_dev()  argument
42 if (!pcm->chan[substream->stream]) in dmaengine_dma_dev()
45 return pcm->chan[substream->stream]->device->dev; in dmaengine_dma_dev()
61 int snd_dmaengine_pcm_prepare_slave_config(struct snd_pcm_substream *substream, in snd_dmaengine_pcm_prepare_slave_config() argument
64 struct snd_soc_pcm_runtime *rtd = substream->private_data; in snd_dmaengine_pcm_prepare_slave_config()
68 dma_data = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); in snd_dmaengine_pcm_prepare_slave_config()
70 ret = snd_hwparams_to_dma_slave_config(substream, params, slave_config); in snd_dmaengine_pcm_prepare_slave_config()
74 snd_dmaengine_pcm_set_config_from_dai_data(substream, dma_data, in snd_dmaengine_pcm_prepare_slave_config()
81 static int dmaengine_pcm_hw_params(struct snd_pcm_substream *substream, in dmaengine_pcm_hw_params() argument
84 struct snd_soc_pcm_runtime *rtd = substream->private_data; in dmaengine_pcm_hw_params()
86 struct dma_chan *chan = snd_dmaengine_pcm_get_chan(substream); in dmaengine_pcm_hw_params()
87 int (*prepare_slave_config)(struct snd_pcm_substream *substream, in dmaengine_pcm_hw_params()
101 ret = prepare_slave_config(substream, params, &slave_config); in dmaengine_pcm_hw_params()
110 return snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params)); in dmaengine_pcm_hw_params()
113 static int dmaengine_pcm_set_runtime_hwparams(struct snd_pcm_substream *substream) in dmaengine_pcm_set_runtime_hwparams() argument
115 struct snd_soc_pcm_runtime *rtd = substream->private_data; in dmaengine_pcm_set_runtime_hwparams()
117 struct device *dma_dev = dmaengine_dma_dev(pcm, substream); in dmaengine_pcm_set_runtime_hwparams()
118 struct dma_chan *chan = pcm->chan[substream->stream]; in dmaengine_pcm_set_runtime_hwparams()
128 return snd_soc_set_runtime_hwparams(substream, in dmaengine_pcm_set_runtime_hwparams()
131 dma_data = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); in dmaengine_pcm_set_runtime_hwparams()
153 if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) in dmaengine_pcm_set_runtime_hwparams()
186 return snd_soc_set_runtime_hwparams(substream, &hw); in dmaengine_pcm_set_runtime_hwparams()
189 static int dmaengine_pcm_open(struct snd_pcm_substream *substream) in dmaengine_pcm_open() argument
191 struct snd_soc_pcm_runtime *rtd = substream->private_data; in dmaengine_pcm_open()
193 struct dma_chan *chan = pcm->chan[substream->stream]; in dmaengine_pcm_open()
196 ret = dmaengine_pcm_set_runtime_hwparams(substream); in dmaengine_pcm_open()
200 return snd_dmaengine_pcm_open(substream, chan); in dmaengine_pcm_open()
205 struct snd_pcm_substream *substream) in dmaengine_pcm_compat_request_channel() argument
211 dma_data = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); in dmaengine_pcm_compat_request_channel()
217 return pcm->config->compat_request_channel(rtd, substream); in dmaengine_pcm_compat_request_channel()
246 struct snd_pcm_substream *substream; in dmaengine_pcm_new() local
262 substream = rtd->pcm->streams[i].substream; in dmaengine_pcm_new()
263 if (!substream) in dmaengine_pcm_new()
266 dma_data = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); in dmaengine_pcm_new()
275 substream); in dmaengine_pcm_new()
284 ret = snd_pcm_lib_preallocate_pages(substream, in dmaengine_pcm_new()
286 dmaengine_dma_dev(pcm, substream), in dmaengine_pcm_new()
307 struct snd_pcm_substream *substream) in dmaengine_pcm_pointer() argument
309 struct snd_soc_pcm_runtime *rtd = substream->private_data; in dmaengine_pcm_pointer()
313 return snd_dmaengine_pcm_pointer_no_residue(substream); in dmaengine_pcm_pointer()
315 return snd_dmaengine_pcm_pointer(substream); in dmaengine_pcm_pointer()