summaryrefslogtreecommitdiff
path: root/sound/soc/samsung/speyside.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-04-13 01:15:10 +0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-04-13 21:02:17 +0400
commit556e4fb1d801b0f977b1522e14fb06e2f3059f4c (patch)
tree84ccd76fc27856d7616797221c5771a4d7c3dfbb /sound/soc/samsung/speyside.c
parentea0e60de385a984ab54d6694b03119d1706f548e (diff)
downloadlinux-556e4fb1d801b0f977b1522e14fb06e2f3059f4c.tar.xz
ASoC: Add stub baseband link on Speyside
Demonstrate the connection of a baseband to the system. We add a DAI for the link to the baseband. This will become visible to the application layer - audio should be started from the application layer using an application such as this: http://opensource.wolfsonmicro.com/~gg/bluetooth-pcm/bluetooth_pcm.c which starts up audio as for CPU based playback and record up to the point where data is streamed. Due to non-availability of baseband simulation hardware we reuse the configuration for the CPU link with the CODEC acting as clock master, allowing signals to be observed with a scope. A more standard system would have separate configuration for the baseband with its own ops structure and operations. Normally the baseband would be clock master as the baseband audio will be synchronised to the external telephony network. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound/soc/samsung/speyside.c')
-rw-r--r--sound/soc/samsung/speyside.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/soc/samsung/speyside.c b/sound/soc/samsung/speyside.c
index e171a321889f..a0c14a87e23d 100644
--- a/sound/soc/samsung/speyside.c
+++ b/sound/soc/samsung/speyside.c
@@ -164,6 +164,15 @@ static struct snd_soc_dai_link speyside_dai[] = {
.init = speyside_wm8915_init,
.ops = &speyside_ops,
},
+ {
+ .name = "Baseband",
+ .stream_name = "Baseband",
+ .cpu_dai_name = "wm8915-aif2",
+ .codec_dai_name = "wm1250-ev1",
+ .codec_name = "wm1250-ev1.1-0027",
+ .platform_name = "samsung-audio",
+ .ops = &speyside_ops,
+ },
};
static int speyside_wm9081_init(struct snd_soc_dapm_context *dapm)
@@ -194,6 +203,8 @@ static const struct snd_kcontrol_new controls[] = {
SOC_DAPM_PIN_SWITCH("Main Speaker"),
SOC_DAPM_PIN_SWITCH("Main DMIC"),
SOC_DAPM_PIN_SWITCH("Main AMIC"),
+ SOC_DAPM_PIN_SWITCH("WM1250 Input"),
+ SOC_DAPM_PIN_SWITCH("WM1250 Output"),
};
static struct snd_soc_dapm_widget widgets[] = {