1# SPDX-License-Identifier: GPL-2.0-only 2menu "SoC Audio for Freescale CPUs" 3 4comment "Common SoC Audio options for Freescale CPUs:" 5 6config SND_SOC_FSL_ASRC 7 tristate "Asynchronous Sample Rate Converter (ASRC) module support" 8 depends on HAS_DMA 9 select REGMAP_MMIO 10 select SND_SOC_GENERIC_DMAENGINE_PCM 11 help 12 Say Y if you want to add Asynchronous Sample Rate Converter (ASRC) 13 support for the Freescale CPUs. 14 This option is only useful for out-of-tree drivers since 15 in-tree drivers select it automatically. 16 17config SND_SOC_FSL_SAI 18 tristate "Synchronous Audio Interface (SAI) module support" 19 select REGMAP_MMIO 20 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 21 select SND_SOC_GENERIC_DMAENGINE_PCM 22 help 23 Say Y if you want to add Synchronous Audio Interface (SAI) 24 support for the Freescale CPUs. 25 This option is only useful for out-of-tree drivers since 26 in-tree drivers select it automatically. 27 28config SND_SOC_FSL_MQS 29 tristate "Medium Quality Sound (MQS) module support" 30 depends on SND_SOC_FSL_SAI 31 select REGMAP_MMIO 32 help 33 Say Y if you want to add Medium Quality Sound (MQS) 34 support for the Freescale CPUs. 35 This option is only useful for out-of-tree drivers since 36 in-tree drivers select it automatically. 37 38config SND_SOC_FSL_AUDMIX 39 tristate "Audio Mixer (AUDMIX) module support" 40 select REGMAP_MMIO 41 help 42 Say Y if you want to add Audio Mixer (AUDMIX) 43 support for the NXP iMX CPUs. 44 45config SND_SOC_FSL_SSI 46 tristate "Synchronous Serial Interface module (SSI) support" 47 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 48 select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC) 49 select REGMAP_MMIO 50 help 51 Say Y if you want to add Synchronous Serial Interface (SSI) 52 support for the Freescale CPUs. 53 This option is only useful for out-of-tree drivers since 54 in-tree drivers select it automatically. 55 56config SND_SOC_FSL_SPDIF 57 tristate "Sony/Philips Digital Interface (S/PDIF) module support" 58 select REGMAP_MMIO 59 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 60 select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC) 61 select BITREVERSE 62 help 63 Say Y if you want to add Sony/Philips Digital Interface (SPDIF) 64 support for the Freescale CPUs. 65 This option is only useful for out-of-tree drivers since 66 in-tree drivers select it automatically. 67 68config SND_SOC_FSL_ESAI 69 tristate "Enhanced Serial Audio Interface (ESAI) module support" 70 select REGMAP_MMIO 71 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 72 help 73 Say Y if you want to add Enhanced Synchronous Audio Interface 74 (ESAI) support for the Freescale CPUs. 75 This option is only useful for out-of-tree drivers since 76 in-tree drivers select it automatically. 77 78config SND_SOC_FSL_MICFIL 79 tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support" 80 select REGMAP_MMIO 81 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 82 select SND_SOC_GENERIC_DMAENGINE_PCM 83 help 84 Say Y if you want to add Pulse Density Modulation microphone 85 interface (MICFIL) support for NXP. 86 87config SND_SOC_FSL_EASRC 88 tristate "Enhanced Asynchronous Sample Rate Converter (EASRC) module support" 89 depends on SND_SOC_FSL_ASRC 90 select REGMAP_MMIO 91 select SND_SOC_GENERIC_DMAENGINE_PCM 92 help 93 Say Y if you want to add Enhanced ASRC support for NXP. The ASRC is 94 a digital module that converts audio from a source sample rate to a 95 destination sample rate. It is a new design module compare with the 96 old ASRC. 97 98config SND_SOC_FSL_UTILS 99 tristate 100 101config SND_SOC_IMX_PCM_DMA 102 tristate 103 select SND_SOC_GENERIC_DMAENGINE_PCM 104 105config SND_SOC_IMX_AUDMUX 106 tristate "Digital Audio Mux module support" 107 help 108 Say Y if you want to add Digital Audio Mux (AUDMUX) support 109 for the ARM i.MX CPUs. 110 This option is only useful for out-of-tree drivers since 111 in-tree drivers select it automatically. 112 113config SND_POWERPC_SOC 114 tristate "SoC Audio for Freescale PowerPC CPUs" 115 depends on FSL_SOC || PPC_MPC52xx 116 help 117 Say Y or M if you want to add support for codecs attached to 118 the PowerPC CPUs. 119 120config SND_IMX_SOC 121 tristate "SoC Audio for Freescale i.MX CPUs" 122 depends on ARCH_MXC || COMPILE_TEST 123 help 124 Say Y or M if you want to add support for codecs attached to 125 the i.MX CPUs. 126 127if SND_POWERPC_SOC 128 129config SND_MPC52xx_DMA 130 tristate 131 132config SND_SOC_POWERPC_DMA 133 tristate 134 135comment "SoC Audio support for Freescale PPC boards:" 136 137config SND_SOC_MPC8610_HPCD 138 tristate "ALSA SoC support for the Freescale MPC8610 HPCD board" 139 # I2C is necessary for the CS4270 driver 140 depends on MPC8610_HPCD && I2C 141 select SND_SOC_FSL_SSI 142 select SND_SOC_FSL_UTILS 143 select SND_SOC_POWERPC_DMA 144 select SND_SOC_CS4270 145 select SND_SOC_CS4270_VD33_ERRATA 146 default y if MPC8610_HPCD 147 help 148 Say Y if you want to enable audio on the Freescale MPC8610 HPCD. 149 150config SND_SOC_P1022_DS 151 tristate "ALSA SoC support for the Freescale P1022 DS board" 152 # I2C is necessary for the WM8776 driver 153 depends on P1022_DS && I2C 154 select SND_SOC_FSL_SSI 155 select SND_SOC_FSL_UTILS 156 select SND_SOC_POWERPC_DMA 157 select SND_SOC_WM8776 158 default y if P1022_DS 159 help 160 Say Y if you want to enable audio on the Freescale P1022 DS board. 161 This will also include the Wolfson Microelectronics WM8776 codec 162 driver. 163 164config SND_SOC_P1022_RDK 165 tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board" 166 # I2C is necessary for the WM8960 driver 167 depends on P1022_RDK && I2C 168 select SND_SOC_FSL_SSI 169 select SND_SOC_FSL_UTILS 170 select SND_SOC_POWERPC_DMA 171 select SND_SOC_WM8960 172 default y if P1022_RDK 173 help 174 Say Y if you want to enable audio on the Freescale / iVeia 175 P1022 RDK board. This will also include the Wolfson 176 Microelectronics WM8960 codec driver. 177 178config SND_SOC_MPC5200_I2S 179 tristate "Freescale MPC5200 PSC in I2S mode driver" 180 depends on PPC_MPC52xx && PPC_BESTCOMM 181 select SND_MPC52xx_DMA 182 select PPC_BESTCOMM_GEN_BD 183 help 184 Say Y here to support the MPC5200 PSCs in I2S mode. 185 186config SND_SOC_MPC5200_AC97 187 tristate "Freescale MPC5200 PSC in AC97 mode driver" 188 depends on PPC_MPC52xx && PPC_BESTCOMM 189 select SND_SOC_AC97_BUS 190 select SND_MPC52xx_DMA 191 select PPC_BESTCOMM_GEN_BD 192 help 193 Say Y here to support the MPC5200 PSCs in AC97 mode. 194 195config SND_MPC52xx_SOC_PCM030 196 tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712" 197 depends on PPC_MPC5200_SIMPLE 198 select SND_SOC_MPC5200_AC97 199 select SND_SOC_WM9712 200 help 201 Say Y if you want to add support for sound on the Phytec pcm030 202 baseboard. 203 204config SND_MPC52xx_SOC_EFIKA 205 tristate "SoC AC97 Audio support for bbplan Efika and STAC9766" 206 depends on PPC_EFIKA 207 select SND_SOC_MPC5200_AC97 208 select SND_SOC_STAC9766 209 help 210 Say Y if you want to add support for sound on the Efika. 211 212endif # SND_POWERPC_SOC 213 214config SND_SOC_IMX_PCM_FIQ 215 tristate 216 default y if SND_SOC_IMX_SSI=y && (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC) 217 select FIQ 218 219if SND_IMX_SOC 220 221config SND_SOC_IMX_SSI 222 tristate 223 select SND_SOC_FSL_UTILS 224 225comment "SoC Audio support for Freescale i.MX boards:" 226 227config SND_MXC_SOC_WM1133_EV1 228 tristate "Audio on the i.MX31ADS with WM1133-EV1 fitted" 229 depends on MACH_MX31ADS_WM1133_EV1 230 select SND_SOC_WM8350 231 select SND_SOC_IMX_PCM_FIQ 232 select SND_SOC_IMX_AUDMUX 233 select SND_SOC_IMX_SSI 234 help 235 Enable support for audio on the i.MX31ADS with the WM1133-EV1 236 PMIC board with WM8835x fitted. 237 238config SND_SOC_MX27VIS_AIC32X4 239 tristate "SoC audio support for Visstrim M10 boards" 240 depends on MACH_IMX27_VISSTRIM_M10 && I2C 241 select SND_SOC_TLV320AIC32X4 242 select SND_SOC_IMX_PCM_DMA 243 select SND_SOC_IMX_AUDMUX 244 select SND_SOC_IMX_SSI 245 help 246 Say Y if you want to add support for SoC audio on Visstrim SM10 247 board with TLV320AIC32X4 codec. 248 249config SND_SOC_PHYCORE_AC97 250 tristate "SoC Audio support for Phytec phyCORE (and phyCARD) boards" 251 depends on MACH_PCM043 || MACH_PCA100 252 select SND_SOC_AC97_BUS 253 select SND_SOC_WM9712 254 select SND_SOC_IMX_PCM_FIQ 255 select SND_SOC_IMX_AUDMUX 256 select SND_SOC_IMX_SSI 257 help 258 Say Y if you want to add support for SoC audio on Phytec phyCORE 259 and phyCARD boards in AC97 mode 260 261config SND_SOC_EUKREA_TLV320 262 tristate "Eukrea TLV320" 263 depends on ARCH_MXC && !ARM64 && I2C 264 select SND_SOC_TLV320AIC23_I2C 265 select SND_SOC_IMX_AUDMUX 266 select SND_SOC_IMX_SSI 267 select SND_SOC_FSL_SSI 268 select SND_SOC_IMX_PCM_DMA 269 help 270 Enable I2S based access to the TLV320AIC23B codec attached 271 to the SSI interface 272 273config SND_SOC_IMX_ES8328 274 tristate "SoC Audio support for i.MX boards with the ES8328 codec" 275 depends on OF && (I2C || SPI) 276 select SND_SOC_ES8328_I2C if I2C 277 select SND_SOC_ES8328_SPI if SPI_MASTER 278 select SND_SOC_IMX_PCM_DMA 279 select SND_SOC_IMX_AUDMUX 280 select SND_SOC_FSL_SSI 281 help 282 Say Y if you want to add support for the ES8328 audio codec connected 283 via SSI/I2S over either SPI or I2C. 284 285config SND_SOC_IMX_SGTL5000 286 tristate "SoC Audio support for i.MX boards with sgtl5000" 287 depends on OF && I2C 288 select SND_SOC_SGTL5000 289 select SND_SOC_IMX_PCM_DMA 290 select SND_SOC_IMX_AUDMUX 291 select SND_SOC_FSL_SSI 292 help 293 Say Y if you want to add support for SoC audio on an i.MX board with 294 a sgtl5000 codec. 295 296config SND_SOC_IMX_SPDIF 297 tristate "SoC Audio support for i.MX boards with S/PDIF" 298 select SND_SOC_IMX_PCM_DMA 299 select SND_SOC_FSL_SPDIF 300 help 301 SoC Audio support for i.MX boards with S/PDIF 302 Say Y if you want to add support for SoC audio on an i.MX board with 303 a S/DPDIF. 304 305config SND_SOC_IMX_MC13783 306 tristate "SoC Audio support for I.MX boards with mc13783" 307 depends on MFD_MC13XXX && ARM 308 select SND_SOC_IMX_SSI 309 select SND_SOC_IMX_AUDMUX 310 select SND_SOC_MC13783 311 select SND_SOC_IMX_PCM_DMA 312 313config SND_SOC_FSL_ASOC_CARD 314 tristate "Generic ASoC Sound Card with ASRC support" 315 depends on OF && I2C 316 # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m: 317 depends on SND_AC97_CODEC || SND_AC97_CODEC=n 318 select SND_SOC_IMX_AUDMUX 319 select SND_SOC_IMX_PCM_DMA 320 select SND_SOC_FSL_ESAI 321 select SND_SOC_FSL_SAI 322 select SND_SOC_FSL_SSI 323 help 324 ALSA SoC Audio support with ASRC feature for Freescale SoCs that have 325 ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888, 326 CS4271, CS4272 and SGTL5000. 327 Say Y if you want to add support for Freescale Generic ASoC Sound Card. 328 329config SND_SOC_IMX_AUDMIX 330 tristate "SoC Audio support for i.MX boards with AUDMIX" 331 select SND_SOC_FSL_AUDMIX 332 select SND_SOC_FSL_SAI 333 help 334 SoC Audio support for i.MX boards with Audio Mixer 335 Say Y if you want to add support for SoC audio on an i.MX board with 336 an Audio Mixer. 337 338endif # SND_IMX_SOC 339 340endmenu 341