summaryrefslogtreecommitdiff
path: root/sound/soc/generic
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2014-08-27 20:08:06 -0700
committerMark Brown <broonie@kernel.org>2014-08-29 12:51:01 +0100
commit179949bc04c7157a4b2279f62a842638b61f78f9 (patch)
tree516c77d47810ca7e4fea0b30e261a4b9e2779b20 /sound/soc/generic
parent2d82eeb02655e32358efd42598d8276284c23364 (diff)
ASoC: simple-card: remove dai_link->cpu_dai_name when DT
f687d900d30a61dda38db2a99239f5284a86a309 (ASoC: simple-card: cpu_dai_name creates confusion when DT case) removed dai_link->cpu_dai_name when DT case, since it uses DT phand in soc_bind_dai_link(). This binding will fail if it has cpu_dai_name. 6a91a17bd7b92b2d2aa9ece85457f52a62fd7708 (ASoC: simple-card: Handle many DAI links) added multi DAI link support to simple-card driver. Then, removing cpu_dai_name was cared only single DAI. But, it is needed in all DT cases. This patch moves it to asoc_simple_card_dai_link_of() so that care about all DAIs. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/generic')
-rw-r--r--sound/soc/generic/simple-card.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c
index c5445b0ae9ff..e8185a0b933f 100644
--- a/sound/soc/generic/simple-card.c
+++ b/sound/soc/generic/simple-card.c
@@ -285,6 +285,17 @@ static int asoc_simple_card_dai_link_of(struct device_node *node,
dai_props->codec_dai.fmt,
dai_props->codec_dai.sysclk);
+ /*
+ * soc_bind_dai_link() will check cpu name
+ * after of_node matching if dai_link has cpu_dai_name.
+ * but, it will never match if name was created by fmt_single_name()
+ * remove cpu_dai_name to escape name matching.
+ * see
+ * fmt_single_name()
+ * fmt_multiple_name()
+ */
+ dai_link->cpu_dai_name = NULL;
+
dai_link_of_err:
if (np)
of_node_put(np);
@@ -429,18 +440,6 @@ static int asoc_simple_card_probe(struct platform_device *pdev)
goto err;
}
- /*
- * soc_bind_dai_link() will check cpu name
- * after of_node matching if dai_link has cpu_dai_name.
- * but, it will never match if name was created by fmt_single_name()
- * remove cpu_dai_name to escape name matching.
- * see
- * fmt_single_name()
- * fmt_multiple_name()
- */
- if (num_links == 1)
- dai_link->cpu_dai_name = NULL;
-
} else {
struct asoc_simple_card_info *cinfo;