Lines Matching refs:substream
30 const struct snd_pcm_substream *substream) in substream_to_prtd() argument
32 return substream->runtime->private_data; in substream_to_prtd()
35 struct dma_chan *snd_dmaengine_pcm_get_chan(struct snd_pcm_substream *substream) in snd_dmaengine_pcm_get_chan() argument
37 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in snd_dmaengine_pcm_get_chan()
52 int snd_hwparams_to_dma_slave_config(const struct snd_pcm_substream *substream, in snd_hwparams_to_dma_slave_config() argument
73 if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) { in snd_hwparams_to_dma_slave_config()
105 const struct snd_pcm_substream *substream, in snd_dmaengine_pcm_set_config_from_dai_data() argument
109 if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) { in snd_dmaengine_pcm_set_config_from_dai_data()
133 struct snd_pcm_substream *substream = arg; in dmaengine_pcm_dma_complete() local
134 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in dmaengine_pcm_dma_complete()
136 prtd->pos += snd_pcm_lib_period_bytes(substream); in dmaengine_pcm_dma_complete()
137 if (prtd->pos >= snd_pcm_lib_buffer_bytes(substream)) in dmaengine_pcm_dma_complete()
140 snd_pcm_period_elapsed(substream); in dmaengine_pcm_dma_complete()
143 static int dmaengine_pcm_prepare_and_submit(struct snd_pcm_substream *substream) in dmaengine_pcm_prepare_and_submit() argument
145 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in dmaengine_pcm_prepare_and_submit()
151 direction = snd_pcm_substream_to_dma_direction(substream); in dmaengine_pcm_prepare_and_submit()
153 if (!substream->runtime->no_period_wakeup) in dmaengine_pcm_prepare_and_submit()
158 substream->runtime->dma_addr, in dmaengine_pcm_prepare_and_submit()
159 snd_pcm_lib_buffer_bytes(substream), in dmaengine_pcm_prepare_and_submit()
160 snd_pcm_lib_period_bytes(substream), direction, flags); in dmaengine_pcm_prepare_and_submit()
166 desc->callback_param = substream; in dmaengine_pcm_prepare_and_submit()
182 int snd_dmaengine_pcm_trigger(struct snd_pcm_substream *substream, int cmd) in snd_dmaengine_pcm_trigger() argument
184 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in snd_dmaengine_pcm_trigger()
185 struct snd_pcm_runtime *runtime = substream->runtime; in snd_dmaengine_pcm_trigger()
190 ret = dmaengine_pcm_prepare_and_submit(substream); in snd_dmaengine_pcm_trigger()
226 snd_pcm_uframes_t snd_dmaengine_pcm_pointer_no_residue(struct snd_pcm_substream *substream) in snd_dmaengine_pcm_pointer_no_residue() argument
228 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in snd_dmaengine_pcm_pointer_no_residue()
229 return bytes_to_frames(substream->runtime, prtd->pos); in snd_dmaengine_pcm_pointer_no_residue()
240 snd_pcm_uframes_t snd_dmaengine_pcm_pointer(struct snd_pcm_substream *substream) in snd_dmaengine_pcm_pointer() argument
242 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in snd_dmaengine_pcm_pointer()
250 buf_size = snd_pcm_lib_buffer_bytes(substream); in snd_dmaengine_pcm_pointer()
255 return bytes_to_frames(substream->runtime, pos); in snd_dmaengine_pcm_pointer()
292 int snd_dmaengine_pcm_open(struct snd_pcm_substream *substream, in snd_dmaengine_pcm_open() argument
301 ret = snd_pcm_hw_constraint_integer(substream->runtime, in snd_dmaengine_pcm_open()
312 substream->runtime->private_data = prtd; in snd_dmaengine_pcm_open()
331 int snd_dmaengine_pcm_open_request_chan(struct snd_pcm_substream *substream, in snd_dmaengine_pcm_open_request_chan() argument
334 return snd_dmaengine_pcm_open(substream, in snd_dmaengine_pcm_open_request_chan()
343 int snd_dmaengine_pcm_close(struct snd_pcm_substream *substream) in snd_dmaengine_pcm_close() argument
345 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in snd_dmaengine_pcm_close()
360 int snd_dmaengine_pcm_close_release_chan(struct snd_pcm_substream *substream) in snd_dmaengine_pcm_close_release_chan() argument
362 struct dmaengine_pcm_runtime_data *prtd = substream_to_prtd(substream); in snd_dmaengine_pcm_close_release_chan()