summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSylwester Nawrocki <s.nawrocki@samsung.com>2019-02-15 13:04:22 +0100
committerSylwester Nawrocki <s.nawrocki@samsung.com>2019-03-04 18:05:33 +0100
commit769d3be463ba1fe1cf7ef8b59e8e969e00cd7efc (patch)
tree9bbccab998ac6df9ac8e7565df0fea03903b4e8b
parent88f9017acba5b213d082eda016e84f1c53cf85f8 (diff)
downloadlinux-exynos-769d3be463ba1fe1cf7ef8b59e8e969e00cd7efc.tar.gz
linux-exynos-769d3be463ba1fe1cf7ef8b59e8e969e00cd7efc.tar.bz2
linux-exynos-769d3be463ba1fe1cf7ef8b59e8e969e00cd7efc.zip
ASoC: samsung: odroid: Add missing DAPM routes
With old DTS there will be missing DAPM routes linking BE with CODECs. Add those routes in the card driver so sound works properly on Odroid XU3/4 also without DTS updates enabling the secondary PCM. Change-Id: I0a2a8e59859cdaf46da0563e30278dc9a8fe2376 Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/samsung/odroid.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/sound/soc/samsung/odroid.c b/sound/soc/samsung/odroid.c
index 941e8c3f67a4..5b2bcd1d3450 100644
--- a/sound/soc/samsung/odroid.c
+++ b/sound/soc/samsung/odroid.c
@@ -149,6 +149,12 @@ static const struct snd_soc_ops odroid_card_be_ops = {
.trigger = odroid_card_be_trigger,
};
+/* DAPM routes for backward compatibility with old DTS */
+static const struct snd_soc_dapm_route odroid_dapm_routes[] = {
+ { "I2S Playback", NULL, "Mixer DAI TX" },
+ { "HiFi Playback", NULL, "Mixer DAI TX" },
+};
+
static struct snd_soc_dai_link odroid_card_dais[] = {
{
/* Primary FE <-> BE link */
@@ -237,11 +243,15 @@ static int odroid_audio_probe(struct platform_device *pdev)
/*
* For backwards compatibility create the secondary CPU DAI link only
* if there are 2 CPU DAI entries in the cpu sound-dai property in DT.
+ * Also add required DAPM routes not available in old DTS.
*/
num_pcms = of_count_phandle_with_args(cpu, "sound-dai",
"#sound-dai-cells");
- if (num_pcms == 1)
+ if (num_pcms == 1) {
+ card->dapm_routes = odroid_dapm_routes;
+ card->num_dapm_routes = ARRAY_SIZE(odroid_dapm_routes);
card->num_links--;
+ }
for (i = 0; i < num_pcms; i++, link += 2) {
ret = of_parse_phandle_with_args(cpu, "sound-dai",