Lines Matching full:pcm
50 struct sof_ipc_pcm_params pcm; in sof_ipc3_pcm_hw_params() local
58 memset(&pcm, 0, sizeof(pcm)); in sof_ipc3_pcm_hw_params()
61 pcm.params.buffer.pages = PFN_UP(runtime->dma_bytes); in sof_ipc3_pcm_hw_params()
63 /* set IPC PCM parameters */ in sof_ipc3_pcm_hw_params()
64 pcm.hdr.size = sizeof(pcm); in sof_ipc3_pcm_hw_params()
65 pcm.hdr.cmd = SOF_IPC_GLB_STREAM_MSG | SOF_IPC_STREAM_PCM_PARAMS; in sof_ipc3_pcm_hw_params()
66 pcm.comp_id = spcm->stream[substream->stream].comp_id; in sof_ipc3_pcm_hw_params()
67 pcm.params.hdr.size = sizeof(pcm.params); in sof_ipc3_pcm_hw_params()
68 pcm.params.buffer.phy_addr = spcm->stream[substream->stream].page_table.addr; in sof_ipc3_pcm_hw_params()
69 pcm.params.buffer.size = runtime->dma_bytes; in sof_ipc3_pcm_hw_params()
70 pcm.params.direction = substream->stream; in sof_ipc3_pcm_hw_params()
71 pcm.params.sample_valid_bytes = params_width(params) >> 3; in sof_ipc3_pcm_hw_params()
72 pcm.params.buffer_fmt = SOF_IPC_BUFFER_INTERLEAVED; in sof_ipc3_pcm_hw_params()
73 pcm.params.rate = params_rate(params); in sof_ipc3_pcm_hw_params()
74 pcm.params.channels = params_channels(params); in sof_ipc3_pcm_hw_params()
75 pcm.params.host_period_bytes = params_period_bytes(params); in sof_ipc3_pcm_hw_params()
81 pcm.params.sample_container_bytes = ret >> 3; in sof_ipc3_pcm_hw_params()
86 pcm.params.frame_fmt = SOF_IPC_FRAME_S16_LE; in sof_ipc3_pcm_hw_params()
89 pcm.params.frame_fmt = SOF_IPC_FRAME_S24_4LE; in sof_ipc3_pcm_hw_params()
92 pcm.params.frame_fmt = SOF_IPC_FRAME_S32_LE; in sof_ipc3_pcm_hw_params()
95 pcm.params.frame_fmt = SOF_IPC_FRAME_FLOAT; in sof_ipc3_pcm_hw_params()
102 pcm.params.stream_tag = platform_params->stream_tag; in sof_ipc3_pcm_hw_params()
105 pcm.params.buffer.phy_addr = platform_params->phy_addr; in sof_ipc3_pcm_hw_params()
113 pcm.params.host_period_bytes = 0; in sof_ipc3_pcm_hw_params()
115 pcm.params.no_stream_position = 1; in sof_ipc3_pcm_hw_params()
119 pcm.params.cont_update_posn = 1; in sof_ipc3_pcm_hw_params()
121 dev_dbg(component->dev, "stream_tag %d", pcm.params.stream_tag); in sof_ipc3_pcm_hw_params()
124 ret = sof_ipc_tx_message(sdev->ipc, &pcm, sizeof(pcm), in sof_ipc3_pcm_hw_params()
128 pcm.params.stream_tag); in sof_ipc3_pcm_hw_params()
134 dev_err(component->dev, "%s: invalid stream data offset for PCM %d\n", in sof_ipc3_pcm_hw_params()
135 __func__, spcm->pcm.pcm_id); in sof_ipc3_pcm_hw_params()
202 dev_dbg(sdev->dev, "DAI config %d matches pcm hw params\n", i); in ssp_dai_config_pcm_params_match()
256 /* search for config to pcm params match, if not found use default */ in sof_ipc3_pcm_dai_link_fixup()