2
2
/*
3
3
* tas2552.c - ALSA SoC Texas Instruments TAS2552 Mono Audio Amplifier
4
4
*
5
- * Copyright (C) 2014 Texas Instruments Incorporated - https://www.ti.com
5
+ * Copyright (C) 2014 - 2024 Texas Instruments Incorporated -
6
+ * https://www.ti.com
6
7
*
7
8
* Author: Dan Murphy <[email protected] >
8
9
*/
@@ -119,12 +120,14 @@ static const struct snd_soc_dapm_widget tas2552_dapm_widgets[] =
119
120
& tas2552_input_mux_control ),
120
121
121
122
SND_SOC_DAPM_AIF_IN ("DAC IN" , "DAC Playback" , 0 , SND_SOC_NOPM , 0 , 0 ),
123
+ SND_SOC_DAPM_AIF_OUT ("ASI OUT" , "DAC Capture" , 0 , SND_SOC_NOPM , 0 , 0 ),
122
124
SND_SOC_DAPM_DAC ("DAC" , NULL , SND_SOC_NOPM , 0 , 0 ),
123
125
SND_SOC_DAPM_OUT_DRV ("ClassD" , TAS2552_CFG_2 , 7 , 0 , NULL , 0 ),
124
126
SND_SOC_DAPM_SUPPLY ("PLL" , TAS2552_CFG_2 , 3 , 0 , NULL , 0 ),
125
127
SND_SOC_DAPM_POST ("Post Event" , tas2552_post_event ),
126
128
127
- SND_SOC_DAPM_OUTPUT ("OUT" )
129
+ SND_SOC_DAPM_OUTPUT ("OUT" ),
130
+ SND_SOC_DAPM_INPUT ("DMIC" )
128
131
};
129
132
130
133
static const struct snd_soc_dapm_route tas2552_audio_map [] = {
@@ -134,6 +137,7 @@ static const struct snd_soc_dapm_route tas2552_audio_map[] = {
134
137
{"ClassD" , NULL , "Input selection" },
135
138
{"OUT" , NULL , "ClassD" },
136
139
{"ClassD" , NULL , "PLL" },
140
+ {"ASI OUT" , NULL , "DMIC" }
137
141
};
138
142
139
143
#ifdef CONFIG_PM
@@ -538,6 +542,13 @@ static struct snd_soc_dai_driver tas2552_dai[] = {
538
542
.rates = SNDRV_PCM_RATE_8000_192000 ,
539
543
.formats = TAS2552_FORMATS ,
540
544
},
545
+ .capture = {
546
+ .stream_name = "Capture" ,
547
+ .channels_min = 2 ,
548
+ .channels_max = 2 ,
549
+ .rates = SNDRV_PCM_RATE_8000_192000 ,
550
+ .formats = TAS2552_FORMATS ,
551
+ },
541
552
.ops = & tas2552_speaker_dai_ops ,
542
553
},
543
554
};
0 commit comments