Lines Matching refs:elem
45 struct tplg_elem *elem;
50 elem = list_entry(pos, struct tplg_elem, list);
51 if (elem->type != SND_TPLG_TYPE_PCM)
54 pcm = elem->pcm;
57 return elem;
96 static int build_pcm(snd_tplg_t *tplg, struct tplg_elem *elem)
102 err = tplg_build_stream_caps(tplg, elem->id, elem->index,
103 elem->pcm->caps);
108 base = &elem->ref_list;
113 err = tplg_copy_data(tplg, elem, ref);
117 if (!ref->elem) {
119 " PCM '%s'", ref->id, elem->id);
131 struct tplg_elem *elem;
137 elem = list_entry(pos, struct tplg_elem, list);
138 if (elem->type != type) {
139 SNDERR("invalid elem '%s'", elem->id);
143 err = build_pcm(tplg, elem);
155 static int tplg_build_dai(snd_tplg_t *tplg, struct tplg_elem *elem)
162 err = tplg_build_stream_caps(tplg, elem->id, elem->index,
163 elem->dai->caps);
168 base = &elem->ref_list;
174 err = tplg_copy_data(tplg, elem, ref);
190 struct tplg_elem *elem;
196 elem = list_entry(pos, struct tplg_elem, list);
197 if (elem->type != type) {
198 SNDERR("invalid elem '%s'", elem->id);
202 err = tplg_build_dai(tplg, elem);
230 static int build_link(snd_tplg_t *tplg, struct tplg_elem *elem)
232 struct snd_soc_tplg_link_config *link = elem->link;
238 link->num_streams, elem->index);
243 base = &elem->ref_list;
250 ref->elem = tplg_elem_lookup(&tplg->hw_cfg_list,
251 ref->id, SND_TPLG_TYPE_HW_CONFIG, elem->index);
252 if (!ref->elem) {
255 ref->id, elem->id);
260 ref->elem->hw_cfg,
266 err = tplg_copy_data(tplg, elem, ref);
269 link = elem->link; /* realloc */
287 struct tplg_elem *elem;
304 elem = list_entry(pos, struct tplg_elem, list);
305 err = build_link(tplg, elem);
402 struct tplg_elem *elem;
409 elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_STREAM_CAPS);
410 if (!elem)
413 sc = elem->stream_caps;
414 sc->size = elem->size;
415 snd_strlcpy(sc->name, elem->id, SNDRV_CTL_ELEM_ID_NAME_MAXLEN);
417 tplg_dbg(" PCM Capabilities: %s", elem->id);
539 struct tplg_elem *elem,
542 struct snd_soc_tplg_stream_caps *sc = elem->stream_caps;
547 err = tplg_save_printf(dst, NULL, "'%s' {\n", elem->id);
620 struct tplg_elem *elem = private;
632 switch (elem->type) {
634 pcm = elem->pcm;
641 dai = elem->dai;
687 struct tplg_elem *elem,
703 switch (elem->type) {
705 streams[0] = elem->pcm->playback;
706 streams[1] = elem->pcm->capture;
707 caps = elem->pcm->caps;
710 streams[0] = elem->dai->playback;
711 streams[1] = elem->dai->capture;
712 caps = elem->dai->caps;
744 struct tplg_elem *elem = private;
745 struct snd_soc_tplg_pcm *pcm = elem->pcm;
779 struct tplg_elem *elem,
782 struct snd_soc_tplg_pcm *pcm = elem->pcm;
844 struct tplg_elem *elem;
850 elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_PCM);
851 if (!elem)
854 pcm = elem->pcm;
855 pcm->size = elem->size;
856 snd_strlcpy(pcm->pcm_name, elem->id, SNDRV_CTL_ELEM_ID_NAME_MAXLEN);
858 tplg_dbg(" PCM: %s", elem->id);
880 tplg_parse_streams, elem);
899 tplg_parse_fe_dai, elem);
944 err = tplg_parse_refs(n, elem, SND_TPLG_TYPE_DATA);
956 struct tplg_elem *elem,
959 struct snd_soc_tplg_pcm *pcm = elem->pcm;
964 err = tplg_save_printf(dst, NULL, "'%s' {\n", elem->id);
965 if (err >= 0 && elem->index)
967 elem->index);
975 err = tplg_save_fe_dai(tplg, elem, dst, pfx2);
977 err = tplg_save_streams(tplg, elem, dst, pfx2);
981 err = tplg_save_refs(tplg, elem, SND_TPLG_TYPE_DATA,
993 struct tplg_elem *elem;
999 elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_DAI);
1000 if (!elem)
1003 dai = elem->dai;
1004 dai->size = elem->size;
1005 snd_strlcpy(dai->dai_name, elem->id,
1008 tplg_dbg(" DAI: %s", elem->id);
1045 tplg_parse_streams, elem);
1090 err = tplg_parse_refs(n, elem, SND_TPLG_TYPE_DATA);
1102 struct tplg_elem *elem,
1105 struct snd_soc_tplg_dai *dai = elem->dai;
1112 err = tplg_save_printf(dst, NULL, "'%s' {\n", elem->id);
1113 if (err >= 0 && elem->index)
1115 elem->index);
1126 err = tplg_save_streams(tplg, elem, dst, pfx2);
1130 err = tplg_save_refs(tplg, elem, SND_TPLG_TYPE_DATA,
1140 struct tplg_elem *elem)
1142 struct snd_soc_tplg_link_config *link = elem->link;
1145 err = tplg_parse_refs(cfg, elem, SND_TPLG_TYPE_HW_CONFIG);
1157 struct tplg_elem *elem;
1163 elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_BE);
1164 if (!elem)
1167 link = elem->link;
1168 link->size = elem->size;
1169 snd_strlcpy(link->name, elem->id, SNDRV_CTL_ELEM_ID_NAME_MAXLEN);
1171 tplg_dbg(" Link: %s", elem->id);
1202 err = parse_hw_config_refs(tplg, n, elem);
1253 err = tplg_parse_refs(n, elem, SND_TPLG_TYPE_DATA);
1265 struct tplg_elem *elem,
1268 struct snd_soc_tplg_link_config *link = elem->link;
1275 err = tplg_save_printf(dst, NULL, "'%s' {\n", elem->id);
1276 if (err >= 0 && elem->index)
1278 elem->index);
1291 err = tplg_save_refs(tplg, elem, SND_TPLG_TYPE_HW_CONFIG,
1294 err = tplg_save_refs(tplg, elem, SND_TPLG_TYPE_DATA,
1306 struct tplg_elem *elem;
1311 elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_CC);
1312 if (!elem)
1315 link = elem->link;
1316 link->size = elem->size;
1318 tplg_dbg(" CC: %s", elem->id);
1345 struct tplg_elem *elem,
1348 struct snd_soc_tplg_link_config *link = elem->link;
1355 err = tplg_save_printf(dst, NULL, "'%s' {\n", elem->id);
1356 if (err >= 0 && elem->index)
1358 elem->index);
1435 struct tplg_elem *elem;
1442 elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_HW_CONFIG);
1443 if (!elem)
1446 hw_cfg = elem->hw_cfg;
1447 hw_cfg->size = elem->size;
1449 tplg_dbg(" Link HW config: %s", elem->id);
1670 struct tplg_elem *elem,
1673 struct snd_soc_tplg_hw_config *hc = elem->hw_cfg;
1676 err = tplg_save_printf(dst, NULL, "'%s' {\n", elem->id);
1750 struct tplg_elem *elem;
1752 elem = tplg_elem_new_common(tplg, NULL, caps_tpl->name,
1754 if (!elem)
1757 caps = elem->stream_caps;
1783 struct tplg_elem *elem;
1791 elem = tplg_elem_new_common(tplg, NULL, pcm_tpl->pcm_name,
1793 if (!elem)
1796 pcm = elem->pcm;
1797 pcm->size = elem->size;
1829 ret = tplg_add_data(tplg, elem, priv,
1885 struct tplg_elem *elem;
1893 elem = tplg_elem_new_common(tplg, NULL, link_tpl->name, t->type);
1894 if (!elem)
1899 link = elem->link;
1900 link->size = elem->size;
1931 ret = tplg_add_data(tplg, elem, priv,
1945 struct tplg_elem *elem;
1950 elem = tplg_elem_new_common(tplg, NULL, dai_tpl->dai_name,
1952 if (!elem)
1955 dai = elem->dai;
1956 dai->size = elem->size;
1983 ret = tplg_add_data(tplg, elem, priv,