@@ -718,6 +718,69 @@ static const struct regmap_config tas5721_regmap_config = {
718
718
.volatile_table = & tas571x_volatile_regs ,
719
719
};
720
720
721
+ static const struct snd_kcontrol_new tas5733_controls [] = {
722
+ /* MVOL LSB is ignored - see comments in tas571x_i2c_probe() */
723
+ SOC_SINGLE_TLV ("Master Volume" ,
724
+ TAS571X_MVOL_REG , 1 , 0x1ff , 1 ,
725
+ tas5717_volume_tlv ),
726
+ SOC_DOUBLE_R_TLV ("Speaker Volume" ,
727
+ TAS571X_CH1_VOL_REG , TAS571X_CH2_VOL_REG ,
728
+ 1 , 0x1ff , 1 , tas5717_volume_tlv ),
729
+ SOC_DOUBLE ("Speaker Switch" ,
730
+ TAS571X_SOFT_MUTE_REG ,
731
+ TAS571X_SOFT_MUTE_CH1_SHIFT , TAS571X_SOFT_MUTE_CH2_SHIFT ,
732
+ 1 , 1 ),
733
+
734
+ SOC_DOUBLE_R_RANGE ("CH1 Mixer Volume" ,
735
+ TAS5717_CH1_LEFT_CH_MIX_REG ,
736
+ TAS5717_CH1_RIGHT_CH_MIX_REG ,
737
+ 16 , 0 , 0x80 , 0 ),
738
+
739
+ SOC_DOUBLE_R_RANGE ("CH2 Mixer Volume" ,
740
+ TAS5717_CH2_LEFT_CH_MIX_REG ,
741
+ TAS5717_CH2_RIGHT_CH_MIX_REG ,
742
+ 16 , 0 , 0x80 , 0 ),
743
+
744
+ /*
745
+ * The biquads are named according to the register names.
746
+ * Please note that TI's TAS57xx Graphical Development Environment
747
+ * tool names them different.
748
+ */
749
+ BIQUAD_COEFS ("CH1 - Biquad 0" , TAS5733_CH1_BQ0_REG ),
750
+ BIQUAD_COEFS ("CH1 - Biquad 1" , TAS5733_CH1_BQ1_REG ),
751
+ BIQUAD_COEFS ("CH1 - Biquad 2" , TAS5733_CH1_BQ2_REG ),
752
+ BIQUAD_COEFS ("CH1 - Biquad 3" , TAS5733_CH1_BQ3_REG ),
753
+ BIQUAD_COEFS ("CH1 - Biquad 4" , TAS5733_CH1_BQ4_REG ),
754
+ BIQUAD_COEFS ("CH1 - Biquad 5" , TAS5733_CH1_BQ5_REG ),
755
+ BIQUAD_COEFS ("CH1 - Biquad 6" , TAS5733_CH1_BQ6_REG ),
756
+ BIQUAD_COEFS ("CH1 - Biquad 7" , TAS5733_CH1_BQ7_REG ),
757
+ BIQUAD_COEFS ("CH1 - Biquad 8" , TAS5733_CH1_BQ8_REG ),
758
+ BIQUAD_COEFS ("CH1 - Biquad 9" , TAS5733_CH1_BQ9_REG ),
759
+ BIQUAD_COEFS ("CH1 - Biquad 10" , TAS5733_CH1_BQ10_REG ),
760
+
761
+ BIQUAD_COEFS ("CH2 - Biquad 0" , TAS5733_CH2_BQ0_REG ),
762
+ BIQUAD_COEFS ("CH2 - Biquad 1" , TAS5733_CH2_BQ1_REG ),
763
+ BIQUAD_COEFS ("CH2 - Biquad 2" , TAS5733_CH2_BQ2_REG ),
764
+ BIQUAD_COEFS ("CH2 - Biquad 3" , TAS5733_CH2_BQ3_REG ),
765
+ BIQUAD_COEFS ("CH2 - Biquad 4" , TAS5733_CH2_BQ4_REG ),
766
+ BIQUAD_COEFS ("CH2 - Biquad 5" , TAS5733_CH2_BQ5_REG ),
767
+ BIQUAD_COEFS ("CH2 - Biquad 6" , TAS5733_CH2_BQ6_REG ),
768
+ BIQUAD_COEFS ("CH2 - Biquad 7" , TAS5733_CH2_BQ7_REG ),
769
+ BIQUAD_COEFS ("CH2 - Biquad 8" , TAS5733_CH2_BQ8_REG ),
770
+ BIQUAD_COEFS ("CH2 - Biquad 9" , TAS5733_CH2_BQ9_REG ),
771
+ BIQUAD_COEFS ("CH2 - Biquad 10" , TAS5733_CH2_BQ10_REG ),
772
+
773
+ BIQUAD_COEFS ("CH1 - Cross Biquad 0" , TAS5733_CH1_CBQ0_REG ),
774
+ BIQUAD_COEFS ("CH1 - Cross Biquad 1" , TAS5733_CH1_CBQ1_REG ),
775
+ BIQUAD_COEFS ("CH1 - Cross Biquad 2" , TAS5733_CH1_CBQ2_REG ),
776
+ BIQUAD_COEFS ("CH1 - Cross Biquad 3" , TAS5733_CH1_CBQ3_REG ),
777
+
778
+ BIQUAD_COEFS ("CH2 - Cross Biquad 0" , TAS5733_CH2_CBQ0_REG ),
779
+ BIQUAD_COEFS ("CH2 - Cross Biquad 1" , TAS5733_CH2_CBQ1_REG ),
780
+ BIQUAD_COEFS ("CH2 - Cross Biquad 2" , TAS5733_CH2_CBQ2_REG ),
781
+ BIQUAD_COEFS ("CH2 - Cross Biquad 3" , TAS5733_CH2_CBQ3_REG ),
782
+ };
783
+
721
784
static const char * const tas5733_supply_names [] = {
722
785
"AVDD" ,
723
786
"DVDD" ,
@@ -770,7 +833,7 @@ static const struct regmap_config tas5733_regmap_config = {
770
833
static const struct tas571x_chip tas5733_chip = {
771
834
.supply_names = tas5733_supply_names ,
772
835
.num_supply_names = ARRAY_SIZE (tas5733_supply_names ),
773
- .controls = tas5717_controls ,
836
+ .controls = tas5733_controls ,
774
837
.num_controls = ARRAY_SIZE (tas5717_controls ),
775
838
.regmap_config = & tas5733_regmap_config ,
776
839
.vol_reg_size = 2 ,
0 commit comments