diff options
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/tas2552.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/soc/codecs/tas2552.c b/sound/soc/codecs/tas2552.c index 0ca55aaeaaf2..067ea6e5e521 100644 --- a/sound/soc/codecs/tas2552.c +++ b/sound/soc/codecs/tas2552.c | |||
@@ -553,9 +553,20 @@ static struct snd_soc_dai_driver tas2552_dai[] = { | |||
553 | */ | 553 | */ |
554 | static DECLARE_TLV_DB_SCALE(dac_tlv, -7, 100, 0); | 554 | static DECLARE_TLV_DB_SCALE(dac_tlv, -7, 100, 0); |
555 | 555 | ||
556 | static const char * const tas2552_din_source_select[] = { | ||
557 | "Muted", | ||
558 | "Left", | ||
559 | "Right", | ||
560 | "Left + Right average", | ||
561 | }; | ||
562 | static SOC_ENUM_SINGLE_DECL(tas2552_din_source_enum, | ||
563 | TAS2552_CFG_3, 3, | ||
564 | tas2552_din_source_select); | ||
565 | |||
556 | static const struct snd_kcontrol_new tas2552_snd_controls[] = { | 566 | static const struct snd_kcontrol_new tas2552_snd_controls[] = { |
557 | SOC_SINGLE_TLV("Speaker Driver Playback Volume", | 567 | SOC_SINGLE_TLV("Speaker Driver Playback Volume", |
558 | TAS2552_PGA_GAIN, 0, 0x1f, 0, dac_tlv), | 568 | TAS2552_PGA_GAIN, 0, 0x1f, 0, dac_tlv), |
569 | SOC_ENUM("DIN source", tas2552_din_source_enum), | ||
559 | }; | 570 | }; |
560 | 571 | ||
561 | static int tas2552_codec_probe(struct snd_soc_codec *codec) | 572 | static int tas2552_codec_probe(struct snd_soc_codec *codec) |