summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/topology/pcm.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/topology/pcm.c b/src/topology/pcm.c
index 76085d05..b1e5dc59 100644
--- a/src/topology/pcm.c
+++ b/src/topology/pcm.c
@@ -929,6 +929,15 @@ int tplg_parse_pcm(snd_tplg_t *tplg, snd_config_t *cfg,
continue;
}
+ if (strcmp(id, "ignore_suspend") == 0) {
+ err = parse_flag(n,
+ SND_SOC_TPLG_LNK_FLGBIT_VOICE_WAKEUP,
+ &pcm->flag_mask, &pcm->flags);
+ if (err < 0)
+ return err;
+ continue;
+ }
+
/* private data */
if (strcmp(id, "data") == 0) {
err = tplg_parse_refs(n, elem, SND_TPLG_TYPE_DATA);
@@ -1066,6 +1075,15 @@ int tplg_parse_dai(snd_tplg_t *tplg, snd_config_t *cfg,
continue;
}
+ if (strcmp(id, "ignore_suspend") == 0) {
+ err = parse_flag(n,
+ SND_SOC_TPLG_LNK_FLGBIT_VOICE_WAKEUP,
+ &dai->flag_mask, &dai->flags);
+ if (err < 0)
+ return err;
+ continue;
+ }
+
/* private data */
if (strcmp(id, "data") == 0) {
err = tplg_parse_refs(n, elem, SND_TPLG_TYPE_DATA);
@@ -1220,6 +1238,15 @@ int tplg_parse_link(snd_tplg_t *tplg, snd_config_t *cfg,
continue;
}
+ if (strcmp(id, "ignore_suspend") == 0) {
+ err = parse_flag(n,
+ SND_SOC_TPLG_LNK_FLGBIT_VOICE_WAKEUP,
+ &link->flag_mask, &link->flags);
+ if (err < 0)
+ return err;
+ continue;
+ }
+
/* private data */
if (strcmp(id, "data") == 0) {
err = tplg_parse_refs(n, elem, SND_TPLG_TYPE_DATA);