• Home
  • Raw
  • Download

Lines Matching refs:tplg

130 int tplg_parse_compound(snd_tplg_t *tplg, snd_config_t *cfg,  in tplg_parse_compound()  argument
157 err = fcn(tplg, n, private); in tplg_parse_compound()
165 static int tplg_parse_config(snd_tplg_t *tplg, snd_config_t *cfg) in tplg_parse_config() argument
167 int (*parser)(snd_tplg_t *tplg, snd_config_t *cfg, void *priv); in tplg_parse_config()
205 err = tplg_parse_compound(tplg, n, parser, NULL); in tplg_parse_config()
212 static int tplg_load_config(snd_tplg_t *tplg, snd_input_t *in) in tplg_load_config() argument
228 ret = tplg_parse_config(tplg, top); in tplg_load_config()
238 static int tplg_build_integ(snd_tplg_t *tplg) in tplg_build_integ() argument
242 err = tplg_build_data(tplg); in tplg_build_integ()
246 err = tplg_build_manifest_data(tplg); in tplg_build_integ()
250 err = tplg_build_controls(tplg); in tplg_build_integ()
254 err = tplg_build_widgets(tplg); in tplg_build_integ()
258 err = tplg_build_pcms(tplg, SND_TPLG_TYPE_PCM); in tplg_build_integ()
262 err = tplg_build_dais(tplg, SND_TPLG_TYPE_DAI); in tplg_build_integ()
266 err = tplg_build_links(tplg, SND_TPLG_TYPE_BE); in tplg_build_integ()
270 err = tplg_build_links(tplg, SND_TPLG_TYPE_CC); in tplg_build_integ()
274 err = tplg_build_routes(tplg); in tplg_build_integ()
281 int snd_tplg_load(snd_tplg_t *tplg, const char *buf, size_t size) in snd_tplg_load() argument
292 err = tplg_load_config(tplg, in); in snd_tplg_load()
297 static int tplg_build(snd_tplg_t *tplg) in tplg_build() argument
301 err = tplg_build_integ(tplg); in tplg_build()
307 err = tplg_write_data(tplg); in tplg_build()
315 int snd_tplg_build_file(snd_tplg_t *tplg, in snd_tplg_build_file() argument
336 err = tplg_load_config(tplg, in); in snd_tplg_build_file()
341 return snd_tplg_build(tplg, outfile); in snd_tplg_build_file()
344 int snd_tplg_add_object(snd_tplg_t *tplg, snd_tplg_obj_template_t *t) in snd_tplg_add_object() argument
348 return tplg_add_mixer_object(tplg, t); in snd_tplg_add_object()
350 return tplg_add_enum_object(tplg, t); in snd_tplg_add_object()
352 return tplg_add_bytes_object(tplg, t); in snd_tplg_add_object()
354 return tplg_add_widget_object(tplg, t); in snd_tplg_add_object()
356 return tplg_add_graph_object(tplg, t); in snd_tplg_add_object()
358 return tplg_add_pcm_object(tplg, t); in snd_tplg_add_object()
360 return tplg_add_dai_object(tplg, t); in snd_tplg_add_object()
364 return tplg_add_link_object(tplg, t); in snd_tplg_add_object()
371 int snd_tplg_build(snd_tplg_t *tplg, const char *outfile) in snd_tplg_build() argument
376 err = tplg_build(tplg); in snd_tplg_build()
385 r = write(fd, tplg->bin, tplg->bin_size); in snd_tplg_build()
392 if ((size_t)r != tplg->bin_size) { in snd_tplg_build()
393 SNDERR("partial write (%zd != %zd)", r, tplg->bin_size); in snd_tplg_build()
399 int snd_tplg_build_bin(snd_tplg_t *tplg, in snd_tplg_build_bin() argument
404 err = tplg_build(tplg); in snd_tplg_build_bin()
408 *bin = tplg->bin; in snd_tplg_build_bin()
409 *size = tplg->bin_size; in snd_tplg_build_bin()
410 tplg->bin = NULL; in snd_tplg_build_bin()
411 tplg->bin_size = tplg->bin_pos = 0; in snd_tplg_build_bin()
415 int snd_tplg_set_manifest_data(snd_tplg_t *tplg, const void *data, int len) in snd_tplg_set_manifest_data() argument
419 elem = tplg_elem_type_lookup(tplg, SND_TPLG_TYPE_MANIFEST); in snd_tplg_set_manifest_data()
421 elem = tplg_elem_new_common(tplg, NULL, "manifest", in snd_tplg_set_manifest_data()
425 tplg->manifest.size = elem->size; in snd_tplg_set_manifest_data()
431 return tplg_add_data_bytes(tplg, elem, NULL, data, len); in snd_tplg_set_manifest_data()
434 int snd_tplg_set_version(snd_tplg_t *tplg, unsigned int version) in snd_tplg_set_version() argument
436 tplg->version = version; in snd_tplg_set_version()
441 void snd_tplg_verbose(snd_tplg_t *tplg, int verbose) in snd_tplg_verbose() argument
443 tplg->verbose = verbose; in snd_tplg_verbose()
456 snd_tplg_t *tplg; in snd_tplg_create() local
463 tplg = calloc(1, sizeof(snd_tplg_t)); in snd_tplg_create()
464 if (!tplg) in snd_tplg_create()
467 tplg->verbose = !!(flags & SND_TPLG_CREATE_VERBOSE); in snd_tplg_create()
468 tplg->dapm_sort = (flags & SND_TPLG_CREATE_DAPM_NOSORT) == 0; in snd_tplg_create()
470 tplg->manifest.size = sizeof(struct snd_soc_tplg_manifest); in snd_tplg_create()
472 INIT_LIST_HEAD(&tplg->tlv_list); in snd_tplg_create()
473 INIT_LIST_HEAD(&tplg->widget_list); in snd_tplg_create()
474 INIT_LIST_HEAD(&tplg->pcm_list); in snd_tplg_create()
475 INIT_LIST_HEAD(&tplg->dai_list); in snd_tplg_create()
476 INIT_LIST_HEAD(&tplg->be_list); in snd_tplg_create()
477 INIT_LIST_HEAD(&tplg->cc_list); in snd_tplg_create()
478 INIT_LIST_HEAD(&tplg->route_list); in snd_tplg_create()
479 INIT_LIST_HEAD(&tplg->pdata_list); in snd_tplg_create()
480 INIT_LIST_HEAD(&tplg->manifest_list); in snd_tplg_create()
481 INIT_LIST_HEAD(&tplg->text_list); in snd_tplg_create()
482 INIT_LIST_HEAD(&tplg->pcm_config_list); in snd_tplg_create()
483 INIT_LIST_HEAD(&tplg->pcm_caps_list); in snd_tplg_create()
484 INIT_LIST_HEAD(&tplg->mixer_list); in snd_tplg_create()
485 INIT_LIST_HEAD(&tplg->enum_list); in snd_tplg_create()
486 INIT_LIST_HEAD(&tplg->bytes_ext_list); in snd_tplg_create()
487 INIT_LIST_HEAD(&tplg->token_list); in snd_tplg_create()
488 INIT_LIST_HEAD(&tplg->tuple_list); in snd_tplg_create()
489 INIT_LIST_HEAD(&tplg->hw_cfg_list); in snd_tplg_create()
491 return tplg; in snd_tplg_create()
499 void snd_tplg_free(snd_tplg_t *tplg) in snd_tplg_free() argument
501 free(tplg->bin); in snd_tplg_free()
502 free(tplg->manifest_pdata); in snd_tplg_free()
504 tplg_elem_free_list(&tplg->tlv_list); in snd_tplg_free()
505 tplg_elem_free_list(&tplg->widget_list); in snd_tplg_free()
506 tplg_elem_free_list(&tplg->pcm_list); in snd_tplg_free()
507 tplg_elem_free_list(&tplg->dai_list); in snd_tplg_free()
508 tplg_elem_free_list(&tplg->be_list); in snd_tplg_free()
509 tplg_elem_free_list(&tplg->cc_list); in snd_tplg_free()
510 tplg_elem_free_list(&tplg->route_list); in snd_tplg_free()
511 tplg_elem_free_list(&tplg->pdata_list); in snd_tplg_free()
512 tplg_elem_free_list(&tplg->manifest_list); in snd_tplg_free()
513 tplg_elem_free_list(&tplg->text_list); in snd_tplg_free()
514 tplg_elem_free_list(&tplg->pcm_config_list); in snd_tplg_free()
515 tplg_elem_free_list(&tplg->pcm_caps_list); in snd_tplg_free()
516 tplg_elem_free_list(&tplg->mixer_list); in snd_tplg_free()
517 tplg_elem_free_list(&tplg->enum_list); in snd_tplg_free()
518 tplg_elem_free_list(&tplg->bytes_ext_list); in snd_tplg_free()
519 tplg_elem_free_list(&tplg->token_list); in snd_tplg_free()
520 tplg_elem_free_list(&tplg->tuple_list); in snd_tplg_free()
521 tplg_elem_free_list(&tplg->hw_cfg_list); in snd_tplg_free()
523 free(tplg); in snd_tplg_free()