Lines Matching refs:comp

127 	int (*parse)(struct snd_soc_component *comp, void *elem, void *object, u32 offset);
131 avs_parse_uuid_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_uuid_token() argument
142 avs_parse_bool_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_bool_token() argument
153 avs_parse_byte_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_byte_token() argument
164 avs_parse_short_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_short_token() argument
175 avs_parse_word_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_word_token() argument
186 avs_parse_string_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_string_token() argument
196 static int avs_parse_uuid_tokens(struct snd_soc_component *comp, void *object, in avs_parse_uuid_tokens() argument
213 ret = parsers[j].parse(comp, tuple, object, parsers[j].offset); in avs_parse_uuid_tokens()
222 static int avs_parse_string_tokens(struct snd_soc_component *comp, void *object, in avs_parse_string_tokens() argument
239 ret = parsers[j].parse(comp, tuple, object, parsers[j].offset); in avs_parse_string_tokens()
248 static int avs_parse_word_tokens(struct snd_soc_component *comp, void *object, in avs_parse_word_tokens() argument
270 ret = parsers[j].parse(comp, tuple, object, parsers[j].offset); in avs_parse_word_tokens()
279 static int avs_parse_tokens(struct snd_soc_component *comp, void *object, in avs_parse_tokens() argument
289 dev_err(comp->dev, "invalid array size 0x%x\n", array_size); in avs_parse_tokens()
296 dev_err(comp->dev, "invalid array size 0x%x\n", array_size); in avs_parse_tokens()
302 ret = avs_parse_uuid_tokens(comp, object, parsers, count, tuples); in avs_parse_tokens()
305 ret = avs_parse_string_tokens(comp, object, parsers, count, tuples); in avs_parse_tokens()
311 ret = avs_parse_word_tokens(comp, object, parsers, count, tuples); in avs_parse_tokens()
314 dev_err(comp->dev, "unknown token type %d\n", tuples->type); in avs_parse_tokens()
319 dev_err(comp->dev, "parsing %zu tokens of %d type failed: %d\n", in avs_parse_tokens()
332 avs_parse_##name##_ptr(struct snd_soc_component *comp, void *elem, void *object, u32 offset) \
335 struct avs_soc_component *acomp = to_avs_soc_component(comp); \
355 parse_audio_format_bitfield(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in parse_audio_format_bitfield() argument
397 static int parse_link_formatted_string(struct snd_soc_component *comp, void *elem, in parse_link_formatted_string() argument
401 struct snd_soc_acpi_mach *mach = dev_get_platdata(comp->card->dev); in parse_link_formatted_string()
410 return avs_parse_string_token(comp, elem, object, offset); in parse_link_formatted_string()
414 return avs_parse_string_token(comp, elem, object, offset); in parse_link_formatted_string()
424 parse_dictionary_header(struct snd_soc_component *comp, in parse_dictionary_header() argument
434 dev_err(comp->dev, "invalid dictionary header, expected: %d\n", in parse_dictionary_header()
440 *dict = devm_kcalloc(comp->card->dev, *num_entries, entry_size, GFP_KERNEL); in parse_dictionary_header()
448 parse_dictionary_entries(struct snd_soc_component *comp, in parse_dictionary_entries() argument
466 ret = avs_parse_tokens(comp, pos, parsers, num_parsers, tuples, esize); in parse_dictionary_entries()
468 dev_err(comp->dev, "parse entry: %d of type: %d failed: %d\n", in parse_dictionary_entries()
481 static int parse_dictionary(struct snd_soc_component *comp, in parse_dictionary() argument
489 ret = parse_dictionary_header(comp, tuples, dict, num_entries, in parse_dictionary()
498 return parse_dictionary_entries(comp, tuples, block_size, *dict, in parse_dictionary()
512 static int avs_tplg_parse_libraries(struct snd_soc_component *comp, in avs_tplg_parse_libraries() argument
515 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_libraries()
518 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->libs, in avs_tplg_parse_libraries()
576 static int avs_tplg_parse_audio_formats(struct snd_soc_component *comp, in avs_tplg_parse_audio_formats() argument
580 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_audio_formats()
583 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->fmts, in avs_tplg_parse_audio_formats()
617 static int avs_tplg_parse_modcfgs_base(struct snd_soc_component *comp, in avs_tplg_parse_modcfgs_base() argument
621 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_modcfgs_base()
624 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->modcfgs_base, in avs_tplg_parse_modcfgs_base()
842 assign_copier_gtw_instance(struct snd_soc_component *comp, struct avs_tplg_modcfg_ext *cfg) in assign_copier_gtw_instance() argument
863 mach = dev_get_platdata(comp->card->dev); in assign_copier_gtw_instance()
877 static int avs_tplg_parse_modcfg_ext(struct snd_soc_component *comp, in avs_tplg_parse_modcfg_ext() argument
891 ret = avs_parse_tokens(comp, cfg, modcfg_ext_parsers, in avs_tplg_parse_modcfg_ext()
897 assign_copier_gtw_instance(comp, cfg); in avs_tplg_parse_modcfg_ext()
909 pins = devm_kcalloc(comp->card->dev, num_pins, sizeof(*pins), GFP_KERNEL); in avs_tplg_parse_modcfg_ext()
914 ret = parse_dictionary_entries(comp, tuples, block_size, in avs_tplg_parse_modcfg_ext()
927 static int avs_tplg_parse_modcfgs_ext(struct snd_soc_component *comp, in avs_tplg_parse_modcfgs_ext() argument
931 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_modcfgs_ext()
935 ret = parse_dictionary_header(comp, tuples, (void **)&tplg->modcfgs_ext, in avs_tplg_parse_modcfgs_ext()
955 ret = avs_tplg_parse_modcfg_ext(comp, cfg, tuples, esize); in avs_tplg_parse_modcfgs_ext()
999 static int avs_tplg_parse_pplcfgs(struct snd_soc_component *comp, in avs_tplg_parse_pplcfgs() argument
1003 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_pplcfgs()
1006 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->pplcfgs, in avs_tplg_parse_pplcfgs()
1064 static int avs_tplg_parse_bindings(struct snd_soc_component *comp, in avs_tplg_parse_bindings() argument
1068 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_bindings()
1071 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->bindings, in avs_tplg_parse_bindings()
1139 avs_tplg_module_create(struct snd_soc_component *comp, struct avs_tplg_pipeline *owner, in avs_tplg_module_create() argument
1152 module = devm_kzalloc(comp->card->dev, sizeof(*module), GFP_KERNEL); in avs_tplg_module_create()
1156 ret = avs_parse_tokens(comp, module, module_parsers, in avs_tplg_module_create()
1170 config_ids = devm_kcalloc(comp->card->dev, num_config_ids, sizeof(*config_ids), in avs_tplg_module_create()
1176 ret = parse_dictionary_entries(comp, tuples, block_size, in avs_tplg_module_create()
1224 avs_tplg_pipeline_create(struct snd_soc_component *comp, struct avs_tplg_path *owner, in avs_tplg_pipeline_create() argument
1231 pipeline = devm_kzalloc(comp->card->dev, sizeof(*pipeline), GFP_KERNEL); in avs_tplg_pipeline_create()
1247 ret = avs_parse_tokens(comp, pipeline, pipeline_parsers, in avs_tplg_pipeline_create()
1268 pipeline->bindings = devm_kcalloc(comp->card->dev, pipeline->num_bindings, in avs_tplg_pipeline_create()
1286 module = avs_tplg_module_create(comp, pipeline, tuples, esize); in avs_tplg_pipeline_create()
1288 dev_err(comp->dev, "parse module failed: %ld\n", in avs_tplg_pipeline_create()
1299 ret = parse_dictionary_entries(comp, tuples, block_size, pipeline->bindings, in avs_tplg_pipeline_create()
1331 avs_tplg_path_create(struct snd_soc_component *comp, struct avs_tplg_path_template *owner, in avs_tplg_path_create() argument
1340 path = devm_kzalloc(comp->card->dev, sizeof(*path), GFP_KERNEL); in avs_tplg_path_create()
1359 ret = avs_parse_tokens(comp, path, parsers, num_parsers, tuples, offset); in avs_tplg_path_create()
1373 pipeline = avs_tplg_pipeline_create(comp, path, tuples, esize); in avs_tplg_path_create()
1375 dev_err(comp->dev, "parse pipeline failed: %ld\n", in avs_tplg_path_create()
1397 static int parse_path_template(struct snd_soc_component *comp, in parse_path_template() argument
1414 ret = avs_parse_tokens(comp, template, tmpl_tokens, num_tmpl_tokens, tuples, offset); in parse_path_template()
1428 path = avs_tplg_path_create(comp, template, tuples, esize, path_tokens, in parse_path_template()
1431 dev_err(comp->dev, "parse path failed: %ld\n", PTR_ERR(path)); in parse_path_template()
1444 avs_tplg_path_template_create(struct snd_soc_component *comp, struct avs_tplg *owner, in avs_tplg_path_template_create() argument
1450 template = devm_kzalloc(comp->card->dev, sizeof(*template), GFP_KERNEL); in avs_tplg_path_template_create()
1458 ret = parse_path_template(comp, tuples, block_size, template, path_tmpl_parsers, in avs_tplg_path_template_create()
1488 static int avs_tplg_parse_initial_configs(struct snd_soc_component *comp, in avs_tplg_parse_initial_configs() argument
1492 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_initial_configs()
1497 ret = parse_dictionary_header(comp, tuples, (void **)&tplg->init_configs, in avs_tplg_parse_initial_configs()
1521 ret = parse_dictionary_entries(comp, tuples, esize, config, 1, sizeof(*config), in avs_tplg_parse_initial_configs()
1532 config->data = devm_kmemdup(comp->card->dev, init_config_data, esize, GFP_KERNEL); in avs_tplg_parse_initial_configs()
1543 static int avs_route_load(struct snd_soc_component *comp, int index, in avs_route_load() argument
1546 struct snd_soc_acpi_mach *mach = dev_get_platdata(comp->card->dev); in avs_route_load()
1560 buf = devm_kzalloc(comp->card->dev, len, GFP_KERNEL); in avs_route_load()
1566 buf = devm_kzalloc(comp->card->dev, len, GFP_KERNEL); in avs_route_load()
1573 buf = devm_kzalloc(comp->card->dev, len, GFP_KERNEL); in avs_route_load()
1583 static int avs_widget_load(struct snd_soc_component *comp, int index, in avs_widget_load() argument
1589 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_widget_load()
1599 dev_info_once(comp->dev, "Device does not support S0IX, check BIOS settings\n"); in avs_widget_load()
1604 mach = dev_get_platdata(comp->card->dev); in avs_widget_load()
1627 template = avs_tplg_path_template_create(comp, tplg, dw->priv.array, in avs_widget_load()
1630 dev_err(comp->dev, "widget %s load failed: %ld\n", dw->name, in avs_widget_load()
1640 static int avs_widget_ready(struct snd_soc_component *comp, int index, in avs_widget_ready() argument
1650 static int avs_dai_load(struct snd_soc_component *comp, int index, in avs_dai_load() argument
1667 static int avs_link_load(struct snd_soc_component *comp, int index, struct snd_soc_dai_link *link, in avs_link_load() argument
1671 dev_info_once(comp->dev, "Device does not support S0IX, check BIOS settings\n"); in avs_link_load()
1705 static int avs_manifest(struct snd_soc_component *comp, int index, in avs_manifest() argument
1709 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_manifest()
1721 dev_err(comp->dev, "incorrect manifest format: %d\n", ret); in avs_manifest()
1726 ret = avs_parse_tokens(comp, acomp->tplg, manifest_parsers, in avs_manifest()
1737 dev_err(comp->dev, "audio formats lookup failed: %d\n", ret); in avs_manifest()
1742 ret = avs_tplg_parse_libraries(comp, tuples, offset); in avs_manifest()
1752 dev_err(comp->dev, "modcfgs_base lookup failed: %d\n", ret); in avs_manifest()
1757 ret = avs_tplg_parse_audio_formats(comp, tuples, offset); in avs_manifest()
1767 dev_err(comp->dev, "modcfgs_ext lookup failed: %d\n", ret); in avs_manifest()
1772 ret = avs_tplg_parse_modcfgs_base(comp, tuples, offset); in avs_manifest()
1782 dev_err(comp->dev, "pplcfgs lookup failed: %d\n", ret); in avs_manifest()
1787 ret = avs_tplg_parse_modcfgs_ext(comp, tuples, offset); in avs_manifest()
1797 dev_err(comp->dev, "bindings lookup failed: %d\n", ret); in avs_manifest()
1802 ret = avs_tplg_parse_pplcfgs(comp, tuples, offset); in avs_manifest()
1812 dev_err(comp->dev, "condpath lookup failed: %d\n", ret); in avs_manifest()
1817 ret = avs_tplg_parse_bindings(comp, tuples, offset); in avs_manifest()
1827 dev_dbg(comp->dev, "init config lookup failed: %d\n", ret); in avs_manifest()
1830 dev_err(comp->dev, "init config lookup failed: %d\n", ret); in avs_manifest()
1841 ret = avs_tplg_parse_initial_configs(comp, tuples, remaining); in avs_manifest()
1868 avs_control_load(struct snd_soc_component *comp, int index, struct snd_kcontrol_new *ctmpl, in avs_control_load() argument
1888 ctl_data = devm_kzalloc(comp->card->dev, sizeof(*ctl_data), GFP_KERNEL); in avs_control_load()
1892 ret = parse_dictionary_entries(comp, tuples, block_size, ctl_data, 1, sizeof(*ctl_data), in avs_control_load()
1915 struct avs_tplg *avs_tplg_new(struct snd_soc_component *comp) in avs_tplg_new() argument
1919 tplg = devm_kzalloc(comp->card->dev, sizeof(*tplg), GFP_KERNEL); in avs_tplg_new()
1923 tplg->comp = comp; in avs_tplg_new()
1929 int avs_load_topology(struct snd_soc_component *comp, const char *filename) in avs_load_topology() argument
1934 ret = request_firmware(&fw, filename, comp->dev); in avs_load_topology()
1936 dev_err(comp->dev, "request topology \"%s\" failed: %d\n", filename, ret); in avs_load_topology()
1940 ret = snd_soc_tplg_component_load(comp, &avs_tplg_ops, fw); in avs_load_topology()
1942 dev_err(comp->dev, "load topology \"%s\" failed: %d\n", filename, ret); in avs_load_topology()
1948 int avs_remove_topology(struct snd_soc_component *comp) in avs_remove_topology() argument
1950 snd_soc_tplg_component_remove(comp); in avs_remove_topology()