/linux-5.19.10/sound/soc/sof/ |
D | ipc3-topology.c | 311 static void *sof_comp_alloc(struct snd_sof_widget *swidget, size_t *ipc_size, in sof_comp_alloc() argument 316 size_t ext_size = sizeof(swidget->uuid); in sof_comp_alloc() 319 if (!guid_is_null(&swidget->uuid)) in sof_comp_alloc() 329 comp->id = swidget->comp_id; in sof_comp_alloc() 331 comp->core = swidget->core; in sof_comp_alloc() 336 memcpy((u8 *)comp + *ipc_size, &swidget->uuid, ext_size); in sof_comp_alloc() 352 static int sof_ipc3_widget_setup_comp_host(struct snd_sof_widget *swidget) in sof_ipc3_widget_setup_comp_host() argument 354 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc3_widget_setup_comp_host() 359 host = sof_comp_alloc(swidget, &ipc_size, swidget->pipeline_id); in sof_ipc3_widget_setup_comp_host() 362 swidget->private = host; in sof_ipc3_widget_setup_comp_host() [all …]
|
D | sof-audio.c | 29 int sof_widget_free(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget) in sof_widget_free() argument 35 if (!swidget->private) in sof_widget_free() 39 if (--swidget->use_count) in sof_widget_free() 43 sof_reset_route_setup_status(sdev, swidget); in sof_widget_free() 47 err = tplg_ops->widget_free(sdev, swidget); in sof_widget_free() 53 ret = snd_sof_dsp_core_put(sdev, swidget->core); in sof_widget_free() 56 swidget->core, swidget->widget->name); in sof_widget_free() 65 if (swidget->dynamic_pipeline_widget && swidget->id != snd_soc_dapm_scheduler) { in sof_widget_free() 66 ret = sof_widget_free(sdev, swidget->pipe_widget); in sof_widget_free() 69 swidget->pipe_widget->complete = 0; in sof_widget_free() [all …]
|
D | topology.c | 1144 static int sof_widget_parse_tokens(struct snd_soc_component *scomp, struct snd_sof_widget *swidget, in sof_widget_parse_tokens() argument 1156 dev_err(scomp->dev, "No token list for widget %s\n", swidget->widget->name); in sof_widget_parse_tokens() 1165 swidget->tuples = kcalloc(num_tuples, sizeof(*swidget->tuples), GFP_KERNEL); in sof_widget_parse_tokens() 1166 if (!swidget->tuples) in sof_widget_parse_tokens() 1173 object_token_list[i], swidget->widget->name); in sof_widget_parse_tokens() 1180 ret = sof_parse_tokens(scomp, swidget, in sof_widget_parse_tokens() 1187 swidget->widget->name); in sof_widget_parse_tokens() 1196 object_token_list[i], 1, swidget->tuples, in sof_widget_parse_tokens() 1197 num_tuples, &swidget->num_tuples); in sof_widget_parse_tokens() 1200 token_list[object_token_list[i]].name, swidget->widget->name, ret); in sof_widget_parse_tokens() [all …]
|
D | sof-audio.h | 121 int (*widget_kcontrol_setup)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 138 int (*ipc_setup)(struct snd_sof_widget *swidget); 139 void (*ipc_free)(struct snd_sof_widget *swidget); 142 int (*bind_event)(struct snd_soc_component *scomp, struct snd_sof_widget *swidget, 144 int (*ipc_prepare)(struct snd_sof_widget *swidget, 148 void (*ipc_unprepare)(struct snd_sof_widget *swidget); 180 int (*pipeline_complete)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 181 int (*widget_setup)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 182 int (*widget_free)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 183 int (*dai_config)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget, [all …]
|
D | ipc3-control.c | 21 struct snd_sof_widget *swidget; in sof_ipc3_set_get_kcontrol_data() local 25 list_for_each_entry(swidget, &sdev->widget_list, list) { in sof_ipc3_set_get_kcontrol_data() 26 if (swidget->comp_id == scontrol->comp_id) { in sof_ipc3_set_get_kcontrol_data() 43 if (!swidget->use_count) in sof_ipc3_set_get_kcontrol_data() 533 struct snd_sof_widget *swidget; in sof_ipc3_control_update() local 549 list_for_each_entry(swidget, &sdev->widget_list, list) { in sof_ipc3_control_update() 550 if (swidget->comp_id == cdata->comp_id) { in sof_ipc3_control_update() 576 widget = swidget->widget; in sof_ipc3_control_update() 637 snd_ctl_notify_one(swidget->scomp->card->snd_card, SNDRV_CTL_EVENT_MASK_VALUE, kc, 0); in sof_ipc3_control_update() 641 struct snd_sof_widget *swidget) in sof_ipc3_widget_kcontrol_setup() argument [all …]
|
/linux-5.19.10/sound/soc/sof/intel/ |
D | hda.c | 47 struct snd_sof_widget *swidget = w->dobj.private; in hda_ctrl_dai_widget_setup() local 48 struct snd_soc_component *component = swidget->scomp; in hda_ctrl_dai_widget_setup() 51 struct snd_sof_dai *sof_dai = swidget->private; in hda_ctrl_dai_widget_setup() 66 ret = tplg_ops->dai_config(sdev, swidget, flags, data); in hda_ctrl_dai_widget_setup() 80 struct snd_sof_widget *swidget = w->dobj.private; in hda_ctrl_dai_widget_free() local 81 struct snd_soc_component *component = swidget->scomp; in hda_ctrl_dai_widget_free() 84 struct snd_sof_dai *sof_dai = swidget->private; in hda_ctrl_dai_widget_free() 99 ret = tplg_ops->dai_config(sdev, swidget, flags, data); in hda_ctrl_dai_widget_free()
|
D | hda-dai.c | 356 struct snd_sof_widget *swidget = w->dobj.private; in hda_dai_config_pause_push_ipc() local 357 struct snd_soc_component *component = swidget->scomp; in hda_dai_config_pause_push_ipc() 363 ret = tplg_ops->dai_config(sdev, swidget, SOF_DAI_CONFIG_FLAGS_PAUSE, NULL); in hda_dai_config_pause_push_ipc()
|