Lines Matching refs:cont

116 	struct audioreach_container *cont;  in audioreach_tplg_alloc_container()  local
123 cont = idr_find(&apm->containers_idr, container_id); in audioreach_tplg_alloc_container()
126 if (cont) { in audioreach_tplg_alloc_container()
128 return cont; in audioreach_tplg_alloc_container()
132 cont = kzalloc(sizeof(*cont), GFP_KERNEL); in audioreach_tplg_alloc_container()
133 if (!cont) in audioreach_tplg_alloc_container()
136 INIT_LIST_HEAD(&cont->modules_list); in audioreach_tplg_alloc_container()
139 ret = idr_alloc(&apm->containers_idr, cont, container_id, container_id + 1, GFP_KERNEL); in audioreach_tplg_alloc_container()
144 kfree(cont); in audioreach_tplg_alloc_container()
148 cont->container_id = ret; in audioreach_tplg_alloc_container()
149 cont->sub_graph = sg; in audioreach_tplg_alloc_container()
151 list_add_tail(&cont->node, &sg->container_list); in audioreach_tplg_alloc_container()
154 return cont; in audioreach_tplg_alloc_container()
158 struct audioreach_container *cont, in audioreach_tplg_alloc_module() argument
196 list_add_tail(&mod->node, &cont->modules_list); in audioreach_tplg_alloc_module()
197 mod->container = cont; in audioreach_tplg_alloc_module()
199 cont->num_modules++; in audioreach_tplg_alloc_module()
366 struct audioreach_container *cont; in audioreach_parse_cont_tokens() local
377 cont = audioreach_tplg_alloc_container(apm, sg, container_id, &found); in audioreach_parse_cont_tokens()
378 if (IS_ERR(cont) || found)/* Error or Already parsed container data */ in audioreach_parse_cont_tokens()
379 return cont; in audioreach_parse_cont_tokens()
382 cont->capability_id = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
385 cont->stack_size = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
388 cont->graph_pos = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
391 cont->proc_domain = le32_to_cpu(cont_elem->value); in audioreach_parse_cont_tokens()
402 return cont; in audioreach_parse_cont_tokens()
406 struct audioreach_container *cont, in audioreach_parse_common_tokens() argument
430 mod = audioreach_tplg_alloc_module(apm, cont, w, in audioreach_parse_common_tokens()
493 struct audioreach_container *cont; in audioreach_widget_load_module_common() local
502 cont = audioreach_parse_cont_tokens(apm, sg, &tplg_w->priv); in audioreach_widget_load_module_common()
503 if (IS_ERR(cont)) in audioreach_widget_load_module_common()
504 return PTR_ERR(cont); in audioreach_widget_load_module_common()
506 mod = audioreach_parse_common_tokens(apm, cont, &tplg_w->priv, w); in audioreach_widget_load_module_common()
814 struct audioreach_container *cont; in audioreach_widget_unload() local
818 cont = mod->container; in audioreach_widget_unload()
828 cont->num_modules--; in audioreach_widget_unload()
833 if (list_empty(&cont->modules_list)) { /* if no modules in the container then remove it */ in audioreach_widget_unload()
834 struct audioreach_sub_graph *sg = cont->sub_graph; in audioreach_widget_unload()
836 idr_remove(&apm->containers_idr, cont->container_id); in audioreach_widget_unload()
837 list_del(&cont->node); in audioreach_widget_unload()
839 kfree(cont); in audioreach_widget_unload()