Home
last modified time | relevance | path

Searched refs:spcm (Results 1 – 18 of 18) sorted by relevance

/openbmc/linux/sound/soc/sof/
H A Dpcm.c29 struct snd_sof_pcm *spcm; in create_page_table() local
33 spcm = snd_sof_find_spcm_dai(component, rtd); in create_page_table()
34 if (!spcm) in create_page_table()
38 spcm->stream[stream].page_table.area, size); in create_page_table()
66 struct snd_sof_pcm *spcm; in snd_sof_pcm_period_elapsed() local
68 spcm = snd_sof_find_spcm_dai(component, rtd); in snd_sof_pcm_period_elapsed()
69 if (!spcm) { in snd_sof_pcm_period_elapsed()
83 schedule_work(&spcm->stream[substream->stream].period_elapsed_work); in snd_sof_pcm_period_elapsed()
89 struct snd_sof_pcm *spcm, struct snd_pcm_hw_params *params, in sof_pcm_setup_connected_widgets() argument
107 spcm->stream[dir].list = list; in sof_pcm_setup_connected_widgets()
[all …]
H A Dcompress.c54 struct snd_sof_pcm *spcm; in snd_sof_compr_fragment_elapsed() local
64 spcm = snd_sof_find_spcm_dai(component, rtd); in snd_sof_compr_fragment_elapsed()
65 if (!spcm) { in snd_sof_compr_fragment_elapsed()
71 sof_set_transferred_bytes(sstream, spcm->stream[cstream->direction].posn.host_posn, in snd_sof_compr_fragment_elapsed()
75 schedule_work(&spcm->stream[cstream->direction].period_elapsed_work); in snd_sof_compr_fragment_elapsed()
85 struct snd_sof_pcm *spcm; in create_page_table() local
87 spcm = snd_sof_find_spcm_dai(component, rtd); in create_page_table()
88 if (!spcm) in create_page_table()
92 spcm->stream[dir].page_table.area, size); in create_page_table()
101 struct snd_sof_pcm *spcm; in sof_compr_open() local
[all …]
H A Dsof-audio.c508 int dir, struct snd_sof_pcm *spcm) in sof_free_widgets_in_path() argument
510 struct snd_soc_dapm_widget_list *list = spcm->stream[dir].list; in sof_free_widgets_in_path()
532 err = sof_free_widgets_in_path(sdev, p->sink, dir, spcm); in sof_free_widgets_in_path()
548 int dir, struct snd_sof_pcm *spcm) in sof_set_up_widgets_in_path() argument
550 struct snd_sof_pcm_stream_pipeline_list *pipeline_list = &spcm->stream[dir].pipeline_list; in sof_set_up_widgets_in_path()
551 struct snd_soc_dapm_widget_list *list = spcm->stream[dir].list; in sof_set_up_widgets_in_path()
596 ret = sof_set_up_widgets_in_path(sdev, p->sink, dir, spcm); in sof_set_up_widgets_in_path()
610 sof_walk_widgets_in_order(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm, in sof_walk_widgets_in_order() argument
615 struct snd_soc_dapm_widget_list *list = spcm->stream[dir].list; in sof_walk_widgets_in_order()
638 ret = sof_set_up_widgets_in_path(sdev, widget, dir, spcm); in sof_walk_widgets_in_order()
[all …]
H A Dipc4-pcm.c290 struct snd_sof_pcm *spcm; in sof_ipc4_trigger_pipelines() local
296 spcm = snd_sof_find_spcm_dai(component, rtd); in sof_ipc4_trigger_pipelines()
297 if (!spcm) in sof_ipc4_trigger_pipelines()
300 pipeline_list = &spcm->stream[substream->stream].pipeline_list; in sof_ipc4_trigger_pipelines()
582 static void sof_ipc4_pcm_free(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm) in sof_ipc4_pcm_free() argument
588 pipeline_list = &spcm->stream[stream].pipeline_list; in sof_ipc4_pcm_free()
591 kfree(spcm->stream[stream].private); in sof_ipc4_pcm_free()
592 spcm->stream[stream].private = NULL; in sof_ipc4_pcm_free()
596 static int sof_ipc4_pcm_setup(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm) in sof_ipc4_pcm_setup() argument
614 pipeline_list = &spcm->stream[stream].pipeline_list; in sof_ipc4_pcm_setup()
[all …]
H A Dipc3-pcm.c22 struct snd_sof_pcm *spcm; in sof_ipc3_pcm_hw_free() local
24 spcm = snd_sof_find_spcm_dai(component, rtd); in sof_ipc3_pcm_hw_free()
25 if (!spcm) in sof_ipc3_pcm_hw_free()
28 if (!spcm->prepared[substream->stream]) in sof_ipc3_pcm_hw_free()
33 stream.comp_id = spcm->stream[substream->stream].comp_id; in sof_ipc3_pcm_hw_free()
50 struct snd_sof_pcm *spcm; in sof_ipc3_pcm_hw_params() local
53 spcm = snd_sof_find_spcm_dai(component, rtd); in sof_ipc3_pcm_hw_params()
54 if (!spcm) in sof_ipc3_pcm_hw_params()
65 pcm.comp_id = spcm->stream[substream->stream].comp_id; in sof_ipc3_pcm_hw_params()
67 pcm.params.buffer.phy_addr = spcm->stream[substream->stream].page_table.addr; in sof_ipc3_pcm_hw_params()
[all …]
H A Dsof-audio.h126 int (*pcm_setup)(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm);
127 void (*pcm_free)(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm);
570 struct snd_sof_pcm *spcm, int direction,
586 struct snd_sof_pcm *spcm; in snd_sof_find_spcm_dai() local
588 list_for_each_entry(spcm, &sdev->pcm_list, list) { in snd_sof_find_spcm_dai()
589 if (le32_to_cpu(spcm->pcm.dai_id) == rtd->dai_link->id) in snd_sof_find_spcm_dai()
590 return spcm; in snd_sof_find_spcm_dai()
629 int sof_widget_list_setup(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm,
633 int sof_widget_list_free(struct snd_sof_dev *sdev, struct snd_sof_pcm *spcm, int dir);
635 struct snd_sof_pcm *spcm);
[all …]
H A Dtopology.c1149 static int spcm_bind(struct snd_soc_component *scomp, struct snd_sof_pcm *spcm, in spcm_bind() argument
1159 spcm->pcm.caps[dir].name, in spcm_bind()
1166 spcm->stream[dir].comp_id = host_widget->comp_id; in spcm_bind()
1711 struct snd_sof_pcm *spcm; in sof_dai_load() local
1719 spcm = kzalloc(sizeof(*spcm), GFP_KERNEL); in sof_dai_load()
1720 if (!spcm) in sof_dai_load()
1723 spcm->scomp = scomp; in sof_dai_load()
1726 spcm->stream[stream].comp_id = COMP_ID_UNASSIGNED; in sof_dai_load()
1728 snd_sof_compr_init_elapsed_work(&spcm->stream[stream].period_elapsed_work); in sof_dai_load()
1730 snd_sof_pcm_init_elapsed_work(&spcm->stream[stream].period_elapsed_work); in sof_dai_load()
[all …]
H A Dipc3.c875 struct snd_sof_pcm *spcm; in ipc3_period_elapsed() local
878 spcm = snd_sof_find_spcm_comp(scomp, msg_id, &direction); in ipc3_period_elapsed()
879 if (!spcm) { in ipc3_period_elapsed()
885 stream = &spcm->stream[direction]; in ipc3_period_elapsed()
896 if (spcm->pcm.compress) in ipc3_period_elapsed()
910 struct snd_sof_pcm *spcm; in ipc3_xrun() local
913 spcm = snd_sof_find_spcm_comp(scomp, msg_id, &direction); in ipc3_xrun()
914 if (!spcm) { in ipc3_xrun()
920 stream = &spcm->stream[direction]; in ipc3_xrun()
H A Dipc3-topology.c1818 struct snd_sof_pcm *spcm; in sof_ipc3_keyword_detect_pcm_params() local
1822 spcm = snd_sof_find_spcm_name(scomp, swidget->widget->sname); in sof_ipc3_keyword_detect_pcm_params()
1823 if (!spcm) { in sof_ipc3_keyword_detect_pcm_params()
1828 params = &spcm->params[dir]; in sof_ipc3_keyword_detect_pcm_params()
1894 struct snd_sof_pcm *spcm; in sof_ipc3_keyword_dapm_event() local
1906 spcm = snd_sof_find_spcm_name(scomp, swidget->widget->sname); in sof_ipc3_keyword_dapm_event()
1907 if (!spcm) { in sof_ipc3_keyword_dapm_event()
1916 if (spcm->stream[stream].suspend_ignored) { in sof_ipc3_keyword_dapm_event()
1936 if (spcm->stream[stream].suspend_ignored) { in sof_ipc3_keyword_dapm_event()
2298 struct snd_sof_pcm *spcm; in sof_tear_down_left_over_pipelines() local
[all …]
H A Dipc4-topology.c2935 struct snd_sof_pcm *spcm; in sof_ipc4_tear_down_all_pipelines() local
2949 list_for_each_entry(spcm, &sdev->pcm_list, list) { in sof_ipc4_tear_down_all_pipelines()
2951 struct snd_pcm_substream *substream = spcm->stream[dir].substream; in sof_ipc4_tear_down_all_pipelines()
2953 if (!substream || !substream->runtime || spcm->stream[dir].suspend_ignored) in sof_ipc4_tear_down_all_pipelines()
2956 if (spcm->stream[dir].list) { in sof_ipc4_tear_down_all_pipelines()
2957 ret = sof_pcm_stream_free(sdev, substream, spcm, dir, true); in sof_ipc4_tear_down_all_pipelines()
/openbmc/linux/sound/soc/intel/boards/
H A Dhda_dsp_common.c24 struct snd_pcm *spcm; in hda_dsp_hdmi_pcm_handle() local
28 spcm = rtd->pcm ? in hda_dsp_hdmi_pcm_handle()
30 if (spcm && strstr(spcm->id, "HDMI")) { in hda_dsp_hdmi_pcm_handle()
49 struct snd_pcm *spcm; in hda_dsp_hdmi_build_controls() local
60 spcm = hda_dsp_hdmi_pcm_handle(card, i); in hda_dsp_hdmi_build_controls()
61 if (spcm) { in hda_dsp_hdmi_build_controls()
62 hpcm->pcm = spcm; in hda_dsp_hdmi_build_controls()
63 hpcm->device = spcm->device; in hda_dsp_hdmi_build_controls()
66 i, hpcm->device, spcm); in hda_dsp_hdmi_build_controls()
/openbmc/linux/sound/soc/intel/avs/boards/
H A Dhdaudio.c80 struct snd_pcm *spcm; in avs_card_hdmi_pcm_at() local
83 spcm = rtd->pcm ? rtd->pcm->streams[dir].pcm : NULL; in avs_card_hdmi_pcm_at()
84 if (!spcm || !strstr(spcm->id, FEDAI_NAME_PREFIX)) in avs_card_hdmi_pcm_at()
87 ret = sscanf(spcm->id, FEDAI_NAME_PREFIX "%d", &n); in avs_card_hdmi_pcm_at()
106 struct snd_pcm *spcm; in avs_card_late_probe() local
108 spcm = avs_card_hdmi_pcm_at(card, i); in avs_card_late_probe()
109 if (spcm) { in avs_card_late_probe()
110 hpcm->pcm = spcm; in avs_card_late_probe()
111 hpcm->device = spcm->device; in avs_card_late_probe()
113 __func__, i, hpcm->device, spcm); in avs_card_late_probe()
/openbmc/linux/sound/soc/sof/intel/
H A Dhda-pcm.c184 struct snd_sof_pcm *spcm; in hda_dsp_pcm_pointer() local
187 spcm = snd_sof_find_spcm_dai(scomp, rtd); in hda_dsp_pcm_pointer()
188 if (!spcm) { in hda_dsp_pcm_pointer()
196 pos = spcm->stream[substream->stream].posn.host_posn; in hda_dsp_pcm_pointer()
215 struct snd_sof_pcm *spcm; in hda_dsp_pcm_open() local
219 spcm = snd_sof_find_spcm_dai(scomp, rtd); in hda_dsp_pcm_open()
220 if (!spcm) { in hda_dsp_pcm_open()
241 spcm->stream[substream->stream].d0i3_compatible) in hda_dsp_pcm_open()
H A Dhda-dsp.c434 struct snd_sof_pcm *spcm; in hda_dsp_d0i3_streaming_applicable() local
438 list_for_each_entry(spcm, &sdev->pcm_list, list) { in hda_dsp_d0i3_streaming_applicable()
440 substream = spcm->stream[dir].substream; in hda_dsp_d0i3_streaming_applicable()
444 if (!spcm->stream[dir].d0i3_compatible) in hda_dsp_d0i3_streaming_applicable()
/openbmc/linux/sound/soc/sof/amd/
H A Dacp-pcm.c96 struct snd_sof_pcm *spcm; in acp_pcm_pointer() local
100 spcm = snd_sof_find_spcm_dai(scomp, rtd); in acp_pcm_pointer()
101 if (!spcm) { in acp_pcm_pointer()
107 stream = &spcm->stream[substream->stream]; in acp_pcm_pointer()
115 pos = spcm->stream[substream->stream].posn.host_posn; in acp_pcm_pointer()
/openbmc/linux/include/trace/events/
H A Dsof.h64 struct snd_sof_pcm *spcm,
69 TP_ARGS(sdev, spcm, substream, dma_posn, dai_posn),
79 __entry->pcm_id = le32_to_cpu(spcm->pcm.pcm_id);
/openbmc/linux/sound/soc/sof/mediatek/mt8195/
H A Dmt8195.c475 struct snd_sof_pcm *spcm; in mt8195_pcm_pointer() local
481 spcm = snd_sof_find_spcm_dai(scomp, rtd); in mt8195_pcm_pointer()
482 if (!spcm) { in mt8195_pcm_pointer()
488 stream = &spcm->stream[substream->stream]; in mt8195_pcm_pointer()
496 pos = spcm->stream[substream->stream].posn.host_posn; in mt8195_pcm_pointer()
/openbmc/linux/sound/soc/sof/mediatek/mt8186/
H A Dmt8186.c456 struct snd_sof_pcm *spcm; in mt8186_pcm_pointer() local
462 spcm = snd_sof_find_spcm_dai(scomp, rtd); in mt8186_pcm_pointer()
463 if (!spcm) { in mt8186_pcm_pointer()
469 stream = &spcm->stream[substream->stream]; in mt8186_pcm_pointer()
477 pos = spcm->stream[substream->stream].posn.host_posn; in mt8186_pcm_pointer()