Browse Source

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>
Kuninori Morimoto 13 years ago
parent
commit
e8c83dbfb7
1 changed files with 11 additions and 0 deletions
  1. 11 0
      sound/soc/codecs/ak4642.c

+ 11 - 0
sound/soc/codecs/ak4642.c

@@ -158,11 +158,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],
@@ -172,6 +177,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),
 };
@@ -181,9 +190,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 */