Lines Matching refs:cpu_dai

62 				       struct snd_soc_dai *cpu_dai)  in dai_to_sdev()  argument
64 struct snd_soc_dapm_widget *w = snd_soc_dai_get_widget(cpu_dai, substream->stream); in dai_to_sdev()
70 hda_dai_get_ops(struct snd_pcm_substream *substream, struct snd_soc_dai *cpu_dai) in hda_dai_get_ops() argument
72 struct snd_soc_dapm_widget *w = snd_soc_dai_get_widget(cpu_dai, substream->stream); in hda_dai_get_ops()
109 struct snd_soc_dai *cpu_dai, bool release) in hda_link_dma_cleanup() argument
111 const struct hda_dai_widget_dma_ops *ops = hda_dai_get_ops(substream, cpu_dai); in hda_link_dma_cleanup()
118 dev_err(cpu_dai->dev, "DAI widget ops not set\n"); in hda_link_dma_cleanup()
122 sdev = dai_to_sdev(substream, cpu_dai); in hda_link_dma_cleanup()
145 ops->release_hext_stream(sdev, cpu_dai, substream); in hda_link_dma_cleanup()
157 struct snd_pcm_hw_params *params, struct snd_soc_dai *cpu_dai) in hda_link_dma_hw_params() argument
159 const struct hda_dai_widget_dma_ops *ops = hda_dai_get_ops(substream, cpu_dai); in hda_link_dma_hw_params()
167 dev_err(cpu_dai->dev, "DAI widget ops not set\n"); in hda_link_dma_hw_params()
171 sdev = dai_to_sdev(substream, cpu_dai); in hda_link_dma_hw_params()
177 hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream); in hda_link_dma_hw_params()
181 hext_stream = ops->assign_hext_stream(sdev, cpu_dai, substream); in hda_link_dma_hw_params()
212 struct snd_soc_dai *cpu_dai) in hda_dai_hw_free() argument
214 const struct hda_dai_widget_dma_ops *ops = hda_dai_get_ops(substream, cpu_dai); in hda_dai_hw_free()
216 struct snd_sof_dev *sdev = dai_to_sdev(substream, cpu_dai); in hda_dai_hw_free()
219 dev_err(cpu_dai->dev, "DAI widget ops not set\n"); in hda_dai_hw_free()
223 hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream); in hda_dai_hw_free()
227 return hda_link_dma_cleanup(substream, hext_stream, cpu_dai, true); in hda_dai_hw_free()
364 struct snd_soc_dai *cpu_dai, in non_hda_dai_hw_params_data() argument
368 struct snd_soc_dapm_widget *w = snd_soc_dai_get_widget(cpu_dai, substream->stream); in non_hda_dai_hw_params_data()
382 ops = hda_dai_get_ops(substream, cpu_dai); in non_hda_dai_hw_params_data()
384 dev_err(cpu_dai->dev, "DAI widget ops not set\n"); in non_hda_dai_hw_params_data()
389 hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream); in non_hda_dai_hw_params_data()
396 ret = hda_dai_hw_params_data(substream, params, cpu_dai, data, flags); in non_hda_dai_hw_params_data()
398 dev_err(cpu_dai->dev, "%s: hda_dai_hw_params_data failed: %d\n", __func__, ret); in non_hda_dai_hw_params_data()
406 hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream); in non_hda_dai_hw_params_data()
409 dev_err(cpu_dai->dev, "%s: no hext_stream found\n", __func__); in non_hda_dai_hw_params_data()
417 dev_err(cpu_dai->dev, "%s: no stream_id allocated\n", __func__); in non_hda_dai_hw_params_data()
425 if (dai == cpu_dai) in non_hda_dai_hw_params_data()
452 struct snd_soc_dai *cpu_dai) in non_hda_dai_hw_params() argument
457 return non_hda_dai_hw_params_data(substream, params, cpu_dai, &data, flags); in non_hda_dai_hw_params()
461 struct snd_soc_dai *cpu_dai) in non_hda_dai_prepare() argument
466 return non_hda_dai_hw_params(substream, &rtd->dpcm[stream].hw_params, cpu_dai); in non_hda_dai_prepare()
485 struct snd_soc_dai *cpu_dai, in sdw_hda_dai_hw_params() argument
489 struct snd_soc_dapm_widget *w = snd_soc_dai_get_widget(cpu_dai, substream->stream); in sdw_hda_dai_hw_params()
507 dev_err(cpu_dai->dev, "%s widget not found, check amp link num in the topology\n", in sdw_hda_dai_hw_params()
508 cpu_dai->name); in sdw_hda_dai_hw_params()
512 ops = hda_dai_get_ops(substream, cpu_dai); in sdw_hda_dai_hw_params()
514 dev_err(cpu_dai->dev, "DAI widget ops not set\n"); in sdw_hda_dai_hw_params()
519 hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream); in sdw_hda_dai_hw_params()
529 ret = hdac_bus_eml_sdw_map_stream_ch(sof_to_bus(sdev), link_id, cpu_dai->id, in sdw_hda_dai_hw_params()
532 dev_err(cpu_dai->dev, "%s: hdac_bus_eml_sdw_map_stream_ch failed %d\n", in sdw_hda_dai_hw_params()
537 data.dai_index = (link_id << 8) | cpu_dai->id; in sdw_hda_dai_hw_params()
539 ret = non_hda_dai_hw_params_data(substream, params, cpu_dai, &data, flags); in sdw_hda_dai_hw_params()
541 dev_err(cpu_dai->dev, "%s: non_hda_dai_hw_params failed %d\n", __func__, ret); in sdw_hda_dai_hw_params()
545 hext_stream = ops->get_hext_stream(sdev, cpu_dai, substream); in sdw_hda_dai_hw_params()
555 if (dai == cpu_dai) { in sdw_hda_dai_hw_params()
566 ret = hdac_bus_eml_sdw_map_stream_ch(sof_to_bus(sdev), link_id, cpu_dai->id, in sdw_hda_dai_hw_params()
571 dev_err(cpu_dai->dev, "%s: hdac_bus_eml_sdw_map_stream_ch failed %d\n", in sdw_hda_dai_hw_params()
592 dev_err(cpu_dai->dev, in sdw_hda_dai_hw_params()
606 struct snd_soc_dai *cpu_dai, in sdw_hda_dai_hw_free() argument
609 struct snd_soc_dapm_widget *w = snd_soc_dai_get_widget(cpu_dai, substream->stream); in sdw_hda_dai_hw_free()
613 ret = hda_dai_hw_free(substream, cpu_dai); in sdw_hda_dai_hw_free()
615 dev_err(cpu_dai->dev, "%s: non_hda_dai_hw_free failed %d\n", __func__, ret); in sdw_hda_dai_hw_free()
622 ret = hdac_bus_eml_sdw_map_stream_ch(sof_to_bus(sdev), link_id, cpu_dai->id, in sdw_hda_dai_hw_free()
625 dev_err(cpu_dai->dev, "%s: hdac_bus_eml_sdw_map_stream_ch failed %d\n", in sdw_hda_dai_hw_free()
635 struct snd_soc_dai *cpu_dai) in sdw_hda_dai_trigger() argument
637 return hda_dai_trigger(substream, cmd, cpu_dai); in sdw_hda_dai_trigger()
663 struct snd_soc_dai *cpu_dai; in hda_dai_suspend() local
668 cpu_dai = snd_soc_rtd_to_cpu(rtd, 0); in hda_dai_suspend()
669 w = snd_soc_dai_get_widget(cpu_dai, hdac_stream(hext_stream)->direction); in hda_dai_suspend()
681 ret = ops->post_trigger(sdev, cpu_dai, in hda_dai_suspend()
689 hext_stream, cpu_dai, true); in hda_dai_suspend()