Lines Matching refs:cont

120 	struct audioreach_container *cont;  in audioreach_tplg_alloc_container()  local
127 cont = idr_find(&apm->containers_idr, container_id); in audioreach_tplg_alloc_container()
130 if (cont) { in audioreach_tplg_alloc_container()
132 return cont; in audioreach_tplg_alloc_container()
136 cont = kzalloc(sizeof(*cont), GFP_KERNEL); in audioreach_tplg_alloc_container()
137 if (!cont) in audioreach_tplg_alloc_container()
140 INIT_LIST_HEAD(&cont->modules_list); in audioreach_tplg_alloc_container()
143 ret = idr_alloc_u32(&apm->containers_idr, cont, &container_id, container_id, GFP_KERNEL); in audioreach_tplg_alloc_container()
148 kfree(cont); in audioreach_tplg_alloc_container()
152 cont->container_id = container_id; in audioreach_tplg_alloc_container()
153 cont->sub_graph = sg; in audioreach_tplg_alloc_container()
155 list_add_tail(&cont->node, &sg->container_list); in audioreach_tplg_alloc_container()
158 return cont; in audioreach_tplg_alloc_container()
162 struct audioreach_container *cont, in audioreach_tplg_alloc_module() argument
200 list_add_tail(&mod->node, &cont->modules_list); in audioreach_tplg_alloc_module()
201 mod->container = cont; in audioreach_tplg_alloc_module()
203 cont->num_modules++; in audioreach_tplg_alloc_module()
370 struct audioreach_container *cont; in audioreach_parse_cont_tokens() local
381 cont = audioreach_tplg_alloc_container(apm, sg, container_id, &found); in audioreach_parse_cont_tokens()
382 if (IS_ERR(cont) || found)/* Error or Already parsed container data */ in audioreach_parse_cont_tokens()
383 return cont; in audioreach_parse_cont_tokens()
386 cont->capability_id = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
389 cont->stack_size = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
392 cont->graph_pos = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
395 cont->proc_domain = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
406 return cont; in audioreach_parse_cont_tokens()
410 struct audioreach_container *cont, in audioreach_parse_common_tokens() argument
440 mod = audioreach_tplg_alloc_module(apm, cont, w, in audioreach_parse_common_tokens()
574 struct audioreach_container *cont; in audioreach_widget_load_module_common() local
583 cont = audioreach_parse_cont_tokens(apm, sg, &tplg_w->priv); in audioreach_widget_load_module_common()
584 if (IS_ERR(cont)) in audioreach_widget_load_module_common()
585 return PTR_ERR(cont); in audioreach_widget_load_module_common()
587 mod = audioreach_parse_common_tokens(apm, cont, &tplg_w->priv, w); in audioreach_widget_load_module_common()
902 struct audioreach_container *cont; in audioreach_widget_unload() local
906 cont = mod->container; in audioreach_widget_unload()
919 cont->num_modules--; in audioreach_widget_unload()
924 if (list_empty(&cont->modules_list)) { /* if no modules in the container then remove it */ in audioreach_widget_unload()
925 struct audioreach_sub_graph *sg = cont->sub_graph; in audioreach_widget_unload()
927 idr_remove(&apm->containers_idr, cont->container_id); in audioreach_widget_unload()
928 list_del(&cont->node); in audioreach_widget_unload()
930 kfree(cont); in audioreach_widget_unload()