summaryrefslogtreecommitdiff
path: root/sound/soc/codecs/tlv320aic32x4.c
diff options
context:
space:
mode:
authorJeremy McDermond <nh6z@nh6z.net>2016-04-20 21:39:12 +0300
committerMark Brown <broonie@kernel.org>2016-04-21 12:50:18 +0300
commit13a06ed55dba0ae3f983ef3c4ea70fc42066e1b5 (patch)
tree4b4d0779672de3e825187d42ff77c62637b1a569 /sound/soc/codecs/tlv320aic32x4.c
parent20d2cecbb7b9c35235c97f0dfa520525c28f8841 (diff)
downloadlinux-13a06ed55dba0ae3f983ef3c4ea70fc42066e1b5.tar.xz
ASoC: tlv320aic32x4: Add additional input pins
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>
Diffstat (limited to 'sound/soc/codecs/tlv320aic32x4.c')
-rw-r--r--sound/soc/codecs/tlv320aic32x4.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/soc/codecs/tlv320aic32x4.c b/sound/soc/codecs/tlv320aic32x4.c
index 621f4210cd27..0eb8acc8cd66 100644
--- a/sound/soc/codecs/tlv320aic32x4.c
+++ b/sound/soc/codecs/tlv320aic32x4.c
@@ -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"},
};