Lines Matching refs:widget

27 		isdigit(swidget->widget->name[strlen(swidget->widget->name) - 1]) &&  in is_aggregated_dai()
28 swidget->widget->name[strlen(swidget->widget->name) - 1] != '0'); in is_aggregated_dai()
31 static bool is_virtual_widget(struct snd_sof_dev *sdev, struct snd_soc_dapm_widget *widget, in is_virtual_widget() argument
34 switch (widget->id) { in is_virtual_widget()
38 dev_dbg(sdev->dev, "%s: %s is a virtual widget\n", func, widget->name); in is_virtual_widget()
45 static void sof_reset_route_setup_status(struct snd_sof_dev *sdev, struct snd_sof_widget *widget) in sof_reset_route_setup_status() argument
51 if (sroute->src_widget == widget || sroute->sink_widget == widget) { in sof_reset_route_setup_status()
90 swidget->widget->name); in sof_widget_free_unlocked()
112 i, swidget->widget->name); in sof_widget_free_unlocked()
132 dev_dbg(sdev->dev, "widget %s freed\n", swidget->widget->name); in sof_widget_free_unlocked()
171 dev_err(sdev->dev, "No pipeline set for %s\n", swidget->widget->name); in sof_widget_setup_unlocked()
187 i, swidget->widget->name); in sof_widget_setup_unlocked()
222 dev_dbg(sdev->dev, "widget %s setup complete\n", swidget->widget->name); in sof_widget_setup_unlocked()
267 if (is_virtual_widget(sdev, src_widget->widget, __func__) || in sof_route_setup()
268 is_virtual_widget(sdev, sink_widget->widget, __func__)) in sof_route_setup()
331 struct snd_soc_dapm_widget *widget; in sof_setup_pipeline_connections() local
344 for_each_dapm_widgets(list, i, widget) { in sof_setup_pipeline_connections()
345 if (!widget->dobj.private) in sof_setup_pipeline_connections()
348 snd_soc_dapm_widget_for_each_sink_path(widget, p) { in sof_setup_pipeline_connections()
353 ret = sof_set_up_same_dir_widget_routes(sdev, widget, in sof_setup_pipeline_connections()
361 for_each_dapm_widgets(list, i, widget) { in sof_setup_pipeline_connections()
362 if (!widget->dobj.private) in sof_setup_pipeline_connections()
365 snd_soc_dapm_widget_for_each_source_path(widget, p) { in sof_setup_pipeline_connections()
371 widget); in sof_setup_pipeline_connections()
391 src_widget_in_dapm_list = widget_in_list(list, sroute->src_widget->widget); in sof_setup_pipeline_connections()
392 sink_widget_in_dapm_list = widget_in_list(list, sroute->sink_widget->widget); in sof_setup_pipeline_connections()
409 src_widget = sroute->src_widget->widget->dobj.private; in sof_setup_pipeline_connections()
410 sink_widget = sroute->sink_widget->widget->dobj.private; in sof_setup_pipeline_connections()
423 ret = sof_route_setup(sdev, sroute->src_widget->widget, in sof_setup_pipeline_connections()
424 sroute->sink_widget->widget); in sof_setup_pipeline_connections()
434 sof_unprepare_widgets_in_path(struct snd_sof_dev *sdev, struct snd_soc_dapm_widget *widget, in sof_unprepare_widgets_in_path() argument
438 struct snd_sof_widget *swidget = widget->dobj.private; in sof_unprepare_widgets_in_path()
442 if (is_virtual_widget(sdev, widget, __func__)) in sof_unprepare_widgets_in_path()
456 widget_ops = tplg_ops ? tplg_ops->widget : NULL; in sof_unprepare_widgets_in_path()
457 if (widget_ops && widget_ops[widget->id].ipc_unprepare) in sof_unprepare_widgets_in_path()
459 widget_ops[widget->id].ipc_unprepare(swidget); in sof_unprepare_widgets_in_path()
465 snd_soc_dapm_widget_for_each_sink_path(widget, p) { in sof_unprepare_widgets_in_path()
478 sof_prepare_widgets_in_path(struct snd_sof_dev *sdev, struct snd_soc_dapm_widget *widget, in sof_prepare_widgets_in_path() argument
485 struct snd_sof_widget *swidget = widget->dobj.private; in sof_prepare_widgets_in_path()
490 if (is_virtual_widget(sdev, widget, __func__)) in sof_prepare_widgets_in_path()
496 widget_ops = tplg_ops ? tplg_ops->widget : NULL; in sof_prepare_widgets_in_path()
505 if (!widget_ops[widget->id].ipc_prepare || is_aggregated_dai(swidget)) in sof_prepare_widgets_in_path()
509 ret = widget_ops[widget->id].ipc_prepare(swidget, fe_params, platform_params, in sof_prepare_widgets_in_path()
512 dev_err(sdev->dev, "failed to prepare widget %s\n", widget->name); in sof_prepare_widgets_in_path()
520 snd_soc_dapm_widget_for_each_sink_path(widget, p) { in sof_prepare_widgets_in_path()
532 if (widget_ops[widget->id].ipc_unprepare && in sof_prepare_widgets_in_path()
534 widget_ops[widget->id].ipc_unprepare(swidget); in sof_prepare_widgets_in_path()
549 static int sof_free_widgets_in_path(struct snd_sof_dev *sdev, struct snd_soc_dapm_widget *widget, in sof_free_widgets_in_path() argument
553 struct snd_sof_widget *swidget = widget->dobj.private; in sof_free_widgets_in_path()
558 if (is_virtual_widget(sdev, widget, __func__)) in sof_free_widgets_in_path()
572 err = sof_widget_free(sdev, widget->dobj.private); in sof_free_widgets_in_path()
577 snd_soc_dapm_widget_for_each_sink_path(widget, p) { in sof_free_widgets_in_path()
599 static int sof_set_up_widgets_in_path(struct snd_sof_dev *sdev, struct snd_soc_dapm_widget *widget, in sof_set_up_widgets_in_path() argument
604 struct snd_sof_widget *swidget = widget->dobj.private; in sof_set_up_widgets_in_path()
609 if (is_virtual_widget(sdev, widget, __func__)) in sof_set_up_widgets_in_path()
649 snd_soc_dapm_widget_for_each_sink_path(widget, p) { in sof_set_up_widgets_in_path()
676 struct snd_soc_dapm_widget *widget; in sof_walk_widgets_in_order() local
684 for_each_dapm_widgets(list, i, widget) { in sof_walk_widgets_in_order()
686 if (dir == SNDRV_PCM_STREAM_PLAYBACK && widget->id != snd_soc_dapm_aif_in) in sof_walk_widgets_in_order()
690 if (dir == SNDRV_PCM_STREAM_CAPTURE && widget->id != snd_soc_dapm_dai_out && in sof_walk_widgets_in_order()
691 widget->id != snd_soc_dapm_output) in sof_walk_widgets_in_order()
696 ret = sof_set_up_widgets_in_path(sdev, widget, dir, spcm); in sof_walk_widgets_in_order()
700 ret = sof_free_widgets_in_path(sdev, widget, dir, spcm); in sof_walk_widgets_in_order()
716 ret = sof_prepare_widgets_in_path(sdev, widget, fe_params, platform_params, in sof_walk_widgets_in_order()
721 sof_unprepare_widgets_in_path(sdev, widget, list, dir); in sof_walk_widgets_in_order()
767 struct snd_soc_dapm_widget *widget; in sof_widget_list_setup() local
792 for_each_dapm_widgets(list, i, widget) { in sof_widget_list_setup()
793 struct snd_sof_widget *swidget = widget->dobj.private; in sof_widget_list_setup()
803 swidget->widget->name); in sof_widget_list_setup()
811 swidget->widget->name); in sof_widget_list_setup()
961 if (strcmp(name, swidget->widget->name) == 0) in snd_sof_find_swidget()
983 if (!strcmp(pcm_name, swidget->widget->sname) && in snd_sof_find_swidget_sname()