ASoC: ak4642: add Line out support
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Fri, 11 Nov 2011 00:21:55 +0000 (16:21 -0800)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Fri, 11 Nov 2011 08:47:05 +0000 (08:47 +0000)
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/ak4642.c

index b2460c2eebe00b386609caeaaed73eecacc7ac3e..daec5f75def20867d2053ec9f98cb06565ffabb2 100644 (file)
@@ -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 */