1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "SoC Audio for Freescale CPUs"
4 comment "Common SoC Audio options for Freescale CPUs:"
6 config SND_SOC_FSL_ASRC
7 tristate "Asynchronous Sample Rate Converter (ASRC) module support"
10 select SND_SOC_GENERIC_DMAENGINE_PCM
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.
17 config SND_SOC_FSL_SAI
18 tristate "Synchronous Audio Interface (SAI) module support"
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
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.
29 config SND_SOC_FSL_MQS
30 tristate "Medium Quality Sound (MQS) module support"
31 depends on SND_SOC_FSL_SAI
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.
39 config SND_SOC_FSL_AUDMIX
40 tristate "Audio Mixer (AUDMIX) module support"
43 Say Y if you want to add Audio Mixer (AUDMIX)
44 support for the NXP iMX CPUs.
46 config 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)
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.
57 config SND_SOC_FSL_SPDIF
58 tristate "Sony/Philips Digital Interface (S/PDIF) module support"
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)
63 select SND_SOC_FSL_UTILS
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.
70 config SND_SOC_FSL_ESAI
71 tristate "Enhanced Serial Audio Interface (ESAI) module support"
73 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
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.
80 config SND_SOC_FSL_MICFIL
81 tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support"
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
87 Say Y if you want to add Pulse Density Modulation microphone
88 interface (MICFIL) support for NXP.
90 config SND_SOC_FSL_EASRC
91 tristate "Enhanced Asynchronous Sample Rate Converter (EASRC) module support"
92 depends on SND_SOC_FSL_ASRC
94 select SND_SOC_GENERIC_DMAENGINE_PCM
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
101 config SND_SOC_FSL_XCVR
102 tristate "NXP Audio Transceiver (XCVR) module support"
104 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
105 select SND_SOC_GENERIC_DMAENGINE_PCM
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.
111 config 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
116 Say Y if you want to add AUDIO TO HDMI TX support for NXP.
118 config SND_SOC_FSL_UTILS
121 config SND_SOC_FSL_RPMSG
122 tristate "NXP Audio Base On RPMSG support"
123 depends on COMMON_CLK
125 depends on SND_IMX_SOC || SND_IMX_SOC = n
126 select SND_SOC_IMX_RPMSG if SND_IMX_SOC != n
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.
132 config SND_SOC_IMX_PCM_DMA
134 select SND_SOC_GENERIC_DMAENGINE_PCM
136 config SND_SOC_IMX_AUDIO_RPMSG
140 config SND_SOC_IMX_PCM_RPMSG
142 depends on SND_SOC_IMX_AUDIO_RPMSG
143 select SND_SOC_GENERIC_DMAENGINE_PCM
145 config SND_SOC_IMX_AUDMUX
146 tristate "Digital Audio Mux module support"
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.
153 config SND_POWERPC_SOC
154 tristate "SoC Audio for Freescale PowerPC CPUs"
155 depends on FSL_SOC || PPC_MPC52xx
157 Say Y or M if you want to add support for codecs attached to
161 tristate "SoC Audio for Freescale i.MX CPUs"
162 depends on ARCH_MXC || COMPILE_TEST
164 Say Y or M if you want to add support for codecs attached to
169 config SND_MPC52xx_DMA
172 config SND_SOC_POWERPC_DMA
175 config SND_SOC_POWERPC_QMC_AUDIO
176 tristate "QMC ALSA SoC support"
179 ALSA SoC Audio support using the Freescale QUICC Multichannel
181 Say Y or M if you want to add support for SoC audio using Freescale
184 comment "SoC Audio support for Freescale PPC boards:"
186 config SND_SOC_MPC8610_HPCD
187 tristate "ALSA SoC support for the Freescale MPC8610 HPCD board"
188 # I2C is necessary for the CS4270 driver
189 depends on MPC8610_HPCD && I2C
190 select SND_SOC_FSL_SSI
191 select SND_SOC_FSL_UTILS
192 select SND_SOC_POWERPC_DMA
193 select SND_SOC_CS4270
194 select SND_SOC_CS4270_VD33_ERRATA
195 default y if MPC8610_HPCD
197 Say Y if you want to enable audio on the Freescale MPC8610 HPCD.
199 config SND_SOC_P1022_DS
200 tristate "ALSA SoC support for the Freescale P1022 DS board"
201 # I2C is necessary for the WM8776 driver
202 depends on P1022_DS && I2C
203 select SND_SOC_FSL_SSI
204 select SND_SOC_FSL_UTILS
205 select SND_SOC_POWERPC_DMA
206 select SND_SOC_WM8776
207 default y if P1022_DS
209 Say Y if you want to enable audio on the Freescale P1022 DS board.
210 This will also include the Wolfson Microelectronics WM8776 codec
213 config SND_SOC_P1022_RDK
214 tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board"
215 # I2C is necessary for the WM8960 driver
216 depends on P1022_RDK && I2C
217 select SND_SOC_FSL_SSI
218 select SND_SOC_FSL_UTILS
219 select SND_SOC_POWERPC_DMA
220 select SND_SOC_WM8960
221 default y if P1022_RDK
223 Say Y if you want to enable audio on the Freescale / iVeia
224 P1022 RDK board. This will also include the Wolfson
225 Microelectronics WM8960 codec driver.
227 config SND_SOC_MPC5200_I2S
228 tristate "Freescale MPC5200 PSC in I2S mode driver"
229 depends on PPC_MPC52xx && PPC_BESTCOMM
230 select SND_MPC52xx_DMA
231 select PPC_BESTCOMM_GEN_BD
233 Say Y here to support the MPC5200 PSCs in I2S mode.
235 config SND_SOC_MPC5200_AC97
236 tristate "Freescale MPC5200 PSC in AC97 mode driver"
237 depends on PPC_MPC52xx && PPC_BESTCOMM
238 select SND_SOC_AC97_BUS
239 select SND_MPC52xx_DMA
240 select PPC_BESTCOMM_GEN_BD
242 Say Y here to support the MPC5200 PSCs in AC97 mode.
244 config SND_MPC52xx_SOC_PCM030
245 tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712"
246 depends on PPC_MPC5200_SIMPLE
247 select SND_SOC_MPC5200_AC97
248 select SND_SOC_WM9712
250 Say Y if you want to add support for sound on the Phytec pcm030
253 config SND_MPC52xx_SOC_EFIKA
254 tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
256 select SND_SOC_MPC5200_AC97
257 select SND_SOC_STAC9766
259 Say Y if you want to add support for sound on the Efika.
261 endif # SND_POWERPC_SOC
263 config SND_SOC_IMX_PCM_FIQ
265 default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC)
270 comment "SoC Audio support for Freescale i.MX boards:"
272 config SND_SOC_EUKREA_TLV320
273 tristate "Eukrea TLV320"
274 depends on ARCH_MXC && !ARM64 && I2C
275 select SND_SOC_TLV320AIC23_I2C
276 select SND_SOC_IMX_AUDMUX
277 select SND_SOC_FSL_SSI
278 select SND_SOC_IMX_PCM_DMA
280 Enable I2S based access to the TLV320AIC23B codec attached
283 config SND_SOC_IMX_ES8328
284 tristate "SoC Audio support for i.MX boards with the ES8328 codec"
285 depends on OF && (I2C || SPI)
286 select SND_SOC_ES8328_I2C if I2C
287 select SND_SOC_ES8328_SPI if SPI_MASTER
288 select SND_SOC_IMX_PCM_DMA
289 select SND_SOC_IMX_AUDMUX
290 select SND_SOC_FSL_SSI
292 Say Y if you want to add support for the ES8328 audio codec connected
293 via SSI/I2S over either SPI or I2C.
295 config SND_SOC_IMX_SGTL5000
296 tristate "SoC Audio support for i.MX boards with sgtl5000"
298 select SND_SOC_SGTL5000
299 select SND_SOC_IMX_PCM_DMA
300 select SND_SOC_IMX_AUDMUX
301 select SND_SOC_FSL_SSI
303 Say Y if you want to add support for SoC audio on an i.MX board with
306 config SND_SOC_IMX_SPDIF
307 tristate "SoC Audio support for i.MX boards with S/PDIF"
308 select SND_SOC_IMX_PCM_DMA
309 select SND_SOC_FSL_SPDIF
311 SoC Audio support for i.MX boards with S/PDIF
312 Say Y if you want to add support for SoC audio on an i.MX board with
315 config SND_SOC_FSL_ASOC_CARD
316 tristate "Generic ASoC Sound Card with ASRC support"
318 # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
319 depends on SND_AC97_CODEC || SND_AC97_CODEC=n
320 select SND_SIMPLE_CARD_UTILS
321 select SND_SOC_IMX_AUDMUX
322 select SND_SOC_IMX_PCM_DMA
323 select SND_SOC_FSL_ESAI
324 select SND_SOC_FSL_SAI
325 select SND_SOC_FSL_SSI
326 select SND_SOC_TLV320AIC31XX
327 select SND_SOC_WM8994
330 ALSA SoC Audio support with ASRC feature for Freescale SoCs that have
331 ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888,
332 CS4271, CS4272, SGTL5000 and TLV320AIC32x4.
333 Say Y if you want to add support for Freescale Generic ASoC Sound Card.
335 config SND_SOC_IMX_AUDMIX
336 tristate "SoC Audio support for i.MX boards with AUDMIX"
337 select SND_SOC_FSL_AUDMIX
338 select SND_SOC_FSL_SAI
340 SoC Audio support for i.MX boards with Audio Mixer
341 Say Y if you want to add support for SoC audio on an i.MX board with
344 config SND_SOC_IMX_HDMI
345 tristate "SoC Audio support for i.MX boards with HDMI port"
346 select SND_SOC_FSL_SAI
347 select SND_SOC_FSL_AUD2HTX
348 select SND_SOC_HDMI_CODEC
350 ALSA SoC Audio support with HDMI feature for Freescale SoCs that have
351 SAI/AUD2HTX and connect with internal HDMI IP or external module
353 Say Y if you want to add support for SoC audio on an i.MX board with
356 config SND_SOC_IMX_RPMSG
357 tristate "SoC Audio support for i.MX boards with rpmsg"
359 select SND_SOC_IMX_PCM_RPMSG
360 select SND_SOC_IMX_AUDIO_RPMSG
362 SoC Audio support for i.MX boards with rpmsg.
363 There should be rpmsg devices defined in other core (M core)
364 Say Y if you want to add support for SoC audio on an i.MX board with
367 config SND_SOC_IMX_CARD
368 tristate "SoC Audio Graph Sound Card support for i.MX boards"
370 select SND_SOC_AK4458
371 select SND_SOC_AK5558
372 select SND_SOC_IMX_PCM_DMA
373 select SND_SOC_FSL_SAI
374 select SND_SIMPLE_CARD_UTILS
376 This option enables audio sound card support for i.MX boards
377 with OF-graph DT bindings.
378 It also support DPCM of single CPU multi Codec ststem.