Lines Matching refs:substream

131 static void sst_fill_alloc_params(struct snd_pcm_substream *substream,  in sst_fill_alloc_params()  argument
137 ssize_t buffer_bytes = snd_pcm_lib_buffer_bytes(substream); in sst_fill_alloc_params()
138 u32 buffer_addr = virt_to_phys(substream->dma_buffer.area); in sst_fill_alloc_params()
140 channels = substream->runtime->channels; in sst_fill_alloc_params()
141 period_size = substream->runtime->period_size; in sst_fill_alloc_params()
142 periodbytes = samples_to_bytes(substream->runtime, period_size); in sst_fill_alloc_params()
150 static void sst_fill_pcm_params(struct snd_pcm_substream *substream, in sst_fill_pcm_params() argument
153 param->uc.pcm_params.num_chan = (u8) substream->runtime->channels; in sst_fill_pcm_params()
154 param->uc.pcm_params.pcm_wd_sz = substream->runtime->sample_bits; in sst_fill_pcm_params()
155 param->uc.pcm_params.sfreq = substream->runtime->rate; in sst_fill_pcm_params()
181 int sst_fill_stream_params(void *substream, in sst_fill_stream_params() argument
194 cstream = (struct snd_compr_stream *)substream; in sst_fill_stream_params()
196 pstream = (struct snd_pcm_substream *)substream; in sst_fill_stream_params()
230 static int sst_platform_alloc_stream(struct snd_pcm_substream *substream, in sst_platform_alloc_stream() argument
234 substream->runtime->private_data; in sst_platform_alloc_stream()
242 sst_fill_pcm_params(substream, &param); in sst_platform_alloc_stream()
243 sst_fill_alloc_params(substream, &alloc_params); in sst_platform_alloc_stream()
244 substream->runtime->dma_area = substream->dma_buffer.area; in sst_platform_alloc_stream()
250 ret_val = sst_fill_stream_params(substream, ctx, &str_params, false); in sst_platform_alloc_stream()
266 struct snd_pcm_substream *substream = arg; in sst_period_elapsed() local
270 if (!substream || !substream->runtime) in sst_period_elapsed()
272 stream = substream->runtime->private_data; in sst_period_elapsed()
278 snd_pcm_period_elapsed(substream); in sst_period_elapsed()
281 static int sst_platform_init_stream(struct snd_pcm_substream *substream) in sst_platform_init_stream() argument
284 substream->runtime->private_data; in sst_platform_init_stream()
285 struct snd_soc_pcm_runtime *rtd = substream->private_data; in sst_platform_init_stream()
291 stream->stream_info.arg = substream; in sst_platform_init_stream()
293 stream->stream_info.sfreq = substream->runtime->rate; in sst_platform_init_stream()
311 static int sst_media_open(struct snd_pcm_substream *substream, in sst_media_open() argument
315 struct snd_pcm_runtime *runtime = substream->runtime; in sst_media_open()
336 stream->stream_info.arg = substream; in sst_media_open()
345 snd_pcm_hw_constraint_step(substream->runtime, 0, in sst_media_open()
356 static void sst_media_close(struct snd_pcm_substream *substream, in sst_media_close() argument
362 stream = substream->runtime->private_data; in sst_media_close()
373 struct snd_pcm_substream *substream) in get_current_pipe_id() argument
378 substream->runtime->private_data; in get_current_pipe_id()
389 static int sst_media_prepare(struct snd_pcm_substream *substream, in sst_media_prepare() argument
395 stream = substream->runtime->private_data; in sst_media_prepare()
402 ret_val = sst_platform_alloc_stream(substream, dai); in sst_media_prepare()
405 snprintf(substream->pcm->id, sizeof(substream->pcm->id), in sst_media_prepare()
408 ret_val = sst_platform_init_stream(substream); in sst_media_prepare()
411 substream->runtime->hw.info = SNDRV_PCM_INFO_BLOCK_TRANSFER; in sst_media_prepare()
415 static int sst_media_hw_params(struct snd_pcm_substream *substream, in sst_media_hw_params() argument
419 snd_pcm_lib_malloc_pages(substream, params_buffer_bytes(params)); in sst_media_hw_params()
420 memset(substream->runtime->dma_area, 0, params_buffer_bytes(params)); in sst_media_hw_params()
424 static int sst_media_hw_free(struct snd_pcm_substream *substream, in sst_media_hw_free() argument
427 return snd_pcm_lib_free_pages(substream); in sst_media_hw_free()
430 static int sst_enable_ssp(struct snd_pcm_substream *substream, in sst_enable_ssp() argument
444 static void sst_disable_ssp(struct snd_pcm_substream *substream, in sst_disable_ssp() argument
559 static int sst_platform_open(struct snd_pcm_substream *substream) in sst_platform_open() argument
563 if (substream->pcm->internal) in sst_platform_open()
566 runtime = substream->runtime; in sst_platform_open()
571 static int sst_platform_pcm_trigger(struct snd_pcm_substream *substream, in sst_platform_pcm_trigger() argument
577 struct snd_soc_pcm_runtime *rtd = substream->private_data; in sst_platform_pcm_trigger()
580 if (substream->pcm->internal) in sst_platform_pcm_trigger()
582 stream = substream->runtime->private_data; in sst_platform_pcm_trigger()
588 stream->stream_info.arg = substream; in sst_platform_pcm_trigger()
620 (struct snd_pcm_substream *substream) in sst_platform_pcm_pointer() argument
625 struct snd_soc_pcm_runtime *rtd = substream->private_data; in sst_platform_pcm_pointer()
627 stream = substream->runtime->private_data; in sst_platform_pcm_pointer()
637 substream->runtime->delay = str_info->pcm_delay; in sst_platform_pcm_pointer()