Commit 1b4a56cd authored by Lucas Stach's avatar Lucas Stach Committed by Mark Brown

ASoC: simple_card_utils: fix fallback when "label" property isn't present

snd_soc_of_parse_card_name() doesn't return an error if the requested
property isn't present, but silently fails to fill the card name. This can
not be changed, as it is a backwards compatibility measure itself.

We can not rely on the return value of this function alone, but must check
if the card name has been filled sucessfully when deciding to skip the
fallback path, which is in place for existing users.

Fixes: dedfaa1e (ASoC: simple-card-utils: enable "label" on
                     asoc_simple_card_parse_card_name)
Signed-off-by: default avatarLucas Stach <l.stach@pengutronix.de>
Acked-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 5771a8c0
...@@ -132,7 +132,7 @@ int asoc_simple_card_parse_card_name(struct snd_soc_card *card, ...@@ -132,7 +132,7 @@ int asoc_simple_card_parse_card_name(struct snd_soc_card *card,
/* Parse the card name from DT */ /* Parse the card name from DT */
ret = snd_soc_of_parse_card_name(card, "label"); ret = snd_soc_of_parse_card_name(card, "label");
if (ret < 0) { if (ret < 0 || !card->name) {
char prop[128]; char prop[128];
snprintf(prop, sizeof(prop), "%sname", prefix); snprintf(prop, sizeof(prop), "%sname", prefix);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment