ASoC: tlv320aic32x4: Add additional input pins
authorJeremy McDermond <nh6z@nh6z.net>
Wed, 20 Apr 2016 18:39:12 +0000 (11:39 -0700)
committerMark Brown <broonie@kernel.org>
Thu, 21 Apr 2016 09:50:18 +0000 (10:50 +0100)
The input mixers support routing the IN1_R pin to the Left PGA and the
IN2_L pin to the Right PGA.  This patch allows for those routings.

Signed-off-by: Jeremy McDermond <nh6z@nh6z.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/tlv320aic32x4.c

index 621f4210cd27c5ecc8dbdf62aace19bd62afd240..0eb8acc8cd664d5f5044e7d43a77b58852e50730 100644 (file)
@@ -193,11 +193,14 @@ static SOC_ENUM_SINGLE_DECL(in2l_lpga_p_enum, AIC32X4_LMICPGAPIN, 4,
                resistor_text);
 static SOC_ENUM_SINGLE_DECL(in3l_lpga_p_enum, AIC32X4_LMICPGAPIN, 2,
                resistor_text);
+static SOC_ENUM_SINGLE_DECL(in1r_lpga_p_enum, AIC32X4_LMICPGAPIN, 0,
+               resistor_text);
 
 static const struct snd_kcontrol_new left_input_mixer_controls[] = {
        SOC_DAPM_ENUM("IN1_L P Switch", in1l_lpga_p_enum),
        SOC_DAPM_ENUM("IN2_L P Switch", in2l_lpga_p_enum),
        SOC_DAPM_ENUM("IN3_L P Switch", in3l_lpga_p_enum),
+       SOC_DAPM_ENUM("IN1_R P Switch", in1r_lpga_p_enum),
 };
 
 static SOC_ENUM_SINGLE_DECL(in1r_rpga_p_enum, AIC32X4_RMICPGAPIN, 6,
@@ -206,11 +209,14 @@ static SOC_ENUM_SINGLE_DECL(in2r_rpga_p_enum, AIC32X4_RMICPGAPIN, 4,
                resistor_text);
 static SOC_ENUM_SINGLE_DECL(in3r_rpga_p_enum, AIC32X4_RMICPGAPIN, 2,
                resistor_text);
+static SOC_ENUM_SINGLE_DECL(in2l_rpga_p_enum, AIC32X4_RMICPGAPIN, 0,
+               resistor_text);
 
 static const struct snd_kcontrol_new right_input_mixer_controls[] = {
        SOC_DAPM_ENUM("IN1_R P Switch", in1r_rpga_p_enum),
        SOC_DAPM_ENUM("IN2_R P Switch", in2r_rpga_p_enum),
        SOC_DAPM_ENUM("IN3_R P Switch", in3r_rpga_p_enum),
+       SOC_DAPM_ENUM("IN2_L P Switch", in2l_rpga_p_enum),
 };
 
 static const struct snd_soc_dapm_widget aic32x4_dapm_widgets[] = {
@@ -285,6 +291,7 @@ static const struct snd_soc_dapm_route aic32x4_dapm_routes[] = {
        {"Left Input Mixer", "IN1_L P Switch", "IN1_L"},
        {"Left Input Mixer", "IN2_L P Switch", "IN2_L"},
        {"Left Input Mixer", "IN3_L P Switch", "IN3_L"},
+       {"Left Input Mixer", "IN1_R P Switch", "IN1_R"},
 
        {"Left ADC", NULL, "Left Input Mixer"},
 
@@ -292,6 +299,7 @@ static const struct snd_soc_dapm_route aic32x4_dapm_routes[] = {
        {"Right Input Mixer", "IN1_R P Switch", "IN1_R"},
        {"Right Input Mixer", "IN2_R P Switch", "IN2_R"},
        {"Right Input Mixer", "IN3_R P Switch", "IN3_R"},
+       {"Right Input Mixer", "IN2_L P Switch", "IN2_L"},
 
        {"Right ADC", NULL, "Right Input Mixer"},
 };