2019-08-09 17:50:30 +00:00
|
|
|
From dd1eb4f52da71e7f8d44f96445129864ce25ec2a Mon Sep 17 00:00:00 2001
|
2019-07-09 18:32:28 +00:00
|
|
|
From: Annaliese McDermond <nh6z@nh6z.net>
|
|
|
|
Date: Wed, 3 Apr 2019 21:01:54 -0700
|
2019-08-09 17:50:30 +00:00
|
|
|
Subject: [PATCH 414/773] ASoC: tlv320aic32x4: Add Switch for Setting Common
|
2019-07-09 18:32:28 +00:00
|
|
|
Mode Voltage
|
|
|
|
|
|
|
|
commit 44ceee847e27c828f2f1ef4e400e6bc0c8d04de3 upstream.
|
|
|
|
|
|
|
|
Add a switch for setting common mode voltage. This can allow
|
|
|
|
for higher drive levels on the amplifier outputs.
|
|
|
|
|
|
|
|
Signed-off-by: Annaliese McDermond <nh6z@nh6z.net>
|
|
|
|
Signed-off-by: Mark Brown <broonie@kernel.org>
|
|
|
|
---
|
|
|
|
sound/soc/codecs/tlv320aic32x4.c | 7 +++++++
|
|
|
|
1 file changed, 7 insertions(+)
|
|
|
|
|
|
|
|
--- a/sound/soc/codecs/tlv320aic32x4.c
|
|
|
|
+++ b/sound/soc/codecs/tlv320aic32x4.c
|
|
|
|
@@ -242,6 +242,12 @@ static DECLARE_TLV_DB_SCALE(tlv_driver_g
|
|
|
|
/* -12dB min, 0.5dB steps */
|
|
|
|
static DECLARE_TLV_DB_SCALE(tlv_adc_vol, -1200, 50, 0);
|
|
|
|
|
|
|
|
+static const char * const lo_cm_text[] = {
|
|
|
|
+ "Full Chip", "1.65V",
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static SOC_ENUM_SINGLE_DECL(lo_cm_enum, AIC32X4_CMMODE, 3, lo_cm_text);
|
|
|
|
+
|
|
|
|
static const struct snd_kcontrol_new aic32x4_snd_controls[] = {
|
|
|
|
SOC_DOUBLE_R_S_TLV("PCM Playback Volume", AIC32X4_LDACVOL,
|
|
|
|
AIC32X4_RDACVOL, 0, -0x7f, 0x30, 7, 0, tlv_pcm),
|
|
|
|
@@ -255,6 +261,7 @@ static const struct snd_kcontrol_new aic
|
|
|
|
AIC32X4_HPRGAIN, 6, 0x01, 1),
|
|
|
|
SOC_DOUBLE_R("LO DAC Playback Switch", AIC32X4_LOLGAIN,
|
|
|
|
AIC32X4_LORGAIN, 6, 0x01, 1),
|
|
|
|
+ SOC_ENUM("LO Playback Common Mode Switch", lo_cm_enum),
|
|
|
|
SOC_DOUBLE_R("Mic PGA Switch", AIC32X4_LMICPGAVOL,
|
|
|
|
AIC32X4_RMICPGAVOL, 7, 0x01, 1),
|
|
|
|
|