blob: 7f11a0f54fa8b992e1f19e8325b6fb78cb0d3a87 [file] [log] [blame]
From 5b5d2d5ef56e2faf823428eecd05c9fdc6d5945f Mon Sep 17 00:00:00 2001
From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu, 10 Nov 2011 16:21:55 -0800
Subject: ASoC: ak4642: add Line out support
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
(cherry picked from commit e8c83dbfb7fc0c3cec141112524906b029a1f413)
Signed-off-by: Simon Horman <horms@verge.net.au>
---
sound/soc/codecs/ak4642.c | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/sound/soc/codecs/ak4642.c b/sound/soc/codecs/ak4642.c
index f728181..0f2ee7f 100644
--- a/sound/soc/codecs/ak4642.c
+++ b/sound/soc/codecs/ak4642.c
@@ -157,11 +157,16 @@ static const struct snd_kcontrol_new ak4642_hpout_mixer_controls[] = {
SOC_DAPM_SINGLE("DACH", MD_CTL4, 0, 1, 0),
};
+static const struct snd_kcontrol_new ak4642_lout_mixer_controls[] = {
+ SOC_DAPM_SINGLE("DACL", SG_SL1, 4, 1, 0),
+};
+
static const struct snd_soc_dapm_widget ak4642_dapm_widgets[] = {
/* Outputs */
SND_SOC_DAPM_OUTPUT("HPOUTL"),
SND_SOC_DAPM_OUTPUT("HPOUTR"),
+ SND_SOC_DAPM_OUTPUT("LINEOUT"),
SND_SOC_DAPM_MIXER("HPOUTL Mixer", PW_MGMT2, 5, 0,
&ak4642_hpout_mixer_controls[0],
@@ -171,6 +176,10 @@ static const struct snd_soc_dapm_widget ak4642_dapm_widgets[] = {
&ak4642_hpout_mixer_controls[0],
ARRAY_SIZE(ak4642_hpout_mixer_controls)),
+ SND_SOC_DAPM_MIXER("LINEOUT Mixer", PW_MGMT1, 3, 0,
+ &ak4642_lout_mixer_controls[0],
+ ARRAY_SIZE(ak4642_lout_mixer_controls)),
+
/* DAC */
SND_SOC_DAPM_DAC("DAC", "HiFi Playback", PW_MGMT1, 2, 0),
};
@@ -180,9 +189,11 @@ static const struct snd_soc_dapm_route ak4642_intercon[] = {
/* Outputs */
{"HPOUTL", NULL, "HPOUTL Mixer"},
{"HPOUTR", NULL, "HPOUTR Mixer"},
+ {"LINEOUT", NULL, "LINEOUT Mixer"},
{"HPOUTL Mixer", "DACH", "DAC"},
{"HPOUTR Mixer", "DACH", "DAC"},
+ {"LINEOUT Mixer", "DACL", "DAC"},
};
/* codec private data */
--
1.7.10.2.565.gbd578b5