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_XCVR 99 tristate "NXP Audio Transceiver (XCVR) module support" 100 select REGMAP_MMIO 101 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 102 select SND_SOC_GENERIC_DMAENGINE_PCM 103 help 104 Say Y if you want to add Audio Transceiver (XCVR) support for NXP 105 iMX CPUs. XCVR is a digital module that supports HDMI2.1 eARC, 106 HDMI1.4 ARC and SPDIF. 107 108config SND_SOC_FSL_AUD2HTX 109 tristate "AUDIO TO HDMI TX module support" 110 depends on ARCH_MXC || COMPILE_TEST 111 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 112 help 113 Say Y if you want to add AUDIO TO HDMI TX support for NXP. 114 115config SND_SOC_FSL_UTILS 116 tristate 117 118config SND_SOC_FSL_RPMSG 119 tristate "NXP Audio Base On RPMSG support" 120 depends on COMMON_CLK 121 depends on RPMSG 122 select SND_SOC_IMX_RPMSG if SND_IMX_SOC != n 123 help 124 Say Y if you want to add rpmsg audio support for the Freescale CPUs. 125 This option is only useful for out-of-tree drivers since 126 in-tree drivers select it automatically. 127 128config SND_SOC_IMX_PCM_DMA 129 tristate 130 select SND_SOC_GENERIC_DMAENGINE_PCM 131 132config SND_SOC_IMX_AUDIO_RPMSG 133 tristate 134 depends on RPMSG 135 136config SND_SOC_IMX_PCM_RPMSG 137 tristate 138 depends on SND_SOC_IMX_AUDIO_RPMSG 139 select SND_SOC_GENERIC_DMAENGINE_PCM 140 141config SND_SOC_IMX_AUDMUX 142 tristate "Digital Audio Mux module support" 143 help 144 Say Y if you want to add Digital Audio Mux (AUDMUX) support 145 for the ARM i.MX CPUs. 146 This option is only useful for out-of-tree drivers since 147 in-tree drivers select it automatically. 148 149config SND_POWERPC_SOC 150 tristate "SoC Audio for Freescale PowerPC CPUs" 151 depends on FSL_SOC || PPC_MPC52xx 152 help 153 Say Y or M if you want to add support for codecs attached to 154 the PowerPC CPUs. 155 156config SND_IMX_SOC 157 tristate "SoC Audio for Freescale i.MX CPUs" 158 depends on ARCH_MXC || COMPILE_TEST 159 help 160 Say Y or M if you want to add support for codecs attached to 161 the i.MX CPUs. 162 163if SND_POWERPC_SOC 164 165config SND_MPC52xx_DMA 166 tristate 167 168config SND_SOC_POWERPC_DMA 169 tristate 170 171comment "SoC Audio support for Freescale PPC boards:" 172 173config SND_SOC_MPC8610_HPCD 174 tristate "ALSA SoC support for the Freescale MPC8610 HPCD board" 175 # I2C is necessary for the CS4270 driver 176 depends on MPC8610_HPCD && I2C 177 select SND_SOC_FSL_SSI 178 select SND_SOC_FSL_UTILS 179 select SND_SOC_POWERPC_DMA 180 select SND_SOC_CS4270 181 select SND_SOC_CS4270_VD33_ERRATA 182 default y if MPC8610_HPCD 183 help 184 Say Y if you want to enable audio on the Freescale MPC8610 HPCD. 185 186config SND_SOC_P1022_DS 187 tristate "ALSA SoC support for the Freescale P1022 DS board" 188 # I2C is necessary for the WM8776 driver 189 depends on P1022_DS && I2C 190 select SND_SOC_FSL_SSI 191 select SND_SOC_FSL_UTILS 192 select SND_SOC_POWERPC_DMA 193 select SND_SOC_WM8776 194 default y if P1022_DS 195 help 196 Say Y if you want to enable audio on the Freescale P1022 DS board. 197 This will also include the Wolfson Microelectronics WM8776 codec 198 driver. 199 200config SND_SOC_P1022_RDK 201 tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board" 202 # I2C is necessary for the WM8960 driver 203 depends on P1022_RDK && I2C 204 select SND_SOC_FSL_SSI 205 select SND_SOC_FSL_UTILS 206 select SND_SOC_POWERPC_DMA 207 select SND_SOC_WM8960 208 default y if P1022_RDK 209 help 210 Say Y if you want to enable audio on the Freescale / iVeia 211 P1022 RDK board. This will also include the Wolfson 212 Microelectronics WM8960 codec driver. 213 214config SND_SOC_MPC5200_I2S 215 tristate "Freescale MPC5200 PSC in I2S mode driver" 216 depends on PPC_MPC52xx && PPC_BESTCOMM 217 select SND_MPC52xx_DMA 218 select PPC_BESTCOMM_GEN_BD 219 help 220 Say Y here to support the MPC5200 PSCs in I2S mode. 221 222config SND_SOC_MPC5200_AC97 223 tristate "Freescale MPC5200 PSC in AC97 mode driver" 224 depends on PPC_MPC52xx && PPC_BESTCOMM 225 select SND_SOC_AC97_BUS 226 select SND_MPC52xx_DMA 227 select PPC_BESTCOMM_GEN_BD 228 help 229 Say Y here to support the MPC5200 PSCs in AC97 mode. 230 231config SND_MPC52xx_SOC_PCM030 232 tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712" 233 depends on PPC_MPC5200_SIMPLE 234 select SND_SOC_MPC5200_AC97 235 select SND_SOC_WM9712 236 help 237 Say Y if you want to add support for sound on the Phytec pcm030 238 baseboard. 239 240config SND_MPC52xx_SOC_EFIKA 241 tristate "SoC AC97 Audio support for bbplan Efika and STAC9766" 242 depends on PPC_EFIKA 243 select SND_SOC_MPC5200_AC97 244 select SND_SOC_STAC9766 245 help 246 Say Y if you want to add support for sound on the Efika. 247 248endif # SND_POWERPC_SOC 249 250config SND_SOC_IMX_PCM_FIQ 251 tristate 252 default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC) 253 select FIQ 254 255if SND_IMX_SOC 256 257comment "SoC Audio support for Freescale i.MX boards:" 258 259config SND_SOC_EUKREA_TLV320 260 tristate "Eukrea TLV320" 261 depends on ARCH_MXC && !ARM64 && I2C 262 select SND_SOC_TLV320AIC23_I2C 263 select SND_SOC_IMX_AUDMUX 264 select SND_SOC_FSL_SSI 265 select SND_SOC_IMX_PCM_DMA 266 help 267 Enable I2S based access to the TLV320AIC23B codec attached 268 to the SSI interface 269 270config SND_SOC_IMX_ES8328 271 tristate "SoC Audio support for i.MX boards with the ES8328 codec" 272 depends on OF && (I2C || SPI) 273 select SND_SOC_ES8328_I2C if I2C 274 select SND_SOC_ES8328_SPI if SPI_MASTER 275 select SND_SOC_IMX_PCM_DMA 276 select SND_SOC_IMX_AUDMUX 277 select SND_SOC_FSL_SSI 278 help 279 Say Y if you want to add support for the ES8328 audio codec connected 280 via SSI/I2S over either SPI or I2C. 281 282config SND_SOC_IMX_SGTL5000 283 tristate "SoC Audio support for i.MX boards with sgtl5000" 284 depends on OF && I2C 285 select SND_SOC_SGTL5000 286 select SND_SOC_IMX_PCM_DMA 287 select SND_SOC_IMX_AUDMUX 288 select SND_SOC_FSL_SSI 289 help 290 Say Y if you want to add support for SoC audio on an i.MX board with 291 a sgtl5000 codec. 292 293config SND_SOC_IMX_SPDIF 294 tristate "SoC Audio support for i.MX boards with S/PDIF" 295 select SND_SOC_IMX_PCM_DMA 296 select SND_SOC_FSL_SPDIF 297 help 298 SoC Audio support for i.MX boards with S/PDIF 299 Say Y if you want to add support for SoC audio on an i.MX board with 300 a S/DPDIF. 301 302config SND_SOC_FSL_ASOC_CARD 303 tristate "Generic ASoC Sound Card with ASRC support" 304 depends on OF && I2C 305 # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m: 306 depends on SND_AC97_CODEC || SND_AC97_CODEC=n 307 select SND_SIMPLE_CARD_UTILS 308 select SND_SOC_IMX_AUDMUX 309 select SND_SOC_IMX_PCM_DMA 310 select SND_SOC_FSL_ESAI 311 select SND_SOC_FSL_SAI 312 select SND_SOC_FSL_SSI 313 select SND_SOC_WM8994 314 select MFD_WM8994 315 help 316 ALSA SoC Audio support with ASRC feature for Freescale SoCs that have 317 ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888, 318 CS4271, CS4272, SGTL5000 and TLV320AIC32x4. 319 Say Y if you want to add support for Freescale Generic ASoC Sound Card. 320 321config SND_SOC_IMX_AUDMIX 322 tristate "SoC Audio support for i.MX boards with AUDMIX" 323 select SND_SOC_FSL_AUDMIX 324 select SND_SOC_FSL_SAI 325 help 326 SoC Audio support for i.MX boards with Audio Mixer 327 Say Y if you want to add support for SoC audio on an i.MX board with 328 an Audio Mixer. 329 330config SND_SOC_IMX_HDMI 331 tristate "SoC Audio support for i.MX boards with HDMI port" 332 select SND_SOC_FSL_SAI 333 select SND_SOC_FSL_AUD2HTX 334 select SND_SOC_HDMI_CODEC 335 help 336 ALSA SoC Audio support with HDMI feature for Freescale SoCs that have 337 SAI/AUD2HTX and connect with internal HDMI IP or external module 338 SII902X. 339 Say Y if you want to add support for SoC audio on an i.MX board with 340 IMX HDMI. 341 342config SND_SOC_IMX_RPMSG 343 tristate "SoC Audio support for i.MX boards with rpmsg" 344 depends on RPMSG 345 select SND_SOC_IMX_PCM_RPMSG 346 select SND_SOC_IMX_AUDIO_RPMSG 347 help 348 SoC Audio support for i.MX boards with rpmsg. 349 There should be rpmsg devices defined in other core (M core) 350 Say Y if you want to add support for SoC audio on an i.MX board with 351 a rpmsg devices. 352 353endif # SND_IMX_SOC 354 355endmenu 356