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