1 # SPDX-License-Identifier: GPL-2.0-only 1 # SPDX-License-Identifier: GPL-2.0-only 2 config SND_SOC_TEGRA 2 config SND_SOC_TEGRA 3 tristate "SoC Audio for the Tegra Syst 3 tristate "SoC Audio for the Tegra System-on-Chip" 4 depends on (ARCH_TEGRA && TEGRA20_APB_ 4 depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST 5 depends on COMMON_CLK 5 depends on COMMON_CLK 6 depends on RESET_CONTROLLER 6 depends on RESET_CONTROLLER 7 select REGMAP_MMIO 7 select REGMAP_MMIO 8 select SND_SOC_GENERIC_DMAENGINE_PCM 8 select SND_SOC_GENERIC_DMAENGINE_PCM 9 help 9 help 10 Say Y or M here if you want support 10 Say Y or M here if you want support for SoC audio on Tegra. 11 11 12 if SND_SOC_TEGRA 12 if SND_SOC_TEGRA 13 13 14 config SND_SOC_TEGRA20_AC97 14 config SND_SOC_TEGRA20_AC97 15 tristate "Tegra20 AC97 interface" 15 tristate "Tegra20 AC97 interface" 16 select SND_SOC_AC97_BUS 16 select SND_SOC_AC97_BUS 17 select SND_SOC_TEGRA20_DAS 17 select SND_SOC_TEGRA20_DAS 18 help 18 help 19 Say Y or M if you want to add suppor 19 Say Y or M if you want to add support for codecs attached to the 20 Tegra20 AC97 interface. You will als 20 Tegra20 AC97 interface. You will also need to select the individual 21 machine drivers to support below. 21 machine drivers to support below. 22 22 23 config SND_SOC_TEGRA20_DAS 23 config SND_SOC_TEGRA20_DAS 24 tristate "Tegra20 DAS module" 24 tristate "Tegra20 DAS module" 25 help 25 help 26 Say Y or M if you want to add suppor 26 Say Y or M if you want to add support for the Tegra20 DAS module. 27 You will also need to select the ind 27 You will also need to select the individual machine drivers to 28 support below. 28 support below. 29 29 30 config SND_SOC_TEGRA20_I2S 30 config SND_SOC_TEGRA20_I2S 31 tristate "Tegra20 I2S interface" 31 tristate "Tegra20 I2S interface" 32 select SND_SOC_TEGRA20_DAS 32 select SND_SOC_TEGRA20_DAS 33 help 33 help 34 Say Y or M if you want to add suppor 34 Say Y or M if you want to add support for codecs attached to the 35 Tegra20 I2S interface. You will also 35 Tegra20 I2S interface. You will also need to select the individual 36 machine drivers to support below. 36 machine drivers to support below. 37 37 38 config SND_SOC_TEGRA20_SPDIF 38 config SND_SOC_TEGRA20_SPDIF 39 tristate "Tegra20 SPDIF interface" 39 tristate "Tegra20 SPDIF interface" 40 help 40 help 41 Say Y or M if you want to add suppor 41 Say Y or M if you want to add support for the Tegra20 SPDIF interface. 42 You will also need to select the ind 42 You will also need to select the individual machine drivers to support 43 below. 43 below. 44 44 45 config SND_SOC_TEGRA30_AHUB 45 config SND_SOC_TEGRA30_AHUB 46 tristate "Tegra30 AHUB module" 46 tristate "Tegra30 AHUB module" 47 help 47 help 48 Say Y or M if you want to add suppor 48 Say Y or M if you want to add support for the Tegra30 AHUB module. 49 You will also need to select the ind 49 You will also need to select the individual machine drivers to 50 support below. 50 support below. 51 51 52 config SND_SOC_TEGRA30_I2S 52 config SND_SOC_TEGRA30_I2S 53 tristate "Tegra30 I2S interface" 53 tristate "Tegra30 I2S interface" 54 select SND_SOC_TEGRA30_AHUB 54 select SND_SOC_TEGRA30_AHUB 55 help 55 help 56 Say Y or M if you want to add suppor 56 Say Y or M if you want to add support for codecs attached to the 57 Tegra30 I2S interface. You will also 57 Tegra30 I2S interface. You will also need to select the individual 58 machine drivers to support below. 58 machine drivers to support below. 59 59 60 config SND_SOC_TEGRA210_AHUB 60 config SND_SOC_TEGRA210_AHUB 61 tristate "Tegra210 AHUB module" 61 tristate "Tegra210 AHUB module" 62 help 62 help 63 Config to enable Audio Hub (AHUB) mo 63 Config to enable Audio Hub (AHUB) module, which comprises of a 64 switch called Audio Crossbar (AXBAR) 64 switch called Audio Crossbar (AXBAR) used to configure or modify 65 the audio routing path between vario 65 the audio routing path between various HW accelerators present in 66 AHUB. 66 AHUB. 67 Say Y or M if you want to add suppor 67 Say Y or M if you want to add support for Tegra210 AHUB module. 68 68 69 config SND_SOC_TEGRA210_DMIC 69 config SND_SOC_TEGRA210_DMIC 70 tristate "Tegra210 DMIC module" 70 tristate "Tegra210 DMIC module" 71 help 71 help 72 Config to enable the Digital MIC (DM 72 Config to enable the Digital MIC (DMIC) controller which is used 73 to interface with Pulse Density Modu 73 to interface with Pulse Density Modulation (PDM) input devices. 74 The DMIC controller implements a con 74 The DMIC controller implements a converter to convert PDM signals 75 to Pulse Code Modulation (PCM) signa 75 to Pulse Code Modulation (PCM) signals. This can be viewed as a 76 PDM receiver. 76 PDM receiver. 77 Say Y or M if you want to add suppor 77 Say Y or M if you want to add support for Tegra210 DMIC module. 78 78 79 config SND_SOC_TEGRA210_I2S 79 config SND_SOC_TEGRA210_I2S 80 tristate "Tegra210 I2S module" 80 tristate "Tegra210 I2S module" 81 select SND_SIMPLE_CARD_UTILS << 82 help 81 help 83 Config to enable the Inter-IC Sound 82 Config to enable the Inter-IC Sound (I2S) Controller which 84 implements full-duplex and bidirecti 83 implements full-duplex and bidirectional and single direction 85 point-to-point serial interfaces. It 84 point-to-point serial interfaces. It can interface with I2S 86 compatible devices. 85 compatible devices. 87 Say Y or M if you want to add suppor 86 Say Y or M if you want to add support for Tegra210 I2S module. 88 87 89 config SND_SOC_TEGRA210_OPE << 90 tristate "Tegra210 OPE module" << 91 help << 92 Config to enable the Output Processi << 93 Parametric Equalizer (PEQ) and Multi << 94 (MBDRC) sub blocks for data processi << 95 channels. << 96 Say Y or M if you want to add suppor << 97 << 98 config SND_SOC_TEGRA186_ASRC << 99 tristate "Tegra186 ASRC module" << 100 help << 101 Config to enable the Asynchronous Sa << 102 which converts the sampling frequenc << 103 one frequency to another. It can han << 104 sample rate ratios (freq_in/freq_out << 105 ASRC has two modes of operation. One << 106 in SW and the other where it gets in << 107 module. << 108 Say Y or M if you want to add suppor << 109 << 110 config SND_SOC_TEGRA186_DSPK 88 config SND_SOC_TEGRA186_DSPK 111 tristate "Tegra186 DSPK module" 89 tristate "Tegra186 DSPK module" 112 help 90 help 113 Config to enable the Digital Speaker 91 Config to enable the Digital Speaker Controller (DSPK) which 114 converts the multi-bit Pulse Code Mo 92 converts the multi-bit Pulse Code Modulation (PCM) audio input to 115 oversampled 1-bit Pulse Density Modu 93 oversampled 1-bit Pulse Density Modulation (PDM) output. From the 116 signal flow perspective DSPK can be 94 signal flow perspective DSPK can be viewed as a PDM transmitter 117 that up-samples the input to the des 95 that up-samples the input to the desired sampling rate by 118 interpolation and then converts the 96 interpolation and then converts the oversampled PCM input to 119 the desired 1-bit output via Delta S 97 the desired 1-bit output via Delta Sigma Modulation (DSM). 120 Say Y or M if you want to add suppor 98 Say Y or M if you want to add support for Tegra186 DSPK module. 121 99 122 config SND_SOC_TEGRA210_ADMAIF 100 config SND_SOC_TEGRA210_ADMAIF 123 tristate "Tegra210 ADMAIF module" 101 tristate "Tegra210 ADMAIF module" 124 help 102 help 125 Config to enable ADMAIF which is the 103 Config to enable ADMAIF which is the interface between ADMA and 126 Audio Hub (AHUB). Each ADMA channel 104 Audio Hub (AHUB). Each ADMA channel that sends/receives data to/ 127 from AHUB must interface through an 105 from AHUB must interface through an ADMAIF channel. ADMA channel 128 sending data to AHUB pairs with an A 106 sending data to AHUB pairs with an ADMAIF Tx channel, where as 129 ADMA channel receiving data from AHU 107 ADMA channel receiving data from AHUB pairs with an ADMAIF Rx 130 channel. Buffer size is configurable 108 channel. Buffer size is configurable for each ADMAIIF channel. 131 Say Y or M if you want to add suppor 109 Say Y or M if you want to add support for Tegra210 ADMAIF module. 132 110 133 config SND_SOC_TEGRA210_MVC << 134 tristate "Tegra210 MVC module" << 135 help << 136 Config to enable the digital Master << 137 provides gain or attenuation to a di << 138 used in input or output signal path. << 139 per-stream volume control or for mas << 140 Say Y or M if you want to add suppor << 141 << 142 config SND_SOC_TEGRA210_SFC << 143 tristate "Tegra210 SFC module" << 144 help << 145 Config to enable the Sampling Freque << 146 converts the sampling frequency of i << 147 frequency. It supports sampling freq << 148 up to 2 channels (stereo). << 149 Say Y or M if you want to add suppor << 150 << 151 config SND_SOC_TEGRA210_AMX << 152 tristate "Tegra210 AMX module" << 153 help << 154 Config to enable the Audio Multiplex << 155 four input streams (each of up to 16 << 156 output stream (of up to 16 channels) << 157 output frame by any combination of b << 158 Say Y or M if you want to add suppor << 159 << 160 config SND_SOC_TEGRA210_ADX << 161 tristate "Tegra210 ADX module" << 162 help << 163 Config to enable the Audio Demultipl << 164 input stream (up to 16 channels) and << 165 output streams (each of up to 16 cha << 166 form output frames by any combinatio << 167 frame. Its design is identical to th << 168 except that the data flow direction << 169 Say Y or M if you want to add suppor << 170 << 171 config SND_SOC_TEGRA210_MIXER << 172 tristate "Tegra210 Mixer module" << 173 help << 174 Config to enable the Mixer module wh << 175 audio streams. It supports mixing of << 176 where each stream can contain maximu << 177 5 output each of which can be a mix << 178 input streams. << 179 Say Y or M if you want to add suppor << 180 << 181 config SND_SOC_TEGRA_AUDIO_GRAPH_CARD 111 config SND_SOC_TEGRA_AUDIO_GRAPH_CARD 182 tristate "Audio Graph Card based Tegra 112 tristate "Audio Graph Card based Tegra driver" 183 depends on SND_AUDIO_GRAPH_CARD 113 depends on SND_AUDIO_GRAPH_CARD 184 help 114 help 185 Config to enable Tegra audio machine 115 Config to enable Tegra audio machine driver based on generic 186 audio graph driver. It is a thin dri 116 audio graph driver. It is a thin driver written to customize 187 few things for Tegra audio. Most of 117 few things for Tegra audio. Most of the code is re-used from 188 audio graph driver and the same DT b 118 audio graph driver and the same DT bindings are used. 189 119 190 config SND_SOC_TEGRA_MACHINE_DRV 120 config SND_SOC_TEGRA_MACHINE_DRV 191 tristate 121 tristate 192 122 193 config SND_SOC_TEGRA_RT5631 << 194 tristate "SoC Audio support for Tegra << 195 depends on SND_SOC_TEGRA && I2C && GPI << 196 select SND_SOC_TEGRA_MACHINE_DRV << 197 select SND_SOC_RT5631 << 198 help << 199 Say Y or M here if you want to add s << 200 boards using the RT5631 codec, such << 201 << 202 config SND_SOC_TEGRA_RT5640 123 config SND_SOC_TEGRA_RT5640 203 tristate "SoC Audio support for Tegra 124 tristate "SoC Audio support for Tegra boards using an RT5640 codec" 204 depends on I2C && GPIOLIB 125 depends on I2C && GPIOLIB 205 select SND_SOC_TEGRA_MACHINE_DRV 126 select SND_SOC_TEGRA_MACHINE_DRV 206 select SND_SOC_RT5640 127 select SND_SOC_RT5640 207 help 128 help 208 Say Y or M here if you want to add s 129 Say Y or M here if you want to add support for SoC audio on Tegra 209 boards using the RT5640 codec, such 130 boards using the RT5640 codec, such as Dalmore. 210 131 211 config SND_SOC_TEGRA_WM8753 132 config SND_SOC_TEGRA_WM8753 212 tristate "SoC Audio support for Tegra 133 tristate "SoC Audio support for Tegra boards using a WM8753 codec" 213 depends on I2C && GPIOLIB 134 depends on I2C && GPIOLIB 214 select SND_SOC_TEGRA_MACHINE_DRV 135 select SND_SOC_TEGRA_MACHINE_DRV 215 select SND_SOC_WM8753 136 select SND_SOC_WM8753 216 help 137 help 217 Say Y or M here if you want to add s 138 Say Y or M here if you want to add support for SoC audio on Tegra 218 boards using the WM8753 codec, such 139 boards using the WM8753 codec, such as Whistler. 219 140 220 config SND_SOC_TEGRA_WM8903 141 config SND_SOC_TEGRA_WM8903 221 tristate "SoC Audio support for Tegra 142 tristate "SoC Audio support for Tegra boards using a WM8903 codec" 222 depends on I2C && GPIOLIB 143 depends on I2C && GPIOLIB 223 select SND_SOC_TEGRA_MACHINE_DRV 144 select SND_SOC_TEGRA_MACHINE_DRV 224 select SND_SOC_WM8903 145 select SND_SOC_WM8903 225 help 146 help 226 Say Y or M here if you want to add s 147 Say Y or M here if you want to add support for SoC audio on Tegra 227 boards using the WM8093 codec. Curre 148 boards using the WM8093 codec. Currently, the supported boards are 228 Harmony, Ventana, Seaboard, Kaen, an 149 Harmony, Ventana, Seaboard, Kaen, and Aebl. 229 150 230 config SND_SOC_TEGRA_WM9712 151 config SND_SOC_TEGRA_WM9712 231 tristate "SoC Audio support for Tegra 152 tristate "SoC Audio support for Tegra boards using a WM9712 codec" 232 depends on GPIOLIB 153 depends on GPIOLIB 233 select SND_SOC_TEGRA_MACHINE_DRV 154 select SND_SOC_TEGRA_MACHINE_DRV 234 select SND_SOC_TEGRA20_AC97 155 select SND_SOC_TEGRA20_AC97 235 select SND_SOC_WM9712 156 select SND_SOC_WM9712 236 help 157 help 237 Say Y or M here if you want to add s 158 Say Y or M here if you want to add support for SoC audio on Tegra 238 boards using the WM9712 (or compatib 159 boards using the WM9712 (or compatible) codec. 239 160 240 config SND_SOC_TEGRA_TRIMSLICE 161 config SND_SOC_TEGRA_TRIMSLICE 241 tristate "SoC Audio support for TrimSl 162 tristate "SoC Audio support for TrimSlice board" 242 depends on I2C 163 depends on I2C 243 select SND_SOC_TEGRA_MACHINE_DRV 164 select SND_SOC_TEGRA_MACHINE_DRV 244 select SND_SOC_TLV320AIC23_I2C 165 select SND_SOC_TLV320AIC23_I2C 245 help 166 help 246 Say Y or M here if you want to add s 167 Say Y or M here if you want to add support for SoC audio on the 247 TrimSlice platform. 168 TrimSlice platform. 248 169 249 config SND_SOC_TEGRA_ALC5632 170 config SND_SOC_TEGRA_ALC5632 250 tristate "SoC Audio support for Tegra 171 tristate "SoC Audio support for Tegra boards using an ALC5632 codec" 251 depends on I2C && GPIOLIB 172 depends on I2C && GPIOLIB 252 select SND_SOC_TEGRA_MACHINE_DRV 173 select SND_SOC_TEGRA_MACHINE_DRV 253 select SND_SOC_ALC5632 174 select SND_SOC_ALC5632 254 help 175 help 255 Say Y or M here if you want to add s 176 Say Y or M here if you want to add support for SoC audio on the 256 Toshiba AC100 netbook. 177 Toshiba AC100 netbook. 257 178 258 config SND_SOC_TEGRA_MAX98090 179 config SND_SOC_TEGRA_MAX98090 259 tristate "SoC Audio support for Tegra 180 tristate "SoC Audio support for Tegra boards using a MAX98090 codec" 260 depends on I2C && GPIOLIB 181 depends on I2C && GPIOLIB 261 select SND_SOC_TEGRA_MACHINE_DRV 182 select SND_SOC_TEGRA_MACHINE_DRV 262 select SND_SOC_MAX98090 183 select SND_SOC_MAX98090 263 help 184 help 264 Say Y or M here if you want to add s 185 Say Y or M here if you want to add support for SoC audio on Tegra 265 boards using the MAX98090 codec, suc 186 boards using the MAX98090 codec, such as Venice2. 266 << 267 config SND_SOC_TEGRA_MAX98088 << 268 tristate "SoC Audio support for Tegra << 269 depends on I2C && GPIOLIB << 270 select SND_SOC_TEGRA_MACHINE_DRV << 271 select SND_SOC_MAX98088 << 272 help << 273 Say Y or M here if you want to add s << 274 boards using the MAX98088 codec, suc << 275 187 276 config SND_SOC_TEGRA_RT5677 188 config SND_SOC_TEGRA_RT5677 277 tristate "SoC Audio support for Tegra 189 tristate "SoC Audio support for Tegra boards using a RT5677 codec" 278 depends on I2C && GPIOLIB 190 depends on I2C && GPIOLIB 279 select SND_SOC_TEGRA_MACHINE_DRV 191 select SND_SOC_TEGRA_MACHINE_DRV 280 select SND_SOC_RT5677 192 select SND_SOC_RT5677 281 help 193 help 282 Say Y or M here if you want to add s 194 Say Y or M here if you want to add support for SoC audio on Tegra 283 boards using the RT5677 codec, such 195 boards using the RT5677 codec, such as Ryu. 284 196 285 config SND_SOC_TEGRA_SGTL5000 197 config SND_SOC_TEGRA_SGTL5000 286 tristate "SoC Audio support for Tegra 198 tristate "SoC Audio support for Tegra boards using a SGTL5000 codec" 287 depends on I2C && GPIOLIB 199 depends on I2C && GPIOLIB 288 select SND_SOC_TEGRA_MACHINE_DRV 200 select SND_SOC_TEGRA_MACHINE_DRV 289 select SND_SOC_SGTL5000 201 select SND_SOC_SGTL5000 290 help 202 help 291 Say Y or M here if you want to add s 203 Say Y or M here if you want to add support for SoC audio on Tegra 292 boards using the SGTL5000 codec, suc 204 boards using the SGTL5000 codec, such as Apalis T30, Apalis TK1 or 293 Colibri T30. 205 Colibri T30. 294 206 295 endif 207 endif
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.