From: Xiubo Li
Date: Fri, 24 Jan 2014 07:43:02 +0000 (+0800)
Subject: ASoC: simple-card: Add snd_card's name parsing from DT node support
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=2772555b6c5ba79783c04ea6c60549530d737e2e;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git
ASoC: simple-card: Add snd_card's name parsing from DT node support
If the DT is used and the CPU DAI device has only one DAI, the card
name will be like :
ALSA device list:
0: 40031000.sai-sgtl5000
And this name maybe a little ugly to some customers, so here the
card name parsing from DT node is supported.
Signed-off-by: Xiubo Li
Signed-off-by: Mark Brown
---
diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c
index 65833feb995f..0890fcdc9251 100644
--- a/sound/soc/generic/simple-card.c
+++ b/sound/soc/generic/simple-card.c
@@ -143,6 +143,9 @@ static int asoc_simple_card_parse_of(struct device_node *node,
char *name;
int ret;
+ /* parsing the card name from DT */
+ snd_soc_of_parse_card_name(&priv->snd_card, "simple-audio-card,name");
+
/* get CPU/CODEC common format via simple-audio-card,format */
priv->daifmt = snd_soc_of_parse_daifmt(node, "simple-audio-card,") &
(SND_SOC_DAIFMT_FORMAT_MASK | SND_SOC_DAIFMT_INV_MASK);
@@ -187,7 +190,8 @@ static int asoc_simple_card_parse_of(struct device_node *node,
GFP_KERNEL);
sprintf(name, "%s-%s", dai_link->cpu_dai_name,
dai_link->codec_dai_name);
- priv->snd_card.name = name;
+ if (!priv->snd_card.name)
+ priv->snd_card.name = name;
dai_link->name = dai_link->stream_name = name;
/* simple-card assumes platform == cpu */