From 5925a6d870331c631f85ed4e18a8c5e6459b3c36 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Sat, 14 Dec 2019 13:50:04 +0100 Subject: [PATCH] topology: use snd_config_get_bool() instead own implementation Signed-off-by: Jaroslav Kysela --- src/topology/ctl.c | 9 +++------ src/topology/dapm.c | 9 ++++----- src/topology/data.c | 15 ++++++++++++--- src/topology/pcm.c | 29 +++++++++++++++-------------- 4 files changed, 34 insertions(+), 28 deletions(-) diff --git a/src/topology/ctl.c b/src/topology/ctl.c index e1896f46..9190efef 100644 --- a/src/topology/ctl.c +++ b/src/topology/ctl.c @@ -657,13 +657,10 @@ int tplg_parse_control_mixer(snd_tplg_t *tplg, } if (strcmp(id, "invert") == 0) { - if (snd_config_get_string(n, &val) < 0) + ival = snd_config_get_bool(n); + if (ival < 0) return -EINVAL; - - if (strcmp(val, "true") == 0) - mc->invert = 1; - else if (strcmp(val, "false") == 0) - mc->invert = 0; + mc->invert = ival; tplg_dbg("\t%s: %d\n", id, mc->invert); continue; diff --git a/src/topology/dapm.c b/src/topology/dapm.c index c6fd793d..ad709210 100644 --- a/src/topology/dapm.c +++ b/src/topology/dapm.c @@ -479,8 +479,7 @@ int tplg_parse_dapm_widget(snd_tplg_t *tplg, snd_config_iterator_t i, next; snd_config_t *n; const char *id, *val = NULL; - int widget_type, err; - int ival; + int widget_type, err, ival; elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_DAPM_WIDGET); if (!elem) @@ -531,11 +530,11 @@ int tplg_parse_dapm_widget(snd_tplg_t *tplg, } if (strcmp(id, "no_pm") == 0) { - if (snd_config_get_string(n, &val) < 0) + ival = snd_config_get_bool(n); + if (ival < 0) return -EINVAL; - if (strcmp(val, "true") == 0) - widget->reg = -1; + widget->reg = ival ? -1 : 0; tplg_dbg("\t%s: %s\n", id, val); continue; diff --git a/src/topology/data.c b/src/topology/data.c index 0edfe54f..6b1337b3 100644 --- a/src/topology/data.c +++ b/src/topology/data.c @@ -557,6 +557,7 @@ static int parse_tuple_set(snd_config_t *cfg, unsigned int type, num_tuples = 0; struct tplg_tuple *tuple; unsigned long int tuple_val; + int ival; snd_config_get_id(cfg, &id); @@ -607,25 +608,33 @@ static int parse_tuple_set(snd_config_t *cfg, switch (type) { case SND_SOC_TPLG_TUPLE_TYPE_UUID: + if (snd_config_get_string(n, &value) < 0) + continue; if (get_uuid(value, tuple->uuid) < 0) goto err; break; case SND_SOC_TPLG_TUPLE_TYPE_STRING: + if (snd_config_get_string(n, &value) < 0) + continue; snd_strlcpy(tuple->string, value, SNDRV_CTL_ELEM_ID_NAME_MAXLEN); tplg_dbg("\t\t%s = %s\n", tuple->token, tuple->string); break; case SND_SOC_TPLG_TUPLE_TYPE_BOOL: - if (strcmp(value, "true") == 0) - tuple->value = 1; + ival = snd_config_get_bool(n); + if (ival < 0) + continue; + tuple->value = ival; tplg_dbg("\t\t%s = %d\n", tuple->token, tuple->value); break; case SND_SOC_TPLG_TUPLE_TYPE_BYTE: case SND_SOC_TPLG_TUPLE_TYPE_SHORT: case SND_SOC_TPLG_TUPLE_TYPE_WORD: + if (snd_config_get_string(n, &value) < 0) + continue; errno = 0; /* no support for negative value */ tuple_val = strtoul(value, NULL, 0); @@ -1012,7 +1021,7 @@ int tplg_parse_data(snd_tplg_t *tplg, snd_config_t *cfg, { snd_config_iterator_t i, next; snd_config_t *n; - const char *id, *val = NULL; + const char *id; int err = 0, ival; struct tplg_elem *elem; diff --git a/src/topology/pcm.c b/src/topology/pcm.c index d6c52b47..6364e24f 100644 --- a/src/topology/pcm.c +++ b/src/topology/pcm.c @@ -669,8 +669,8 @@ int tplg_parse_pcm(snd_tplg_t *tplg, snd_config_t *cfg, struct tplg_elem *elem; snd_config_iterator_t i, next; snd_config_t *n; - const char *id, *val = NULL; - int err; + const char *id; + int err, ival; elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_PCM); if (!elem) @@ -709,11 +709,11 @@ int tplg_parse_pcm(snd_tplg_t *tplg, snd_config_t *cfg, } if (strcmp(id, "compress") == 0) { - if (snd_config_get_string(n, &val) < 0) + ival = snd_config_get_bool(n); + if (ival < 0) return -EINVAL; - if (strcmp(val, "true") == 0) - pcm->compress = 1; + pcm->compress = ival; tplg_dbg("\t%s: %s\n", id, val); continue; @@ -1107,7 +1107,7 @@ int tplg_parse_hw_config(snd_tplg_t *tplg, snd_config_t *cfg, snd_config_iterator_t i, next; snd_config_t *n; const char *id, *val = NULL; - int ret; + int ret, ival; elem = tplg_elem_new_common(tplg, cfg, NULL, SND_TPLG_TYPE_HW_CONFIG); if (!elem) @@ -1178,11 +1178,11 @@ int tplg_parse_hw_config(snd_tplg_t *tplg, snd_config_t *cfg, if (strcmp(id, "bclk_invert") == 0 || strcmp(id, "invert_bclk") == 0) { - if (snd_config_get_string(n, &val) < 0) + ival = snd_config_get_bool(n); + if (ival < 0) return -EINVAL; - if (!strcmp(val, "true")) - hw_cfg->invert_bclk = true; + hw_cfg->invert_bclk = ival; continue; } @@ -1209,11 +1209,11 @@ int tplg_parse_hw_config(snd_tplg_t *tplg, snd_config_t *cfg, if (strcmp(id, "fsync_invert") == 0 || strcmp(id, "invert_fsync") == 0) { - if (snd_config_get_string(n, &val) < 0) + ival = snd_config_get_bool(n); + if (ival < 0) return -EINVAL; - if (!strcmp(val, "true")) - hw_cfg->invert_fsync = true; + hw_cfg->invert_fsync = ival; continue; } @@ -1254,10 +1254,11 @@ int tplg_parse_hw_config(snd_tplg_t *tplg, snd_config_t *cfg, if (strcmp(id, "pm_gate_clocks") == 0 || strcmp(id, "clock_gated") == 0) { - if (snd_config_get_string(n, &val) < 0) + ival = snd_config_get_bool(n); + if (ival < 0) return -EINVAL; - if (!strcmp(val, "true")) + if (ival) hw_cfg->clock_gated = SND_SOC_TPLG_DAI_CLK_GATE_GATED; else -- 2.47.3