ASoC: ad73311: Add DAPM support
authorMark Brown <broonie@linaro.org>
Wed, 7 Aug 2013 16:59:51 +0000 (17:59 +0100)
committerMark Brown <broonie@linaro.org>
Thu, 8 Aug 2013 13:24:30 +0000 (14:24 +0100)
This makes it possible to hook up other devices in boards and is required
by removal of support for non-DAPM CODECs in the core.

Signed-off-by: Mark Brown <broonie@linaro.org>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
sound/soc/codecs/ad73311.c

index b1f2baf42b48233678ae051bea1bd2b9fb747327..5fac8adbc1367a8b01d1243e9768a25b2b015643 100644 (file)
 
 #include "ad73311.h"
 
+static const struct snd_soc_dapm_widget ad73311_dapm_widgets[] = {
+SND_SOC_DAPM_INPUT("VINP"),
+SND_SOC_DAPM_INPUT("VINN"),
+SND_SOC_DAPM_OUTPUT("VOUTN"),
+SND_SOC_DAPM_OUTPUT("VOUTP"),
+};
+
+static const struct snd_soc_dapm_route ad73311_dapm_routes[] = {
+       { "Capture", NULL, "VINP" },
+       { "Capture", NULL, "VINN" },
+
+       { "VOUTN", NULL, "Playback" },
+       { "VOUTP", NULL, "Playback" },
+};
+
 static struct snd_soc_dai_driver ad73311_dai = {
        .name = "ad73311-hifi",
        .playback = {
@@ -39,7 +54,12 @@ static struct snd_soc_dai_driver ad73311_dai = {
                .formats = SNDRV_PCM_FMTBIT_S16_LE, },
 };
 
-static struct snd_soc_codec_driver soc_codec_dev_ad73311;
+static struct snd_soc_codec_driver soc_codec_dev_ad73311 = {
+       .dapm_widgets = ad73311_dapm_widgets,
+       .num_dapm_widgets = ARRAY_SIZE(ad73311_dapm_widgets),
+       .dapm_routes = ad73311_dapm_routes,
+       .num_dapm_routes = ARRAY_SIZE(ad73311_dapm_routes),
+};
 
 static int ad73311_probe(struct platform_device *pdev)
 {