[alsa-devel] [PATCH] ASoC: ak4554: Add DAPM support

Mark Brown broonie at kernel.org
Sun Aug 11 13:29:51 CEST 2013


From: Mark Brown <broonie at linaro.org>

This makes it possible to hook the device into a more complex board and
ensures it will continue to work with non-DAPM support removed from the
core.

Signed-off-by: Mark Brown <broonie at linaro.org>
---
 sound/soc/codecs/ak4554.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/sound/soc/codecs/ak4554.c b/sound/soc/codecs/ak4554.c
index 6aed9c4..79e9555 100644
--- a/sound/soc/codecs/ak4554.c
+++ b/sound/soc/codecs/ak4554.c
@@ -29,6 +29,22 @@
  * CPU-DAI2 (capture only fmt = LEFT_J) ---+
  */
 
+static const struct snd_soc_dapm_widget ak4554_dapm_widgets[] = {
+SND_SOC_DAPM_INPUT("AINL"),
+SND_SOC_DAPM_INPUT("AINR"),
+
+SND_SOC_DAPM_OUTPUT("AOUTL"),
+SND_SOC_DAPM_OUTPUT("AOUTR"),
+};
+
+static const struct snd_soc_dapm_route ak4554_dapm_routes[] = {
+	{ "Capture", NULL, "AINL" },
+	{ "Capture", NULL, "AINR" },
+
+	{ "AOUTL", NULL, "Playback" },
+	{ "AOUTR", NULL, "Playback" },
+};
+
 static struct snd_soc_dai_driver ak4554_dai = {
 	.name = "ak4554-hifi",
 	.playback = {
@@ -49,6 +65,10 @@ static struct snd_soc_dai_driver ak4554_dai = {
 };
 
 static struct snd_soc_codec_driver soc_codec_dev_ak4554 = {
+	.dapm_widgets = ak4554_dapm_widgets,
+	.num_dapm_widgets = ARRAY_SIZE(ak4554_dapm_widgets),
+	.dapm_routes = ak4554_dapm_routes,
+	.num_dapm_routes = ARRAY_SIZE(ak4554_dapm_routes),
 };
 
 static int ak4554_soc_probe(struct platform_device *pdev)
-- 
1.8.4.rc1



More information about the Alsa-devel mailing list