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>
This commit is contained in:
Mark Brown 2011-04-12 14:15:10 -07:00
parent ea0e60de38
commit 556e4fb1d8

View File

@ -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[] = {