From: Amadeusz Sławiński Date: Tue, 25 May 2021 15:09:21 +0000 (+0200) Subject: topology: Parse ignore_suspend property for dapm widget X-Git-Tag: v1.2.9~18 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=e11ea20645b46d88c3de6d995512e67143bd7f4e;p=alsa-lib.git topology: Parse ignore_suspend property for dapm widget snd_soc_tplg_dapm_widget has ignore_suspend field, but there is no way to set value for it, because we don't parse topology field for it. Fix this by adding parsing code. Fixes: https://github.com/alsa-project/alsa-lib/pull/230 Signed-off-by: Amadeusz Sławiński Signed-off-by: Jaroslav Kysela --- diff --git a/src/topology/dapm.c b/src/topology/dapm.c index f6a84a60..1c15ce8a 100644 --- a/src/topology/dapm.c +++ b/src/topology/dapm.c @@ -605,6 +605,17 @@ int tplg_parse_dapm_widget(snd_tplg_t *tplg, continue; } + if (strcmp(id, "ignore_suspend") == 0) { + ival = snd_config_get_bool(n); + if (ival < 0) + return -EINVAL; + + widget->ignore_suspend = ival; + + tplg_dbg("\t%s: %s", id, val); + continue; + } + if (strcmp(id, "subseq") == 0) { if (tplg_get_integer(n, &ival, 0)) return -EINVAL; @@ -700,6 +711,9 @@ int tplg_save_dapm_widget(snd_tplg_t *tplg ATTRIBUTE_UNUSED, if (err >= 0 && widget->invert) err = tplg_save_printf(dst, pfx, "\tinvert %u\n", widget->invert); + if (err >= 0 && widget->ignore_suspend) + err = tplg_save_printf(dst, pfx, "\tignore_suspend %u\n", + widget->ignore_suspend); if (err >= 0 && widget->subseq) err = tplg_save_printf(dst, pfx, "\tsubseq %u\n", widget->subseq);