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
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.
28 config SND_SOC_FSL_MQS
29 tristate "Medium Quality Sound (MQS) module support"
30 depends on SND_SOC_FSL_SAI
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.
38 config SND_SOC_FSL_AUDMIX
39 tristate "Audio Mixer (AUDMIX) module support"
42 Say Y if you want to add Audio Mixer (AUDMIX)
43 support for the NXP iMX CPUs.
45 config 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)
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.
56 config SND_SOC_FSL_SPDIF
57 tristate "Sony/Philips Digital Interface (S/PDIF) module support"
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)
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.
68 config SND_SOC_FSL_ESAI
69 tristate "Enhanced Serial Audio Interface (ESAI) module support"
71 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
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.
78 config SND_SOC_FSL_MICFIL
79 tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support"
81 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
82 select SND_SOC_GENERIC_DMAENGINE_PCM
84 Say Y if you want to add Pulse Density Modulation microphone
85 interface (MICFIL) support for NXP.
87 config SND_SOC_FSL_EASRC
88 tristate "Enhanced Asynchronous Sample Rate Converter (EASRC) module support"
89 depends on SND_SOC_FSL_ASRC
91 select SND_SOC_GENERIC_DMAENGINE_PCM
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
98 config SND_SOC_FSL_XCVR
99 tristate "NXP Audio Transceiver (XCVR) module support"
101 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
102 select SND_SOC_GENERIC_DMAENGINE_PCM
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.
108 config SND_SOC_FSL_AUD2HTX
109 tristate "AUDIO TO HDMI TX module support"
110 depends on ARCH_MXC || COMPILE_TEST
112 Say Y if you want to add AUDIO TO HDMI TX support for NXP.
114 config SND_SOC_FSL_UTILS
117 config SND_SOC_IMX_PCM_DMA
119 select SND_SOC_GENERIC_DMAENGINE_PCM
121 config SND_SOC_IMX_AUDMUX
122 tristate "Digital Audio Mux module support"
124 Say Y if you want to add Digital Audio Mux (AUDMUX) support
125 for the ARM i.MX CPUs.
126 This option is only useful for out-of-tree drivers since
127 in-tree drivers select it automatically.
129 config SND_POWERPC_SOC
130 tristate "SoC Audio for Freescale PowerPC CPUs"
131 depends on FSL_SOC || PPC_MPC52xx
133 Say Y or M if you want to add support for codecs attached to
137 tristate "SoC Audio for Freescale i.MX CPUs"
138 depends on ARCH_MXC || COMPILE_TEST
140 Say Y or M if you want to add support for codecs attached to
145 config SND_MPC52xx_DMA
148 config SND_SOC_POWERPC_DMA
151 comment "SoC Audio support for Freescale PPC boards:"
153 config SND_SOC_MPC8610_HPCD
154 tristate "ALSA SoC support for the Freescale MPC8610 HPCD board"
155 # I2C is necessary for the CS4270 driver
156 depends on MPC8610_HPCD && I2C
157 select SND_SOC_FSL_SSI
158 select SND_SOC_FSL_UTILS
159 select SND_SOC_POWERPC_DMA
160 select SND_SOC_CS4270
161 select SND_SOC_CS4270_VD33_ERRATA
162 default y if MPC8610_HPCD
164 Say Y if you want to enable audio on the Freescale MPC8610 HPCD.
166 config SND_SOC_P1022_DS
167 tristate "ALSA SoC support for the Freescale P1022 DS board"
168 # I2C is necessary for the WM8776 driver
169 depends on P1022_DS && I2C
170 select SND_SOC_FSL_SSI
171 select SND_SOC_FSL_UTILS
172 select SND_SOC_POWERPC_DMA
173 select SND_SOC_WM8776
174 default y if P1022_DS
176 Say Y if you want to enable audio on the Freescale P1022 DS board.
177 This will also include the Wolfson Microelectronics WM8776 codec
180 config SND_SOC_P1022_RDK
181 tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board"
182 # I2C is necessary for the WM8960 driver
183 depends on P1022_RDK && I2C
184 select SND_SOC_FSL_SSI
185 select SND_SOC_FSL_UTILS
186 select SND_SOC_POWERPC_DMA
187 select SND_SOC_WM8960
188 default y if P1022_RDK
190 Say Y if you want to enable audio on the Freescale / iVeia
191 P1022 RDK board. This will also include the Wolfson
192 Microelectronics WM8960 codec driver.
194 config SND_SOC_MPC5200_I2S
195 tristate "Freescale MPC5200 PSC in I2S mode driver"
196 depends on PPC_MPC52xx && PPC_BESTCOMM
197 select SND_MPC52xx_DMA
198 select PPC_BESTCOMM_GEN_BD
200 Say Y here to support the MPC5200 PSCs in I2S mode.
202 config SND_SOC_MPC5200_AC97
203 tristate "Freescale MPC5200 PSC in AC97 mode driver"
204 depends on PPC_MPC52xx && PPC_BESTCOMM
205 select SND_SOC_AC97_BUS
206 select SND_MPC52xx_DMA
207 select PPC_BESTCOMM_GEN_BD
209 Say Y here to support the MPC5200 PSCs in AC97 mode.
211 config SND_MPC52xx_SOC_PCM030
212 tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712"
213 depends on PPC_MPC5200_SIMPLE
214 select SND_SOC_MPC5200_AC97
215 select SND_SOC_WM9712
217 Say Y if you want to add support for sound on the Phytec pcm030
220 config SND_MPC52xx_SOC_EFIKA
221 tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
223 select SND_SOC_MPC5200_AC97
224 select SND_SOC_STAC9766
226 Say Y if you want to add support for sound on the Efika.
228 endif # SND_POWERPC_SOC
230 config SND_SOC_IMX_PCM_FIQ
232 default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC)
237 comment "SoC Audio support for Freescale i.MX boards:"
239 config SND_SOC_EUKREA_TLV320
240 tristate "Eukrea TLV320"
241 depends on ARCH_MXC && !ARM64 && I2C
242 select SND_SOC_TLV320AIC23_I2C
243 select SND_SOC_IMX_AUDMUX
244 select SND_SOC_FSL_SSI
245 select SND_SOC_IMX_PCM_DMA
247 Enable I2S based access to the TLV320AIC23B codec attached
250 config SND_SOC_IMX_ES8328
251 tristate "SoC Audio support for i.MX boards with the ES8328 codec"
252 depends on OF && (I2C || SPI)
253 select SND_SOC_ES8328_I2C if I2C
254 select SND_SOC_ES8328_SPI if SPI_MASTER
255 select SND_SOC_IMX_PCM_DMA
256 select SND_SOC_IMX_AUDMUX
257 select SND_SOC_FSL_SSI
259 Say Y if you want to add support for the ES8328 audio codec connected
260 via SSI/I2S over either SPI or I2C.
262 config SND_SOC_IMX_SGTL5000
263 tristate "SoC Audio support for i.MX boards with sgtl5000"
265 select SND_SOC_SGTL5000
266 select SND_SOC_IMX_PCM_DMA
267 select SND_SOC_IMX_AUDMUX
268 select SND_SOC_FSL_SSI
270 Say Y if you want to add support for SoC audio on an i.MX board with
273 config SND_SOC_IMX_SPDIF
274 tristate "SoC Audio support for i.MX boards with S/PDIF"
275 select SND_SOC_IMX_PCM_DMA
276 select SND_SOC_FSL_SPDIF
278 SoC Audio support for i.MX boards with S/PDIF
279 Say Y if you want to add support for SoC audio on an i.MX board with
282 config SND_SOC_FSL_ASOC_CARD
283 tristate "Generic ASoC Sound Card with ASRC support"
285 # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
286 depends on SND_AC97_CODEC || SND_AC97_CODEC=n
287 select SND_SIMPLE_CARD_UTILS
288 select SND_SOC_IMX_AUDMUX
289 select SND_SOC_IMX_PCM_DMA
290 select SND_SOC_FSL_ESAI
291 select SND_SOC_FSL_SAI
292 select SND_SOC_FSL_SSI
294 ALSA SoC Audio support with ASRC feature for Freescale SoCs that have
295 ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888,
296 CS4271, CS4272, SGTL5000 and TLV320AIC32x4.
297 Say Y if you want to add support for Freescale Generic ASoC Sound Card.
299 config SND_SOC_IMX_AUDMIX
300 tristate "SoC Audio support for i.MX boards with AUDMIX"
301 select SND_SOC_FSL_AUDMIX
302 select SND_SOC_FSL_SAI
304 SoC Audio support for i.MX boards with Audio Mixer
305 Say Y if you want to add support for SoC audio on an i.MX board with
308 config SND_SOC_IMX_HDMI
309 tristate "SoC Audio support for i.MX boards with HDMI port"
310 select SND_SOC_FSL_SAI
311 select SND_SOC_FSL_AUD2HTX
312 select SND_SOC_HDMI_CODEC
314 ALSA SoC Audio support with HDMI feature for Freescale SoCs that have
315 SAI/AUD2HTX and connect with internal HDMI IP or external module
317 Say Y if you want to add support for SoC audio on an i.MX board with