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