summaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorLucas Stach <l.stach@pengutronix.de>2017-08-29 17:51:22 +0200
committerMark Brown <broonie@kernel.org>2017-08-30 18:41:38 +0100
commit1b4a56cd7f5c2f835ffae2a8204fb95597269b10 (patch)
treea193fec5d8492dd579a942f11fa7a4261c51625c /sound/soc
parent5771a8c08880cdca3bfb4a3fc6d309d6bba20877 (diff)
downloadlinux-stable-1b4a56cd7f5c2f835ffae2a8204fb95597269b10.tar.gz
linux-stable-1b4a56cd7f5c2f835ffae2a8204fb95597269b10.tar.bz2
linux-stable-1b4a56cd7f5c2f835ffae2a8204fb95597269b10.zip
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: dedfaa1eedc7 (ASoC: simple-card-utils: enable "label" on asoc_simple_card_parse_card_name) Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/generic/simple-card-utils.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/soc/generic/simple-card-utils.c b/sound/soc/generic/simple-card-utils.c
index 26d64fa40c9c..0442099157e6 100644
--- a/sound/soc/generic/simple-card-utils.c
+++ b/sound/soc/generic/simple-card-utils.c
@@ -132,7 +132,7 @@ int asoc_simple_card_parse_card_name(struct snd_soc_card *card,
/* Parse the card name from DT */
ret = snd_soc_of_parse_card_name(card, "label");
- if (ret < 0) {
+ if (ret < 0 || !card->name) {
char prop[128];
snprintf(prop, sizeof(prop), "%sname", prefix);