/linux/sound/soc/sof/ |
H A D | sof-audio.c | 45 struct snd_sof_widget *swidget) in sof_widget_free_unlocked() argument 48 struct snd_sof_pipeline *spipe = swidget->spipe; in sof_widget_free_unlocked() 52 if (!swidget->private) in sof_widget_free_unlocked() 55 trace_sof_widget_free(swidget); in sof_widget_free_unlocked() 58 if (--swidget->use_count) in sof_widget_free_unlocked() 62 sof_reset_route_setup_status(sdev, swidget); in sof_widget_free_unlocked() 65 if (WIDGET_IS_DAI(swidget->id)) { in sof_widget_free_unlocked() 72 err = tplg_ops->dai_config(sdev, swidget, flags, &data); in sof_widget_free_unlocked() 75 swidget->widget->name); in sof_widget_free_unlocked() 81 ret = tplg_ops->widget_free(sdev, swidget); in sof_widget_free_unlocked() [all …]
|
H A D | ipc3-topology.c | 355 * @swidget: pointer to struct snd_sof_widget containing extended data 362 static void *sof_comp_alloc(struct snd_sof_widget *swidget, size_t *ipc_size, in sof_comp_alloc() 367 size_t ext_size = sizeof(swidget->uuid); in sof_comp_alloc() 370 if (!guid_is_null(&swidget->uuid)) in sof_comp_alloc() 380 comp->id = swidget->comp_id; in sof_comp_alloc() 382 comp->core = swidget->core; in sof_comp_alloc() 387 memcpy((u8 *)comp + *ipc_size, &swidget->uuid, ext_size); in sof_comp_alloc() 403 static int sof_ipc3_widget_setup_comp_host(struct snd_sof_widget *swidget) in sof_ipc3_widget_setup_comp_host() 405 struct snd_soc_component *scomp = swidget->scomp; in sof_ipc3_widget_setup_comp_host() 410 host = sof_comp_alloc(swidget, in sof_ipc3_widget_setup_comp_host() 359 sof_comp_alloc(struct snd_sof_widget * swidget,size_t * ipc_size,int index) sof_comp_alloc() argument 400 sof_ipc3_widget_setup_comp_host(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_host() argument 444 sof_ipc3_widget_free_comp(struct snd_sof_widget * swidget) sof_ipc3_widget_free_comp() argument 449 sof_ipc3_widget_setup_comp_tone(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_tone() argument 482 sof_ipc3_widget_setup_comp_mixer(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_mixer() argument 516 sof_ipc3_widget_setup_comp_pipeline(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_pipeline() argument 583 sof_ipc3_widget_setup_comp_buffer(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_buffer() argument 618 sof_ipc3_widget_setup_comp_src(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_src() argument 659 sof_ipc3_widget_setup_comp_asrc(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_asrc() argument 705 sof_ipc3_widget_setup_comp_mux(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_mux() argument 741 sof_ipc3_widget_setup_comp_pga(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_pga() argument 880 sof_process_load(struct snd_soc_component * scomp,struct snd_sof_widget * swidget,int type) sof_process_load() argument 979 sof_widget_update_ipc_comp_process(struct snd_sof_widget * swidget) sof_widget_update_ipc_comp_process() argument 1555 sof_ipc3_widget_setup_comp_dai(struct snd_sof_widget * swidget) sof_ipc3_widget_setup_comp_dai() argument 1694 sof_ipc3_widget_free_comp_dai(struct snd_sof_widget * swidget) sof_ipc3_widget_free_comp_dai() argument 1888 sof_ipc3_keyword_detect_pcm_params(struct snd_sof_widget * swidget,int dir) sof_ipc3_keyword_detect_pcm_params() argument 1944 sof_ipc3_keyword_detect_trigger(struct snd_sof_widget * swidget,int cmd) sof_ipc3_keyword_detect_trigger() argument 1967 struct snd_sof_widget *swidget = w->dobj.private; sof_ipc3_keyword_dapm_event() local 2043 sof_ipc3_widget_bind_event(struct snd_soc_component * scomp,struct snd_sof_widget * swidget,u16 event_type) sof_ipc3_widget_bind_event() argument 2071 sof_ipc3_complete_pipeline(struct snd_sof_dev * sdev,struct snd_sof_widget * swidget) sof_ipc3_complete_pipeline() argument 2091 sof_ipc3_widget_free(struct snd_sof_dev * sdev,struct snd_sof_widget * swidget) sof_ipc3_widget_free() argument 2126 sof_ipc3_dai_config(struct snd_sof_dev * sdev,struct snd_sof_widget * swidget,unsigned int flags,struct snd_sof_dai_config_data * data) sof_ipc3_dai_config() argument 2220 sof_ipc3_widget_setup(struct snd_sof_dev * sdev,struct snd_sof_widget * swidget) sof_ipc3_widget_setup() argument 2264 struct snd_sof_widget *swidget; sof_ipc3_set_up_all_pipelines() local 2365 struct snd_sof_widget *swidget; sof_tear_down_left_over_pipelines() local 2407 struct snd_sof_widget *swidget; sof_ipc3_free_widgets_in_list() local 2448 struct snd_sof_widget *swidget; sof_ipc3_tear_down_all_pipelines() local [all...] |
H A D | topology.c | 1188 static int sof_widget_parse_tokens(struct snd_soc_component *scomp, struct snd_sof_widget *swidget, in sof_widget_parse_tokens() argument 1205 dev_err(scomp->dev, "No token list for widget %s\n", swidget->widget->name); in sof_widget_parse_tokens() 1214 swidget->tuples = kcalloc(num_tuples, sizeof(*swidget->tuples), GFP_KERNEL); in sof_widget_parse_tokens() 1215 if (!swidget->tuples) in sof_widget_parse_tokens() 1224 object_token_list[i], swidget->widget->name); in sof_widget_parse_tokens() 1232 ret = sof_parse_tokens(scomp, swidget, in sof_widget_parse_tokens() 1239 swidget->widget->name); in sof_widget_parse_tokens() 1246 swidget->tuples, swidget->num_tuples); in sof_widget_parse_tokens() 1249 swidget->widget->name); in sof_widget_parse_tokens() 1256 swidget->tuples, swidget->num_tuples); in sof_widget_parse_tokens() [all …]
|
H A D | ipc4-control.c | 23 struct snd_sof_widget *swidget; in sof_ipc4_set_get_kcontrol_data() local 28 list_for_each_entry(swidget, &sdev->widget_list, list) { in sof_ipc4_set_get_kcontrol_data() 29 if (swidget->comp_id == scontrol->comp_id) { in sof_ipc4_set_get_kcontrol_data() 41 mutex_lock(&swidget->setup_mutex); in sof_ipc4_set_get_kcontrol_data() 43 lockdep_assert_held(&swidget->setup_mutex); in sof_ipc4_set_get_kcontrol_data() 50 if (!swidget->use_count) in sof_ipc4_set_get_kcontrol_data() 54 msg->primary |= SOF_IPC4_MOD_INSTANCE(swidget->instance_id); in sof_ipc4_set_get_kcontrol_data() 80 mutex_unlock(&swidget->setup_mutex); in sof_ipc4_set_get_kcontrol_data() 86 sof_ipc4_set_volume_data(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget, in sof_ipc4_set_volume_data() argument 90 struct sof_ipc4_gain *gain = swidget->private; in sof_ipc4_set_volume_data() [all …]
|
H A D | ipc3-control.c | 22 struct snd_sof_widget *swidget; in sof_ipc3_set_get_kcontrol_data() local 27 list_for_each_entry(swidget, &sdev->widget_list, list) { in sof_ipc3_set_get_kcontrol_data() 28 if (swidget->comp_id == scontrol->comp_id) { in sof_ipc3_set_get_kcontrol_data() 41 mutex_lock(&swidget->setup_mutex); in sof_ipc3_set_get_kcontrol_data() 43 lockdep_assert_held(&swidget->setup_mutex); in sof_ipc3_set_get_kcontrol_data() 50 if (!swidget->use_count) in sof_ipc3_set_get_kcontrol_data() 122 mutex_unlock(&swidget->setup_mutex); in sof_ipc3_set_get_kcontrol_data() 555 struct snd_sof_widget *swidget; in sof_ipc3_control_update() local 571 list_for_each_entry(swidget, &sdev->widget_list, list) { in sof_ipc3_control_update() 572 if (swidget->comp_id == cdata->comp_id) { in sof_ipc3_control_update() [all …]
|
H A D | sof-audio.h | 165 int (*widget_kcontrol_setup)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 182 int (*ipc_setup)(struct snd_sof_widget *swidget); 183 void (*ipc_free)(struct snd_sof_widget *swidget); 186 int (*bind_event)(struct snd_soc_component *scomp, struct snd_sof_widget *swidget, 188 int (*ipc_prepare)(struct snd_sof_widget *swidget, 192 void (*ipc_unprepare)(struct snd_sof_widget *swidget); 228 int (*pipeline_complete)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 229 int (*widget_setup)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 230 int (*widget_free)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 231 int (*dai_config)(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget, [all …]
|
/linux/include/trace/events/ |
H A D | sof.h | 19 TP_PROTO(struct snd_sof_widget *swidget), 20 TP_ARGS(swidget), 22 __string(name, swidget->widget->name) 27 __entry->use_count = swidget->use_count; 33 TP_PROTO(struct snd_sof_widget *swidget), 34 TP_ARGS(swidget) 38 TP_PROTO(struct snd_sof_widget *swidget), 39 TP_ARGS(swidget)
|
/linux/sound/soc/sof/intel/ |
H A D | hda-dai-ops.c | 131 struct snd_sof_widget *swidget; in hda_ipc4_get_hext_stream() local 135 swidget = w->dobj.private; in hda_ipc4_get_hext_stream() 136 pipe_widget = swidget->spipe->pipe_widget; in hda_ipc4_get_hext_stream() 302 struct snd_sof_widget *swidget; in hda_ipc4_pre_trigger() local 307 swidget = w->dobj.private; in hda_ipc4_pre_trigger() 308 pipe_widget = swidget->spipe->pipe_widget; in hda_ipc4_pre_trigger() 379 struct snd_sof_widget *swidget; in hda_ipc4_post_trigger() local 384 swidget = w->dobj.private; in hda_ipc4_post_trigger() 385 pipe_widget = swidget->spipe->pipe_widget; in hda_ipc4_post_trigger() 408 swidget->spipe->started_count++; in hda_ipc4_post_trigger() [all …]
|
H A D | hda-dai.c | 35 struct snd_sof_widget *swidget = w->dobj.private; in hda_dai_config() local 40 if (!swidget) in hda_dai_config() 47 ret = tplg_ops->dai_config(sdev, swidget, flags, data); in hda_dai_config() 73 struct snd_sof_widget *swidget = w->dobj.private; in hda_dai_get_ops() local 79 if (!swidget) { in hda_dai_get_ops() 85 return hda_select_dai_widget_ops(sdev, swidget); in hda_dai_get_ops() 87 sdai = swidget->private; in hda_dai_get_ops() 92 hda_select_dai_widget_ops(sdev, swidget); in hda_dai_get_ops() 355 struct snd_sof_widget *swidget = w->dobj.private; in widget_to_copier() local 356 struct snd_sof_dai *sdai = swidget->private; in widget_to_copier() [all …]
|
H A D | hda.h | 1038 hda_select_dai_widget_ops(struct snd_sof_dev *sdev, struct snd_sof_widget *swidget); 1044 struct snd_sof_widget *swidget = w->dobj.private; in widget_to_sdev() local 1045 struct snd_soc_component *component = swidget->scomp; in widget_to_sdev()
|
H A D | hda.c | 80 struct snd_sof_widget *swidget = w->dobj.private; in sdw_params_free() local 81 struct snd_sof_dai *dai = swidget->private; in sdw_params_free()
|