topology: Parse physical DAIs in text conf file

Add support for parsing physical DAIs in the text configuration file.
The syntax of physical DAIs is described in document in topology.h

Signed-off-by: Mengdong Lin <mengdong.lin@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Mengdong Lin 2016-11-16 14:42:33 +08:00 committed by Takashi Iwai
parent 50c77cdc7f
commit 0b6bd6c19a
6 changed files with 166 additions and 0 deletions

View file

@ -133,6 +133,14 @@ static int tplg_parse_config(snd_tplg_t *tplg, snd_config_t *cfg)
continue;
}
if (strcmp(id, "SectionDAI") == 0) {
err = tplg_parse_compound(tplg, n,
tplg_parse_dai, NULL);
if (err < 0)
return err;
continue;
}
if (strcmp(id, "SectionHWConfig") == 0) {
err = tplg_parse_compound(tplg, n, tplg_parse_hw_config,
NULL);
@ -450,6 +458,7 @@ snd_tplg_t *snd_tplg_new(void)
INIT_LIST_HEAD(&tplg->tlv_list);
INIT_LIST_HEAD(&tplg->widget_list);
INIT_LIST_HEAD(&tplg->pcm_list);
INIT_LIST_HEAD(&tplg->dai_list);
INIT_LIST_HEAD(&tplg->be_list);
INIT_LIST_HEAD(&tplg->cc_list);
INIT_LIST_HEAD(&tplg->route_list);
@ -476,6 +485,7 @@ void snd_tplg_free(snd_tplg_t *tplg)
tplg_elem_free_list(&tplg->tlv_list);
tplg_elem_free_list(&tplg->widget_list);
tplg_elem_free_list(&tplg->pcm_list);
tplg_elem_free_list(&tplg->dai_list);
tplg_elem_free_list(&tplg->be_list);
tplg_elem_free_list(&tplg->cc_list);
tplg_elem_free_list(&tplg->route_list);