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 select SND_SOC_FSL_UTILS 23 help 24 Say Y if you want to add Synchronous Audio Interface (SAI) 25 support for the Freescale CPUs. 26 This option is only useful for out-of-tree drivers since 27 in-tree drivers select it automatically. 28 29config SND_SOC_FSL_MQS 30 tristate "Medium Quality Sound (MQS) module support" 31 depends on SND_SOC_FSL_SAI 32 select REGMAP_MMIO 33 help 34 Say Y if you want to add Medium Quality Sound (MQS) 35 support for the Freescale CPUs. 36 This option is only useful for out-of-tree drivers since 37 in-tree drivers select it automatically. 38 39config SND_SOC_FSL_AUDMIX 40 tristate "Audio Mixer (AUDMIX) module support" 41 select REGMAP_MMIO 42 help 43 Say Y if you want to add Audio Mixer (AUDMIX) 44 support for the NXP iMX CPUs. 45 46config SND_SOC_FSL_SSI 47 tristate "Synchronous Serial Interface module (SSI) support" 48 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 49 select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC) 50 select REGMAP_MMIO 51 help 52 Say Y if you want to add Synchronous Serial Interface (SSI) 53 support for the Freescale CPUs. 54 This option is only useful for out-of-tree drivers since 55 in-tree drivers select it automatically. 56 57config SND_SOC_FSL_SPDIF 58 tristate "Sony/Philips Digital Interface (S/PDIF) module support" 59 select REGMAP_MMIO 60 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 61 select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC) 62 select BITREVERSE 63 select SND_SOC_FSL_UTILS 64 help 65 Say Y if you want to add Sony/Philips Digital Interface (SPDIF) 66 support for the Freescale CPUs. 67 This option is only useful for out-of-tree drivers since 68 in-tree drivers select it automatically. 69 70config SND_SOC_FSL_ESAI 71 tristate "Enhanced Serial Audio Interface (ESAI) module support" 72 select REGMAP_MMIO 73 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 74 help 75 Say Y if you want to add Enhanced Synchronous Audio Interface 76 (ESAI) support for the Freescale CPUs. 77 This option is only useful for out-of-tree drivers since 78 in-tree drivers select it automatically. 79 80config SND_SOC_FSL_MICFIL 81 tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support" 82 select REGMAP_MMIO 83 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 84 select SND_SOC_GENERIC_DMAENGINE_PCM 85 select SND_SOC_FSL_UTILS 86 help 87 Say Y if you want to add Pulse Density Modulation microphone 88 interface (MICFIL) support for NXP. 89 90config SND_SOC_FSL_EASRC 91 tristate "Enhanced Asynchronous Sample Rate Converter (EASRC) module support" 92 depends on SND_SOC_FSL_ASRC 93 select REGMAP_MMIO 94 select SND_SOC_GENERIC_DMAENGINE_PCM 95 help 96 Say Y if you want to add Enhanced ASRC support for NXP. The ASRC is 97 a digital module that converts audio from a source sample rate to a 98 destination sample rate. It is a new design module compare with the 99 old ASRC. 100 101config SND_SOC_FSL_XCVR 102 tristate "NXP Audio Transceiver (XCVR) module support" 103 select REGMAP_MMIO 104 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 105 select SND_SOC_GENERIC_DMAENGINE_PCM 106 help 107 Say Y if you want to add Audio Transceiver (XCVR) support for NXP 108 iMX CPUs. XCVR is a digital module that supports HDMI2.1 eARC, 109 HDMI1.4 ARC and SPDIF. 110 111config SND_SOC_FSL_AUD2HTX 112 tristate "AUDIO TO HDMI TX module support" 113 depends on ARCH_MXC || COMPILE_TEST 114 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n 115 help 116 Say Y if you want to add AUDIO TO HDMI TX support for NXP. 117 118config SND_SOC_FSL_UTILS 119 tristate 120 121config SND_SOC_FSL_RPMSG 122 tristate "NXP Audio Base On RPMSG support" 123 depends on COMMON_CLK 124 depends on RPMSG 125 depends on SND_IMX_SOC || SND_IMX_SOC = n 126 select SND_SOC_IMX_RPMSG if SND_IMX_SOC != n 127 help 128 Say Y if you want to add rpmsg audio support for the Freescale CPUs. 129 This option is only useful for out-of-tree drivers since 130 in-tree drivers select it automatically. 131 132config SND_SOC_IMX_PCM_DMA 133 tristate 134 select SND_SOC_GENERIC_DMAENGINE_PCM 135 136config SND_SOC_IMX_AUDIO_RPMSG 137 tristate 138 depends on RPMSG 139 140config SND_SOC_IMX_PCM_RPMSG 141 tristate 142 depends on SND_SOC_IMX_AUDIO_RPMSG 143 select SND_SOC_GENERIC_DMAENGINE_PCM 144 145config SND_SOC_IMX_AUDMUX 146 tristate "Digital Audio Mux module support" 147 help 148 Say Y if you want to add Digital Audio Mux (AUDMUX) support 149 for the ARM i.MX CPUs. 150 This option is only useful for out-of-tree drivers since 151 in-tree drivers select it automatically. 152 153config SND_POWERPC_SOC 154 tristate "SoC Audio for Freescale PowerPC CPUs" 155 depends on FSL_SOC || PPC_MPC52xx 156 help 157 Say Y or M if you want to add support for codecs attached to 158 the PowerPC CPUs. 159 160config SND_IMX_SOC 161 tristate "SoC Audio for Freescale i.MX CPUs" 162 depends on ARCH_MXC || COMPILE_TEST 163 help 164 Say Y or M if you want to add support for codecs attached to 165 the i.MX CPUs. 166 167if SND_POWERPC_SOC 168 169config SND_MPC52xx_DMA 170 tristate 171 172config SND_SOC_POWERPC_DMA 173 tristate 174 175comment "SoC Audio support for Freescale PPC boards:" 176 177config SND_SOC_MPC8610_HPCD 178 tristate "ALSA SoC support for the Freescale MPC8610 HPCD board" 179 # I2C is necessary for the CS4270 driver 180 depends on MPC8610_HPCD && I2C 181 select SND_SOC_FSL_SSI 182 select SND_SOC_FSL_UTILS 183 select SND_SOC_POWERPC_DMA 184 select SND_SOC_CS4270 185 select SND_SOC_CS4270_VD33_ERRATA 186 default y if MPC8610_HPCD 187 help 188 Say Y if you want to enable audio on the Freescale MPC8610 HPCD. 189 190config SND_SOC_P1022_DS 191 tristate "ALSA SoC support for the Freescale P1022 DS board" 192 # I2C is necessary for the WM8776 driver 193 depends on P1022_DS && I2C 194 select SND_SOC_FSL_SSI 195 select SND_SOC_FSL_UTILS 196 select SND_SOC_POWERPC_DMA 197 select SND_SOC_WM8776 198 default y if P1022_DS 199 help 200 Say Y if you want to enable audio on the Freescale P1022 DS board. 201 This will also include the Wolfson Microelectronics WM8776 codec 202 driver. 203 204config SND_SOC_P1022_RDK 205 tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board" 206 # I2C is necessary for the WM8960 driver 207 depends on P1022_RDK && I2C 208 select SND_SOC_FSL_SSI 209 select SND_SOC_FSL_UTILS 210 select SND_SOC_POWERPC_DMA 211 select SND_SOC_WM8960 212 default y if P1022_RDK 213 help 214 Say Y if you want to enable audio on the Freescale / iVeia 215 P1022 RDK board. This will also include the Wolfson 216 Microelectronics WM8960 codec driver. 217 218config SND_SOC_MPC5200_I2S 219 tristate "Freescale MPC5200 PSC in I2S mode driver" 220 depends on PPC_MPC52xx && PPC_BESTCOMM 221 select SND_MPC52xx_DMA 222 select PPC_BESTCOMM_GEN_BD 223 help 224 Say Y here to support the MPC5200 PSCs in I2S mode. 225 226config SND_SOC_MPC5200_AC97 227 tristate "Freescale MPC5200 PSC in AC97 mode driver" 228 depends on PPC_MPC52xx && PPC_BESTCOMM 229 select SND_SOC_AC97_BUS 230 select SND_MPC52xx_DMA 231 select PPC_BESTCOMM_GEN_BD 232 help 233 Say Y here to support the MPC5200 PSCs in AC97 mode. 234 235config SND_MPC52xx_SOC_PCM030 236 tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712" 237 depends on PPC_MPC5200_SIMPLE 238 select SND_SOC_MPC5200_AC97 239 select SND_SOC_WM9712 240 help 241 Say Y if you want to add support for sound on the Phytec pcm030 242 baseboard. 243 244config SND_MPC52xx_SOC_EFIKA 245 tristate "SoC AC97 Audio support for bbplan Efika and STAC9766" 246 depends on PPC_EFIKA 247 select SND_SOC_MPC5200_AC97 248 select SND_SOC_STAC9766 249 help 250 Say Y if you want to add support for sound on the Efika. 251 252endif # SND_POWERPC_SOC 253 254config SND_SOC_IMX_PCM_FIQ 255 tristate 256 default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC) 257 select FIQ 258 259if SND_IMX_SOC 260 261comment "SoC Audio support for Freescale i.MX boards:" 262 263config SND_SOC_EUKREA_TLV320 264 tristate "Eukrea TLV320" 265 depends on ARCH_MXC && !ARM64 && I2C 266 select SND_SOC_TLV320AIC23_I2C 267 select SND_SOC_IMX_AUDMUX 268 select SND_SOC_FSL_SSI 269 select SND_SOC_IMX_PCM_DMA 270 help 271 Enable I2S based access to the TLV320AIC23B codec attached 272 to the SSI interface 273 274config SND_SOC_IMX_ES8328 275 tristate "SoC Audio support for i.MX boards with the ES8328 codec" 276 depends on OF && (I2C || SPI) 277 select SND_SOC_ES8328_I2C if I2C 278 select SND_SOC_ES8328_SPI if SPI_MASTER 279 select SND_SOC_IMX_PCM_DMA 280 select SND_SOC_IMX_AUDMUX 281 select SND_SOC_FSL_SSI 282 help 283 Say Y if you want to add support for the ES8328 audio codec connected 284 via SSI/I2S over either SPI or I2C. 285 286config SND_SOC_IMX_SGTL5000 287 tristate "SoC Audio support for i.MX boards with sgtl5000" 288 depends on OF && I2C 289 select SND_SOC_SGTL5000 290 select SND_SOC_IMX_PCM_DMA 291 select SND_SOC_IMX_AUDMUX 292 select SND_SOC_FSL_SSI 293 help 294 Say Y if you want to add support for SoC audio on an i.MX board with 295 a sgtl5000 codec. 296 297config SND_SOC_IMX_SPDIF 298 tristate "SoC Audio support for i.MX boards with S/PDIF" 299 select SND_SOC_IMX_PCM_DMA 300 select SND_SOC_FSL_SPDIF 301 help 302 SoC Audio support for i.MX boards with S/PDIF 303 Say Y if you want to add support for SoC audio on an i.MX board with 304 a S/DPDIF. 305 306config SND_SOC_FSL_ASOC_CARD 307 tristate "Generic ASoC Sound Card with ASRC support" 308 depends on OF && I2C 309 # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m: 310 depends on SND_AC97_CODEC || SND_AC97_CODEC=n 311 select SND_SIMPLE_CARD_UTILS 312 select SND_SOC_IMX_AUDMUX 313 select SND_SOC_IMX_PCM_DMA 314 select SND_SOC_FSL_ESAI 315 select SND_SOC_FSL_SAI 316 select SND_SOC_FSL_SSI 317 select SND_SOC_TLV320AIC31XX 318 select SND_SOC_WM8994 319 select MFD_WM8994 320 help 321 ALSA SoC Audio support with ASRC feature for Freescale SoCs that have 322 ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888, 323 CS4271, CS4272, SGTL5000 and TLV320AIC32x4. 324 Say Y if you want to add support for Freescale Generic ASoC Sound Card. 325 326config SND_SOC_IMX_AUDMIX 327 tristate "SoC Audio support for i.MX boards with AUDMIX" 328 select SND_SOC_FSL_AUDMIX 329 select SND_SOC_FSL_SAI 330 help 331 SoC Audio support for i.MX boards with Audio Mixer 332 Say Y if you want to add support for SoC audio on an i.MX board with 333 an Audio Mixer. 334 335config SND_SOC_IMX_HDMI 336 tristate "SoC Audio support for i.MX boards with HDMI port" 337 select SND_SOC_FSL_SAI 338 select SND_SOC_FSL_AUD2HTX 339 select SND_SOC_HDMI_CODEC 340 help 341 ALSA SoC Audio support with HDMI feature for Freescale SoCs that have 342 SAI/AUD2HTX and connect with internal HDMI IP or external module 343 SII902X. 344 Say Y if you want to add support for SoC audio on an i.MX board with 345 IMX HDMI. 346 347config SND_SOC_IMX_RPMSG 348 tristate "SoC Audio support for i.MX boards with rpmsg" 349 depends on RPMSG 350 select SND_SOC_IMX_PCM_RPMSG 351 select SND_SOC_IMX_AUDIO_RPMSG 352 help 353 SoC Audio support for i.MX boards with rpmsg. 354 There should be rpmsg devices defined in other core (M core) 355 Say Y if you want to add support for SoC audio on an i.MX board with 356 a rpmsg devices. 357 358config SND_SOC_IMX_CARD 359 tristate "SoC Audio Graph Sound Card support for i.MX boards" 360 depends on OF && I2C 361 select SND_SOC_AK4458 362 select SND_SOC_AK5558 363 select SND_SOC_IMX_PCM_DMA 364 select SND_SOC_FSL_SAI 365 select SND_SIMPLE_CARD_UTILS 366 help 367 This option enables audio sound card support for i.MX boards 368 with OF-graph DT bindings. 369 It also support DPCM of single CPU multi Codec ststem. 370 371endif # SND_IMX_SOC 372 373endmenu 374