ASoC: alc5632: Fix Boost Volume TLVs used for the external microphones
authorPaul Fertser <fercerpav@gmail.com>
Sat, 11 Feb 2012 21:26:36 +0000 (23:26 +0200)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Sat, 11 Feb 2012 23:02:48 +0000 (23:02 +0000)
This brings the TLVs in sync with the documentation and allows to properly
manipulate mic boost controls with alsamixer.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Leon Romanovsky <leon@leon.nu>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/alc5632.c

index 69c652cfe858b0dc67e17ca8a55168e7c2c4b5bd..b77f4e7048c9353090f9aac095d1acba9b6399cd 100644 (file)
@@ -145,10 +145,9 @@ static const DECLARE_TLV_DB_SCALE(hp_tlv, -4650, 150, 0);
 /* -16.5db min scale, 1.5db steps, no mute */
 static const DECLARE_TLV_DB_SCALE(adc_rec_tlv, -1650, 150, 0);
 static const unsigned int boost_tlv[] = {
-       TLV_DB_RANGE_HEAD(3),
-       0, 0, TLV_DB_SCALE_ITEM(0, 0, 0),
-       1, 1, TLV_DB_SCALE_ITEM(2000, 0, 0),
-       2, 2, TLV_DB_SCALE_ITEM(3000, 0, 0),
+       TLV_DB_RANGE_HEAD(2),
+       0, 1, TLV_DB_SCALE_ITEM(0, 2000, 0),
+       1, 3, TLV_DB_SCALE_ITEM(2000, 1000, 0),
 };
 /* 0db min scale, 6 db steps, no mute */
 static const DECLARE_TLV_DB_SCALE(dig_tlv, 0, 600, 0);
@@ -193,9 +192,9 @@ static const struct snd_kcontrol_new alc5632_snd_controls[] = {
        SOC_DOUBLE_TLV("Rec Capture Volume",
                        ALC5632_ADC_REC_GAIN, 8, 0, 31, 0, adc_rec_tlv),
        SOC_SINGLE_TLV("Mic 1 Boost Volume",
-                       ALC5632_MIC_CTRL, 10, 2, 0, boost_tlv),
+                       ALC5632_MIC_CTRL, 10, 3, 0, boost_tlv),
        SOC_SINGLE_TLV("Mic 2 Boost Volume",
-                       ALC5632_MIC_CTRL, 8, 2, 0, boost_tlv),
+                       ALC5632_MIC_CTRL, 8, 3, 0, boost_tlv),
        SOC_SINGLE_TLV("DMIC Boost Volume",
                        ALC5632_DIGI_BOOST_CTRL, 0, 7, 0, dig_tlv),
        SOC_SINGLE("DMIC En Capture Switch",