ASoC: ad193x: Provide dB ranges for the volume controls
authorLars-Peter Clausen <lars@metafoo.de>
Mon, 28 Nov 2011 16:28:07 +0000 (17:28 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 28 Nov 2011 18:57:41 +0000 (18:57 +0000)
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/ad193x.c

index 1dfda5ca2789a021d1547f2ff325e2ee35ba0bb8..7da7e29753b6fe02e9dead6a2ee726e30736a276 100644 (file)
@@ -35,16 +35,18 @@ static const char *ad193x_deemp[] = {"None", "48kHz", "44.1kHz", "32kHz"};
 static const struct soc_enum ad193x_deemp_enum =
        SOC_ENUM_SINGLE(AD193X_DAC_CTRL2, 1, 4, ad193x_deemp);
 
+static const DECLARE_TLV_DB_MINMAX(adau193x_tlv, -9563, 0);
+
 static const struct snd_kcontrol_new ad193x_snd_controls[] = {
        /* DAC volume control */
-       SOC_DOUBLE_R("DAC1 Volume", AD193X_DAC_L1_VOL,
-                       AD193X_DAC_R1_VOL, 0, 0xFF, 1),
-       SOC_DOUBLE_R("DAC2 Volume", AD193X_DAC_L2_VOL,
-                       AD193X_DAC_R2_VOL, 0, 0xFF, 1),
-       SOC_DOUBLE_R("DAC3 Volume", AD193X_DAC_L3_VOL,
-                       AD193X_DAC_R3_VOL, 0, 0xFF, 1),
-       SOC_DOUBLE_R("DAC4 Volume", AD193X_DAC_L4_VOL,
-                       AD193X_DAC_R4_VOL, 0, 0xFF, 1),
+       SOC_DOUBLE_R_TLV("DAC1 Volume", AD193X_DAC_L1_VOL,
+                       AD193X_DAC_R1_VOL, 0, 0xFF, 1, adau193x_tlv),
+       SOC_DOUBLE_R_TLV("DAC2 Volume", AD193X_DAC_L2_VOL,
+                       AD193X_DAC_R2_VOL, 0, 0xFF, 1, adau193x_tlv),
+       SOC_DOUBLE_R_TLV("DAC3 Volume", AD193X_DAC_L3_VOL,
+                       AD193X_DAC_R3_VOL, 0, 0xFF, 1, adau193x_tlv),
+       SOC_DOUBLE_R_TLV("DAC4 Volume", AD193X_DAC_L4_VOL,
+                       AD193X_DAC_R4_VOL, 0, 0xFF, 1, adau193x_tlv),
 
        /* ADC switch control */
        SOC_DOUBLE("ADC1 Switch", AD193X_ADC_CTRL0, AD193X_ADCL1_MUTE,