Lines Matching refs:stream
65 schedule_work(&spcm->stream[substream->stream].period_elapsed_work); in snd_sof_pcm_period_elapsed()
89 spcm->stream[dir].list = list; in sof_pcm_setup_connected_widgets()
94 spcm->stream[dir].list = NULL; in sof_pcm_setup_connected_widgets()
123 spcm_dbg(spcm, substream->stream, "Entry: hw_params\n"); in sof_pcm_hw_params()
129 if (spcm->prepared[substream->stream] && pcm_ops && pcm_ops->hw_free) { in sof_pcm_hw_params()
134 spcm->prepared[substream->stream] = false; in sof_pcm_hw_params()
139 spcm_err(spcm, substream->stream, "platform hw params failed\n"); in sof_pcm_hw_params()
144 if (!spcm->stream[substream->stream].list) { in sof_pcm_hw_params()
146 substream->stream); in sof_pcm_hw_params()
156 spcm->stream[substream->stream].page_table.area, in sof_pcm_hw_params()
168 spcm->prepared[substream->stream] = true; in sof_pcm_hw_params()
171 memcpy(&spcm->params[substream->stream], params, sizeof(*params)); in sof_pcm_hw_params()
185 if (spcm->prepared[substream->stream]) { in sof_pcm_stream_free()
195 spcm_err(spcm, substream->stream, in sof_pcm_stream_free()
201 spcm->prepared[substream->stream] = false; in sof_pcm_stream_free()
202 spcm->pending_stop[substream->stream] = false; in sof_pcm_stream_free()
208 spcm_err(spcm, substream->stream, in sof_pcm_stream_free()
218 spcm_err(spcm, substream->stream, in sof_pcm_stream_free()
236 substream = spcm->stream[dir].substream; in sof_pcm_free_all_streams()
239 spcm->stream[dir].suspend_ignored) in sof_pcm_free_all_streams()
242 if (spcm->stream[dir].list) { in sof_pcm_free_all_streams()
270 spcm_dbg(spcm, substream->stream, "Entry: hw_free\n"); in sof_pcm_hw_free()
272 ret = sof_pcm_stream_free(sdev, substream, spcm, substream->stream, true); in sof_pcm_hw_free()
274 cancel_work_sync(&spcm->stream[substream->stream].period_elapsed_work); in sof_pcm_hw_free()
295 spcm_dbg(spcm, substream->stream, "Entry: prepare\n"); in sof_pcm_prepare()
297 if (spcm->prepared[substream->stream]) { in sof_pcm_prepare()
298 if (!spcm->pending_stop[substream->stream]) in sof_pcm_prepare()
305 ret = sof_pcm_stream_free(sdev, substream, spcm, substream->stream, true); in sof_pcm_prepare()
312 substream, &spcm->params[substream->stream]); in sof_pcm_prepare()
314 spcm_err(spcm, substream->stream, in sof_pcm_prepare()
345 spcm_dbg(spcm, substream->stream, "Entry: trigger (cmd: %d)\n", cmd); in sof_pcm_trigger()
347 spcm->pending_stop[substream->stream] = false; in sof_pcm_trigger()
358 if (spcm->stream[substream->stream].suspend_ignored) { in sof_pcm_trigger()
364 spcm->stream[substream->stream].suspend_ignored = false; in sof_pcm_trigger()
378 spcm->stream[substream->stream].d0i3_compatible) { in sof_pcm_trigger()
379 spcm->stream[substream->stream].suspend_ignored = true; in sof_pcm_trigger()
394 spcm_err(spcm, substream->stream, "Unhandled trigger cmd %d\n", cmd); in sof_pcm_trigger()
425 spcm->pending_stop[substream->stream] = true; in sof_pcm_trigger()
433 ret = sof_pcm_stream_free(sdev, substream, spcm, substream->stream, false); in sof_pcm_trigger()
468 spcm->stream[substream->stream].posn.host_posn); in sof_pcm_pointer()
470 spcm->stream[substream->stream].posn.dai_posn); in sof_pcm_pointer()
496 spcm_dbg(spcm, substream->stream, "Entry: open\n"); in sof_pcm_open()
498 caps = &spcm->pcm.caps[substream->stream]; in sof_pcm_open()
519 spcm->stream[substream->stream].posn.host_posn = 0; in sof_pcm_open()
520 spcm->stream[substream->stream].posn.dai_posn = 0; in sof_pcm_open()
521 spcm->stream[substream->stream].substream = substream; in sof_pcm_open()
522 spcm->prepared[substream->stream] = false; in sof_pcm_open()
526 spcm_err(spcm, substream->stream, in sof_pcm_open()
531 spcm_dbg(spcm, substream->stream, "period bytes min %zd, max %zd\n", in sof_pcm_open()
533 spcm_dbg(spcm, substream->stream, "period count min %d, max %d\n", in sof_pcm_open()
535 spcm_dbg(spcm, substream->stream, "buffer bytes max %zd\n", runtime->hw.buffer_bytes_max); in sof_pcm_open()
556 spcm_dbg(spcm, substream->stream, "Entry: close\n"); in sof_pcm_close()
560 spcm_err(spcm, substream->stream, in sof_pcm_close()
568 spcm->stream[substream->stream].substream = NULL; in sof_pcm_close()
585 int stream = SNDRV_PCM_STREAM_PLAYBACK; in sof_pcm_new() local
602 caps = &spcm->pcm.caps[stream]; in sof_pcm_new()
604 if (!pcm->streams[stream].substream) { in sof_pcm_new()
605 spcm_err(spcm, stream, "NULL playback substream!\n"); in sof_pcm_new()
610 spcm_dbg(spcm, stream, "allocate %s playback DMA buffer size 0x%x max 0x%x\n", in sof_pcm_new()
613 snd_pcm_set_managed_buffer(pcm->streams[stream].substream, in sof_pcm_new()
617 stream = SNDRV_PCM_STREAM_CAPTURE; in sof_pcm_new()
623 caps = &spcm->pcm.caps[stream]; in sof_pcm_new()
625 if (!pcm->streams[stream].substream) { in sof_pcm_new()
626 spcm_err(spcm, stream, "NULL capture substream!\n"); in sof_pcm_new()
631 spcm_dbg(spcm, stream, "allocate %s capture DMA buffer size 0x%x max 0x%x\n", in sof_pcm_new()
634 snd_pcm_set_managed_buffer(pcm->streams[stream].substream, in sof_pcm_new()