@ -206,27 +206,37 @@ static int wm8960_put_deemph(struct snd_kcontrol *kcontrol,
}
static const DECLARE_TLV_DB_SCALE ( adc_tlv , - 9750 , 50 , 1 ) ;
static const DECLARE_TLV_DB_SCALE ( inpga_tlv , - 1725 , 75 , 0 ) ;
static const DECLARE_TLV_DB_SCALE ( dac_tlv , - 12750 , 50 , 1 ) ;
static const DECLARE_TLV_DB_SCALE ( bypass_tlv , - 2100 , 300 , 0 ) ;
static const DECLARE_TLV_DB_SCALE ( out_tlv , - 12100 , 100 , 1 ) ;
static const DECLARE_TLV_DB_SCALE ( boost_tlv , - 1500 , 300 , 1 ) ;
static const DECLARE_TLV_DB_SCALE ( lineinboost_tlv , - 1500 , 300 , 1 ) ;
static const unsigned int micboost_tlv [ ] = {
TLV_DB_RANGE_HEAD ( 2 ) ,
0 , 1 , TLV_DB_SCALE_ITEM ( 0 , 1300 , 0 ) ,
2 , 3 , TLV_DB_SCALE_ITEM ( 2000 , 900 , 0 ) ,
} ;
static const struct snd_kcontrol_new wm8960_snd_controls [ ] = {
SOC_DOUBLE_R_TLV ( " Capture Volume " , WM8960_LINVOL , WM8960_RINVOL ,
0 , 63 , 0 , adc_tlv ) ,
0 , 63 , 0 , inpg a_tlv) ,
SOC_DOUBLE_R ( " Capture Volume ZC Switch " , WM8960_LINVOL , WM8960_RINVOL ,
6 , 1 , 0 ) ,
SOC_DOUBLE_R ( " Capture Switch " , WM8960_LINVOL , WM8960_RINVOL ,
7 , 1 , 0 ) ,
SOC_SINGLE_TLV ( " Right Input Boost Mixer RINPUT3 Volume " ,
WM8960_INBMIX1 , 4 , 7 , 0 , boost_tlv ) ,
WM8960_INBMIX1 , 4 , 7 , 0 , linein boost_tlv) ,
SOC_SINGLE_TLV ( " Right Input Boost Mixer RINPUT2 Volume " ,
WM8960_INBMIX1 , 1 , 7 , 0 , boost_tlv ) ,
WM8960_INBMIX1 , 1 , 7 , 0 , linein boost_tlv) ,
SOC_SINGLE_TLV ( " Left Input Boost Mixer LINPUT3 Volume " ,
WM8960_INBMIX2 , 4 , 7 , 0 , boost_tlv ) ,
WM8960_INBMIX2 , 4 , 7 , 0 , linein boost_tlv) ,
SOC_SINGLE_TLV ( " Left Input Boost Mixer LINPUT2 Volume " ,
WM8960_INBMIX2 , 1 , 7 , 0 , boost_tlv ) ,
WM8960_INBMIX2 , 1 , 7 , 0 , lineinboost_tlv ) ,
SOC_SINGLE_TLV ( " Right Input Boost Mixer RINPUT1 Volume " ,
WM8960_RINPATH , 4 , 4 , 0 , micboost_tlv ) ,
SOC_SINGLE_TLV ( " Left Input Boost Mixer LINPUT1 Volume " ,
WM8960_LINPATH , 4 , 4 , 0 , micboost_tlv ) ,
SOC_DOUBLE_R_TLV ( " Playback Volume " , WM8960_LDAC , WM8960_RDAC ,
0 , 255 , 0 , dac_tlv ) ,