[alsa-devel] [PATCH 2/8] ASoC: TWL4030: Add Analog PGA control switch to DAPM

Peter Ujfalusi peter.ujfalusi at nokia.com
Mon Dec 8 09:09:02 CET 2008


Add all four APGA switch to DAPM routing and widgets.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi at nokia.com>
---
 sound/soc/codecs/twl4030.c |   22 ++++++++++++++++++++--
 1 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/sound/soc/codecs/twl4030.c b/sound/soc/codecs/twl4030.c
index 3543bf6..11a6610 100644
--- a/sound/soc/codecs/twl4030.c
+++ b/sound/soc/codecs/twl4030.c
@@ -626,14 +626,32 @@ static const struct snd_soc_dapm_widget twl4030_dapm_widgets[] = {
 	SND_SOC_DAPM_DAC("DACL2", "Left Rear Playback",
 			TWL4030_REG_AVDAC_CTL, 3, 0),
 
+	/* Analog PGAs
+	 * bit 0: APGA enable
+	 * bit 1: Digital to analog path enable
+	 */
+	SND_SOC_DAPM_REG(snd_soc_dapm_pga, "ARXR1_APGA",
+			TWL4030_REG_ARXR1_APGA_CTL, 0, 0x3, 0x3, 0x0),
+	SND_SOC_DAPM_REG(snd_soc_dapm_pga, "ARXL1_APGA",
+			TWL4030_REG_ARXL1_APGA_CTL, 0, 0x3, 0x3, 0x0),
+	SND_SOC_DAPM_REG(snd_soc_dapm_pga, "ARXR2_APGA",
+			TWL4030_REG_ARXR2_APGA_CTL, 0, 0x3, 0x3, 0x0),
+	SND_SOC_DAPM_REG(snd_soc_dapm_pga, "ARXL2_APGA",
+			TWL4030_REG_ARXL2_APGA_CTL, 0, 0x3, 0x3, 0x0),
+
 	SND_SOC_DAPM_ADC("ADCL", "Left Capture", SND_SOC_NOPM, 0, 0),
 	SND_SOC_DAPM_ADC("ADCR", "Right Capture", SND_SOC_NOPM, 0, 0),
 };
 
 static const struct snd_soc_dapm_route intercon[] = {
+	{"ARXL1_APGA", NULL, "DACL1"},
+	{"ARXR1_APGA", NULL, "DACR1"},
+	{"ARXL2_APGA", NULL, "DACL2"},
+	{"ARXR2_APGA", NULL, "DACR2"},
+
 	/* outputs */
-	{"OUTL", NULL, "DACL2"},
-	{"OUTR", NULL, "DACR2"},
+	{"OUTL", NULL, "ARXL2_APGA"},
+	{"OUTR", NULL, "ARXR2_APGA"},
 
 	/* inputs */
 	{"ADCL", NULL, "INL"},
-- 
1.6.0.3



More information about the Alsa-devel mailing list