Lines Matching refs:spcm

29 	struct snd_sof_pcm *spcm;
33 spcm = snd_sof_find_spcm_dai(component, rtd);
34 if (!spcm)
38 spcm->stream[stream].page_table.area, size);
66 struct snd_sof_pcm *spcm;
68 spcm = snd_sof_find_spcm_dai(component, rtd);
69 if (!spcm) {
83 schedule_work(&spcm->stream[substream->stream].period_elapsed_work);
89 struct snd_sof_pcm *spcm, struct snd_pcm_hw_params *params,
107 spcm->stream[dir].list = list;
109 ret = sof_widget_list_setup(sdev, spcm, params, platform_params, dir);
112 spcm->pcm.pcm_id, dir);
113 spcm->stream[dir].list = NULL;
131 struct snd_sof_pcm *spcm;
138 spcm = snd_sof_find_spcm_dai(component, rtd);
139 if (!spcm)
146 if (pcm_ops && pcm_ops->hw_free && spcm->prepared[substream->stream]) {
151 spcm->prepared[substream->stream] = false;
155 spcm->pcm.pcm_id, substream->stream);
164 if (!spcm->stream[substream->stream].list) {
165 ret = sof_pcm_setup_connected_widgets(sdev, rtd, spcm, params, &platform_params,
186 spcm->prepared[substream->stream] = true;
189 memcpy(&spcm->params[substream->stream], params, sizeof(*params));
200 struct snd_sof_pcm *spcm;
207 spcm = snd_sof_find_spcm_dai(component, rtd);
208 if (!spcm)
212 spcm->pcm.pcm_id, substream->stream);
214 if (spcm->prepared[substream->stream]) {
226 spcm->prepared[substream->stream] = false;
237 ret = sof_widget_list_free(sdev, spcm, substream->stream);
241 cancel_work_sync(&spcm->stream[substream->stream].period_elapsed_work);
250 struct snd_sof_pcm *spcm;
257 spcm = snd_sof_find_spcm_dai(component, rtd);
258 if (!spcm)
261 if (spcm->prepared[substream->stream])
265 spcm->pcm.pcm_id, substream->stream);
269 substream, &spcm->params[substream->stream]);
289 struct snd_sof_pcm *spcm;
298 spcm = snd_sof_find_spcm_dai(component, rtd);
299 if (!spcm)
303 spcm->pcm.pcm_id, substream->stream, cmd);
314 if (spcm->stream[substream->stream].suspend_ignored) {
320 spcm->stream[substream->stream].suspend_ignored = false;
329 spcm->stream[substream->stream].d0i3_compatible) {
336 spcm->stream[substream->stream].suspend_ignored = true;
381 ret = sof_pcm_stream_free(sdev, substream, spcm, substream->stream, false);
391 struct snd_sof_pcm *spcm;
402 spcm = snd_sof_find_spcm_dai(component, rtd);
403 if (!spcm)
408 spcm->stream[substream->stream].posn.host_posn);
410 spcm->stream[substream->stream].posn.dai_posn);
412 trace_sof_pcm_pointer_position(sdev, spcm, substream, host, dai);
424 struct snd_sof_pcm *spcm;
432 spcm = snd_sof_find_spcm_dai(component, rtd);
433 if (!spcm)
437 spcm->pcm.pcm_id, substream->stream);
440 caps = &spcm->pcm.caps[substream->stream];
470 spcm->stream[substream->stream].posn.host_posn = 0;
471 spcm->stream[substream->stream].posn.dai_posn = 0;
472 spcm->stream[substream->stream].substream = substream;
473 spcm->prepared[substream->stream] = false;
487 struct snd_sof_pcm *spcm;
494 spcm = snd_sof_find_spcm_dai(component, rtd);
495 if (!spcm)
499 spcm->pcm.pcm_id, substream->stream);
523 struct snd_sof_pcm *spcm;
529 spcm = snd_sof_find_spcm_dai(component, rtd);
530 if (!spcm) {
536 dev_dbg(component->dev, "creating new PCM %s\n", spcm->pcm.pcm_name);
539 if (!spcm->pcm.playback)
542 caps = &spcm->pcm.caps[stream];
546 "spcm: allocate %s playback DMA buffer size 0x%x max 0x%x\n",
561 if (!spcm->pcm.capture)
564 caps = &spcm->pcm.caps[stream];
568 "spcm: allocate %s capture DMA buffer size 0x%x max 0x%x\n",