Lines Matching refs:pcm

52 			spcm->pcm.pcm_id);
58 * sof pcm period elapse work
70 * sof pcm period elapse, this could be called at irq thread context.
127 struct sof_ipc_pcm_params pcm;
149 dev_dbg(component->dev, "pcm: hw params stream %d dir %d\n",
150 spcm->pcm.pcm_id, substream->stream);
152 memset(&pcm, 0, sizeof(pcm));
163 pcm.params.buffer.pages = PFN_UP(runtime->dma_bytes);
166 pcm.hdr.size = sizeof(pcm);
167 pcm.hdr.cmd = SOF_IPC_GLB_STREAM_MSG | SOF_IPC_STREAM_PCM_PARAMS;
168 pcm.comp_id = spcm->stream[substream->stream].comp_id;
169 pcm.params.hdr.size = sizeof(pcm.params);
170 pcm.params.buffer.phy_addr =
172 pcm.params.buffer.size = runtime->dma_bytes;
173 pcm.params.direction = substream->stream;
174 pcm.params.sample_valid_bytes = params_width(params) >> 3;
175 pcm.params.buffer_fmt = SOF_IPC_BUFFER_INTERLEAVED;
176 pcm.params.rate = params_rate(params);
177 pcm.params.channels = params_channels(params);
178 pcm.params.host_period_bytes = params_period_bytes(params);
184 pcm.params.sample_container_bytes = ret >> 3;
189 pcm.params.frame_fmt = SOF_IPC_FRAME_S16_LE;
192 pcm.params.frame_fmt = SOF_IPC_FRAME_S24_4LE;
195 pcm.params.frame_fmt = SOF_IPC_FRAME_S32_LE;
198 pcm.params.frame_fmt = SOF_IPC_FRAME_FLOAT;
208 &pcm.params);
214 dev_dbg(component->dev, "stream_tag %d", pcm.params.stream_tag);
217 ret = sof_ipc_tx_message(sdev->ipc, pcm.hdr.cmd, &pcm, sizeof(pcm),
221 pcm.params.stream_tag);
231 /* save pcm hw_params */
253 dev_dbg(component->dev, "pcm: free stream %d dir %d\n",
254 spcm->pcm.pcm_id, substream->stream);
291 dev_dbg(component->dev, "pcm: prepare stream %d dir %d\n",
292 spcm->pcm.pcm_id, substream->stream);
299 "error: set pcm hw_params after resume\n");
330 dev_dbg(component->dev, "pcm: trigger stream %d dir %d cmd %d\n",
331 spcm->pcm.pcm_id, substream->stream, cmd);
451 spcm->pcm.pcm_id, substream->stream, host, dai);
475 dev_dbg(component->dev, "pcm: open stream %d dir %d\n",
476 spcm->pcm.pcm_id, substream->stream);
479 caps = &spcm->pcm.caps[substream->stream];
523 dev_err(component->dev, "error: pcm open failed %d\n", ret);
544 dev_dbg(component->dev, "pcm: close stream %d dir %d\n",
545 spcm->pcm.pcm_id, substream->stream);
549 dev_err(component->dev, "error: pcm close failed %d\n",
570 struct snd_pcm *pcm = rtd->pcm;
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];
595 if (!pcm->streams[stream].substream) {
600 snd_pcm_set_managed_buffer(pcm->streams[stream].substream,
607 if (!spcm->pcm.capture)
610 caps = &spcm->pcm.caps[stream];
617 if (!pcm->streams[stream].substream) {
622 snd_pcm_set_managed_buffer(pcm->streams[stream].substream,
819 /* increment module refcount when a pcm is opened */