Lines Matching refs:comp

126 	int (*parse)(struct snd_soc_component *comp, void *elem, void *object, u32 offset);
130 avs_parse_uuid_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_uuid_token() argument
141 avs_parse_bool_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_bool_token() argument
152 avs_parse_byte_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_byte_token() argument
163 avs_parse_short_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_short_token() argument
174 avs_parse_word_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_word_token() argument
185 avs_parse_string_token(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in avs_parse_string_token() argument
195 static int avs_parse_uuid_tokens(struct snd_soc_component *comp, void *object, in avs_parse_uuid_tokens() argument
212 ret = parsers[j].parse(comp, tuple, object, parsers[j].offset); in avs_parse_uuid_tokens()
221 static int avs_parse_string_tokens(struct snd_soc_component *comp, void *object, in avs_parse_string_tokens() argument
238 ret = parsers[j].parse(comp, tuple, object, parsers[j].offset); in avs_parse_string_tokens()
247 static int avs_parse_word_tokens(struct snd_soc_component *comp, void *object, in avs_parse_word_tokens() argument
269 ret = parsers[j].parse(comp, tuple, object, parsers[j].offset); in avs_parse_word_tokens()
278 static int avs_parse_tokens(struct snd_soc_component *comp, void *object, in avs_parse_tokens() argument
288 dev_err(comp->dev, "invalid array size 0x%x\n", array_size); in avs_parse_tokens()
295 dev_err(comp->dev, "invalid array size 0x%x\n", array_size); in avs_parse_tokens()
301 ret = avs_parse_uuid_tokens(comp, object, parsers, count, tuples); in avs_parse_tokens()
304 ret = avs_parse_string_tokens(comp, object, parsers, count, tuples); in avs_parse_tokens()
310 ret = avs_parse_word_tokens(comp, object, parsers, count, tuples); in avs_parse_tokens()
313 dev_err(comp->dev, "unknown token type %d\n", tuples->type); in avs_parse_tokens()
318 dev_err(comp->dev, "parsing %zu tokens of %d type failed: %d\n", in avs_parse_tokens()
331 avs_parse_##name##_ptr(struct snd_soc_component *comp, void *elem, void *object, u32 offset) \
334 struct avs_soc_component *acomp = to_avs_soc_component(comp); \
354 parse_audio_format_bitfield(struct snd_soc_component *comp, void *elem, void *object, u32 offset) in parse_audio_format_bitfield() argument
374 static int parse_link_formatted_string(struct snd_soc_component *comp, void *elem, in parse_link_formatted_string() argument
378 struct snd_soc_acpi_mach *mach = dev_get_platdata(comp->card->dev); in parse_link_formatted_string()
386 return avs_parse_string_token(comp, elem, object, offset); in parse_link_formatted_string()
395 parse_dictionary_header(struct snd_soc_component *comp, in parse_dictionary_header() argument
405 dev_err(comp->dev, "invalid dictionary header, expected: %d\n", in parse_dictionary_header()
411 *dict = devm_kcalloc(comp->card->dev, *num_entries, entry_size, GFP_KERNEL); in parse_dictionary_header()
419 parse_dictionary_entries(struct snd_soc_component *comp, in parse_dictionary_entries() argument
437 ret = avs_parse_tokens(comp, pos, parsers, num_parsers, tuples, esize); in parse_dictionary_entries()
439 dev_err(comp->dev, "parse entry: %d of type: %d failed: %d\n", in parse_dictionary_entries()
452 static int parse_dictionary(struct snd_soc_component *comp, in parse_dictionary() argument
460 ret = parse_dictionary_header(comp, tuples, dict, num_entries, in parse_dictionary()
469 return parse_dictionary_entries(comp, tuples, block_size, *dict, in parse_dictionary()
483 static int avs_tplg_parse_libraries(struct snd_soc_component *comp, in avs_tplg_parse_libraries() argument
486 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_libraries()
489 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->libs, in avs_tplg_parse_libraries()
547 static int avs_tplg_parse_audio_formats(struct snd_soc_component *comp, in avs_tplg_parse_audio_formats() argument
551 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_audio_formats()
554 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->fmts, in avs_tplg_parse_audio_formats()
588 static int avs_tplg_parse_modcfgs_base(struct snd_soc_component *comp, in avs_tplg_parse_modcfgs_base() argument
592 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_modcfgs_base()
595 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->modcfgs_base, in avs_tplg_parse_modcfgs_base()
813 assign_copier_gtw_instance(struct snd_soc_component *comp, struct avs_tplg_modcfg_ext *cfg) in assign_copier_gtw_instance() argument
829 mach = dev_get_platdata(comp->card->dev); in assign_copier_gtw_instance()
836 static int avs_tplg_parse_modcfg_ext(struct snd_soc_component *comp, in avs_tplg_parse_modcfg_ext() argument
850 ret = avs_parse_tokens(comp, cfg, modcfg_ext_parsers, in avs_tplg_parse_modcfg_ext()
856 assign_copier_gtw_instance(comp, cfg); in avs_tplg_parse_modcfg_ext()
868 pins = devm_kcalloc(comp->card->dev, num_pins, sizeof(*pins), GFP_KERNEL); in avs_tplg_parse_modcfg_ext()
873 ret = parse_dictionary_entries(comp, tuples, block_size, in avs_tplg_parse_modcfg_ext()
886 static int avs_tplg_parse_modcfgs_ext(struct snd_soc_component *comp, in avs_tplg_parse_modcfgs_ext() argument
890 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_modcfgs_ext()
894 ret = parse_dictionary_header(comp, tuples, (void **)&tplg->modcfgs_ext, in avs_tplg_parse_modcfgs_ext()
914 ret = avs_tplg_parse_modcfg_ext(comp, cfg, tuples, esize); in avs_tplg_parse_modcfgs_ext()
958 static int avs_tplg_parse_pplcfgs(struct snd_soc_component *comp, in avs_tplg_parse_pplcfgs() argument
962 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_pplcfgs()
965 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->pplcfgs, in avs_tplg_parse_pplcfgs()
1023 static int avs_tplg_parse_bindings(struct snd_soc_component *comp, in avs_tplg_parse_bindings() argument
1027 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_tplg_parse_bindings()
1030 return parse_dictionary(comp, tuples, block_size, (void **)&tplg->bindings, in avs_tplg_parse_bindings()
1083 avs_tplg_module_create(struct snd_soc_component *comp, struct avs_tplg_pipeline *owner, in avs_tplg_module_create() argument
1089 module = devm_kzalloc(comp->card->dev, sizeof(*module), GFP_KERNEL); in avs_tplg_module_create()
1093 ret = avs_parse_tokens(comp, module, module_parsers, in avs_tplg_module_create()
1135 avs_tplg_pipeline_create(struct snd_soc_component *comp, struct avs_tplg_path *owner, in avs_tplg_pipeline_create() argument
1142 pipeline = devm_kzalloc(comp->card->dev, sizeof(*pipeline), GFP_KERNEL); in avs_tplg_pipeline_create()
1158 ret = avs_parse_tokens(comp, pipeline, pipeline_parsers, in avs_tplg_pipeline_create()
1179 pipeline->bindings = devm_kcalloc(comp->card->dev, pipeline->num_bindings, in avs_tplg_pipeline_create()
1197 module = avs_tplg_module_create(comp, pipeline, tuples, esize); in avs_tplg_pipeline_create()
1199 dev_err(comp->dev, "parse module failed: %ld\n", in avs_tplg_pipeline_create()
1210 ret = parse_dictionary_entries(comp, tuples, block_size, pipeline->bindings, in avs_tplg_pipeline_create()
1242 avs_tplg_path_create(struct snd_soc_component *comp, struct avs_tplg_path_template *owner, in avs_tplg_path_create() argument
1251 path = devm_kzalloc(comp->card->dev, sizeof(*path), GFP_KERNEL); in avs_tplg_path_create()
1270 ret = avs_parse_tokens(comp, path, parsers, num_parsers, tuples, offset); in avs_tplg_path_create()
1284 pipeline = avs_tplg_pipeline_create(comp, path, tuples, esize); in avs_tplg_path_create()
1286 dev_err(comp->dev, "parse pipeline failed: %ld\n", in avs_tplg_path_create()
1308 static int parse_path_template(struct snd_soc_component *comp, in parse_path_template() argument
1325 ret = avs_parse_tokens(comp, template, tmpl_tokens, num_tmpl_tokens, tuples, offset); in parse_path_template()
1339 path = avs_tplg_path_create(comp, template, tuples, esize, path_tokens, in parse_path_template()
1342 dev_err(comp->dev, "parse path failed: %ld\n", PTR_ERR(path)); in parse_path_template()
1355 avs_tplg_path_template_create(struct snd_soc_component *comp, struct avs_tplg *owner, in avs_tplg_path_template_create() argument
1361 template = devm_kzalloc(comp->card->dev, sizeof(*template), GFP_KERNEL); in avs_tplg_path_template_create()
1369 ret = parse_path_template(comp, tuples, block_size, template, path_tmpl_parsers, in avs_tplg_path_template_create()
1378 static int avs_route_load(struct snd_soc_component *comp, int index, in avs_route_load() argument
1381 struct snd_soc_acpi_mach *mach = dev_get_platdata(comp->card->dev); in avs_route_load()
1403 static int avs_widget_load(struct snd_soc_component *comp, int index, in avs_widget_load() argument
1409 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_widget_load()
1418 dev_info_once(comp->dev, "Device does not support S0IX, check BIOS settings\n"); in avs_widget_load()
1423 mach = dev_get_platdata(comp->card->dev); in avs_widget_load()
1434 template = avs_tplg_path_template_create(comp, tplg, dw->priv.array, in avs_widget_load()
1437 dev_err(comp->dev, "widget %s load failed: %ld\n", dw->name, in avs_widget_load()
1447 static int avs_widget_ready(struct snd_soc_component *comp, int index, in avs_widget_ready() argument
1457 static int avs_dai_load(struct snd_soc_component *comp, int index, in avs_dai_load() argument
1466 static int avs_link_load(struct snd_soc_component *comp, int index, struct snd_soc_dai_link *link, in avs_link_load() argument
1470 dev_info_once(comp->dev, "Device does not support S0IX, check BIOS settings\n"); in avs_link_load()
1501 static int avs_manifest(struct snd_soc_component *comp, int index, in avs_manifest() argument
1505 struct avs_soc_component *acomp = to_avs_soc_component(comp); in avs_manifest()
1516 dev_err(comp->dev, "incorrect manifest format: %d\n", ret); in avs_manifest()
1521 ret = avs_parse_tokens(comp, acomp->tplg, manifest_parsers, in avs_manifest()
1532 dev_err(comp->dev, "audio formats lookup failed: %d\n", ret); in avs_manifest()
1537 ret = avs_tplg_parse_libraries(comp, tuples, offset); in avs_manifest()
1547 dev_err(comp->dev, "modcfgs_base lookup failed: %d\n", ret); in avs_manifest()
1552 ret = avs_tplg_parse_audio_formats(comp, tuples, offset); in avs_manifest()
1562 dev_err(comp->dev, "modcfgs_ext lookup failed: %d\n", ret); in avs_manifest()
1567 ret = avs_tplg_parse_modcfgs_base(comp, tuples, offset); in avs_manifest()
1577 dev_err(comp->dev, "pplcfgs lookup failed: %d\n", ret); in avs_manifest()
1582 ret = avs_tplg_parse_modcfgs_ext(comp, tuples, offset); in avs_manifest()
1592 dev_err(comp->dev, "bindings lookup failed: %d\n", ret); in avs_manifest()
1597 ret = avs_tplg_parse_pplcfgs(comp, tuples, offset); in avs_manifest()
1605 return avs_tplg_parse_bindings(comp, tuples, remaining); in avs_manifest()
1628 avs_control_load(struct snd_soc_component *comp, int index, struct snd_kcontrol_new *ctmpl, in avs_control_load() argument
1648 ctl_data = devm_kzalloc(comp->card->dev, sizeof(*ctl_data), GFP_KERNEL); in avs_control_load()
1652 ret = parse_dictionary_entries(comp, tuples, block_size, ctl_data, 1, sizeof(*ctl_data), in avs_control_load()
1675 struct avs_tplg *avs_tplg_new(struct snd_soc_component *comp) in avs_tplg_new() argument
1679 tplg = devm_kzalloc(comp->card->dev, sizeof(*tplg), GFP_KERNEL); in avs_tplg_new()
1683 tplg->comp = comp; in avs_tplg_new()
1689 int avs_load_topology(struct snd_soc_component *comp, const char *filename) in avs_load_topology() argument
1694 ret = request_firmware(&fw, filename, comp->dev); in avs_load_topology()
1696 dev_err(comp->dev, "request topology \"%s\" failed: %d\n", filename, ret); in avs_load_topology()
1700 ret = snd_soc_tplg_component_load(comp, &avs_tplg_ops, fw); in avs_load_topology()
1702 dev_err(comp->dev, "load topology \"%s\" failed: %d\n", filename, ret); in avs_load_topology()
1708 int avs_remove_topology(struct snd_soc_component *comp) in avs_remove_topology() argument
1710 snd_soc_tplg_component_remove(comp); in avs_remove_topology()