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);
41 static int sof_pcm_dsp_params(struct snd_sof_pcm *spcm, struct snd_pcm_substream *substream,
44 struct snd_soc_component *scomp = spcm->scomp;
52 spcm->pcm.pcm_id);
77 struct snd_sof_pcm *spcm;
79 spcm = snd_sof_find_spcm_dai(component, rtd);
80 if (!spcm) {
94 schedule_work(&spcm->stream[substream->stream].period_elapsed_work);
100 struct snd_sof_pcm *spcm)
108 stream.comp_id = spcm->stream[substream->stream].comp_id;
114 spcm->prepared[substream->stream] = false;
126 struct snd_sof_pcm *spcm;
135 spcm = snd_sof_find_spcm_dai(component, rtd);
136 if (!spcm)
143 if (spcm->prepared[substream->stream]) {
144 ret = sof_pcm_dsp_pcm_free(substream, sdev, spcm);
150 spcm->pcm.pcm_id, substream->stream);
168 pcm.comp_id = spcm->stream[substream->stream].comp_id;
171 spcm->stream[substream->stream].page_table.addr;
225 ret = sof_pcm_dsp_params(spcm, substream, &ipc_params_reply);
229 spcm->prepared[substream->stream] = true;
232 memcpy(&spcm->params[substream->stream], params, sizeof(*params));
242 struct snd_sof_pcm *spcm;
249 spcm = snd_sof_find_spcm_dai(component, rtd);
250 if (!spcm)
254 spcm->pcm.pcm_id, substream->stream);
256 if (spcm->prepared[substream->stream]) {
257 ret = sof_pcm_dsp_pcm_free(substream, sdev, spcm);
262 cancel_work_sync(&spcm->stream[substream->stream].period_elapsed_work);
277 struct snd_sof_pcm *spcm;
284 spcm = snd_sof_find_spcm_dai(component, rtd);
285 if (!spcm)
288 if (spcm->prepared[substream->stream])
292 spcm->pcm.pcm_id, substream->stream);
296 substream, &spcm->params[substream->stream]);
315 struct snd_sof_pcm *spcm;
326 spcm = snd_sof_find_spcm_dai(component, rtd);
327 if (!spcm)
331 spcm->pcm.pcm_id, substream->stream, cmd);
335 stream.comp_id = spcm->stream[substream->stream].comp_id;
346 if (spcm->stream[substream->stream].suspend_ignored) {
352 spcm->stream[substream->stream].suspend_ignored = false;
366 if (spcm->stream[substream->stream].suspend_ignored) {
372 spcm->stream[substream->stream].suspend_ignored = false;
379 spcm->stream[substream->stream].d0i3_compatible) {
386 spcm->stream[substream->stream].suspend_ignored = true;
418 ret = sof_pcm_dsp_pcm_free(substream, sdev, spcm);
428 struct snd_sof_pcm *spcm;
439 spcm = snd_sof_find_spcm_dai(component, rtd);
440 if (!spcm)
445 spcm->stream[substream->stream].posn.host_posn);
447 spcm->stream[substream->stream].posn.dai_posn);
451 spcm->pcm.pcm_id, substream->stream, host, dai);
463 struct snd_sof_pcm *spcm;
471 spcm = snd_sof_find_spcm_dai(component, rtd);
472 if (!spcm)
476 spcm->pcm.pcm_id, substream->stream);
479 caps = &spcm->pcm.caps[substream->stream];
516 spcm->stream[substream->stream].posn.host_posn = 0;
517 spcm->stream[substream->stream].posn.dai_posn = 0;
518 spcm->stream[substream->stream].substream = substream;
519 spcm->prepared[substream->stream] = false;
533 struct snd_sof_pcm *spcm;
540 spcm = snd_sof_find_spcm_dai(component, rtd);
541 if (!spcm)
545 spcm->pcm.pcm_id, substream->stream);
569 struct snd_sof_pcm *spcm;
575 spcm = snd_sof_find_spcm_dai(component, rtd);
576 if (!spcm) {
582 dev_dbg(component->dev, "creating new PCM %s\n", spcm->pcm.pcm_name);
585 if (!spcm->pcm.playback)
588 caps = &spcm->pcm.caps[stream];
592 "spcm: allocate %s playback DMA buffer size 0x%x max 0x%x\n",
607 if (!spcm->pcm.capture)
610 caps = &spcm->pcm.caps[stream];
614 "spcm: allocate %s capture DMA buffer size 0x%x max 0x%x\n",