blob: f4c498f509979c8007136a531a3a28b3b6ab9140 [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Alexander Shiyaneba9e062014-03-16 08:21:34 +04002menu "SoC Audio for Freescale CPUs"
3
Alexander Shiyan204dec92014-03-16 08:21:35 +04004comment "Common SoC Audio options for Freescale CPUs:"
5
Nicolin Chen3117bb32014-07-29 18:08:53 +08006config SND_SOC_FSL_ASRC
7 tristate "Asynchronous Sample Rate Converter (ASRC) module support"
Sudip Mukherjee121a0152016-06-02 18:29:24 +05308 depends on HAS_DMA
Nicolin Chen3117bb32014-07-29 18:08:53 +08009 select REGMAP_MMIO
Fabio Estevambdb9eb42014-07-30 11:27:06 -030010 select SND_SOC_GENERIC_DMAENGINE_PCM
Nicolin Chen3117bb32014-07-29 18:08:53 +080011 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
Xiubo Li43550822013-12-17 11:24:38 +080017config SND_SOC_FSL_SAI
Xiubo Lib71fc4e2014-04-30 18:10:05 +080018 tristate "Synchronous Audio Interface (SAI) module support"
Xiubo Li7d150c62014-02-11 10:47:04 +080019 select REGMAP_MMIO
Arnd Bergmannff402602014-06-03 14:11:56 +020020 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
Xiubo Li43550822013-12-17 11:24:38 +080021 select SND_SOC_GENERIC_DMAENGINE_PCM
Xiubo Lib71fc4e2014-04-30 18:10:05 +080022 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.
Xiubo Li43550822013-12-17 11:24:38 +080027
Shengjiu Wang9e28f652019-09-13 17:42:14 +080028config 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
Viorel Sumanbe1df612019-01-22 11:14:26 +000038config 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
Shawn Guoa23dc692012-03-16 16:56:38 +080045config SND_SOC_FSL_SSI
Fabio Estevam11690062015-04-09 15:32:09 -030046 tristate "Synchronous Serial Interface module (SSI) support"
Arnd Bergmann31ee2bf2014-04-29 21:36:22 +020047 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
Arnd Bergmannff402602014-06-03 14:11:56 +020048 select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
Markus Pargmann43248122014-05-27 10:24:25 +020049 select REGMAP_MMIO
Alexander Shiyan204dec92014-03-16 08:21:35 +040050 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.
Shawn Guoa23dc692012-03-16 16:56:38 +080055
Nicolin Chena2388a42013-08-21 11:13:16 +080056config SND_SOC_FSL_SPDIF
Fabio Estevam11690062015-04-09 15:32:09 -030057 tristate "Sony/Philips Digital Interface (S/PDIF) module support"
Xiubo Li7d150c62014-02-11 10:47:04 +080058 select REGMAP_MMIO
Arnd Bergmann31ee2bf2014-04-29 21:36:22 +020059 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
Arnd Bergmannff402602014-06-03 14:11:56 +020060 select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
Randy Dunlapb3af6d32016-11-05 16:16:32 -070061 select BITREVERSE
Alexander Shiyan204dec92014-03-16 08:21:35 +040062 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.
Nicolin Chena2388a42013-08-21 11:13:16 +080067
Nicolin Chen43d24e72014-01-10 17:54:06 +080068config SND_SOC_FSL_ESAI
Xiubo Li40e3b932014-04-30 18:10:06 +080069 tristate "Enhanced Serial Audio Interface (ESAI) module support"
Xiubo Li7d150c62014-02-11 10:47:04 +080070 select REGMAP_MMIO
Arnd Bergmannff402602014-06-03 14:11:56 +020071 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
Xiubo Li40e3b932014-04-30 18:10:06 +080072 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.
Nicolin Chen43d24e72014-01-10 17:54:06 +080077
Cosmin Samoila47a70e62019-01-04 09:17:38 +000078config 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
Shengjiu Wang955ac622020-04-16 20:25:37 +080087config 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
Viorel Suman28564482020-10-13 15:17:32 +030098config 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
Shengjiu Wang8a24c832020-11-02 09:52:27 +0800108config SND_SOC_FSL_AUD2HTX
109 tristate "AUDIO TO HDMI TX module support"
Shengjiu Wangc61d1142020-11-26 14:14:53 +0800110 depends on ARCH_MXC || COMPILE_TEST
Arnd Bergmanna1f31cc42021-01-03 14:53:17 +0100111 select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
Shengjiu Wang8a24c832020-11-02 09:52:27 +0800112 help
113 Say Y if you want to add AUDIO TO HDMI TX support for NXP.
114
Shawn Guo60aae8d2012-03-16 16:56:40 +0800115config SND_SOC_FSL_UTILS
116 tristate
117
Alexander Shiyaneba9e062014-03-16 08:21:34 +0400118config SND_SOC_IMX_PCM_DMA
119 tristate
120 select SND_SOC_GENERIC_DMAENGINE_PCM
121
122config SND_SOC_IMX_AUDMUX
Alexander Shiyan204dec92014-03-16 08:21:35 +0400123 tristate "Digital Audio Mux module support"
124 help
125 Say Y if you want to add Digital Audio Mux (AUDMUX) support
126 for the ARM i.MX CPUs.
127 This option is only useful for out-of-tree drivers since
128 in-tree drivers select it automatically.
Alexander Shiyaneba9e062014-03-16 08:21:34 +0400129
130config SND_POWERPC_SOC
Shawn Guoa23dc692012-03-16 16:56:38 +0800131 tristate "SoC Audio for Freescale PowerPC CPUs"
Eric Millbrandtf99ddef2012-09-20 10:36:43 -0400132 depends on FSL_SOC || PPC_MPC52xx
Shawn Guoa23dc692012-03-16 16:56:38 +0800133 help
134 Say Y or M if you want to add support for codecs attached to
135 the PowerPC CPUs.
136
Alexander Shiyaneba9e062014-03-16 08:21:34 +0400137config SND_IMX_SOC
138 tristate "SoC Audio for Freescale i.MX CPUs"
139 depends on ARCH_MXC || COMPILE_TEST
140 help
141 Say Y or M if you want to add support for codecs attached to
142 the i.MX CPUs.
143
Shawn Guoa23dc692012-03-16 16:56:38 +0800144if SND_POWERPC_SOC
145
Jon Smirl89dd0842009-05-23 19:12:59 -0400146config SND_MPC52xx_DMA
147 tristate
Grant Likely84bc2782008-07-29 11:42:28 +0100148
Shawn Guod61e1122012-03-16 16:56:37 +0800149config SND_SOC_POWERPC_DMA
Timur Tabi75d91f92009-01-19 11:57:46 -0600150 tristate
Timur Tabi17467f22008-01-11 18:15:26 +0100151
Alexander Shiyaneba9e062014-03-16 08:21:34 +0400152comment "SoC Audio support for Freescale PPC boards:"
153
Timur Tabi17467f22008-01-11 18:15:26 +0100154config SND_SOC_MPC8610_HPCD
Timur Tabi75d91f92009-01-19 11:57:46 -0600155 tristate "ALSA SoC support for the Freescale MPC8610 HPCD board"
Timur Tabiff637d382009-01-22 18:23:39 -0600156 # I2C is necessary for the CS4270 driver
157 depends on MPC8610_HPCD && I2C
Shawn Guod61e1122012-03-16 16:56:37 +0800158 select SND_SOC_FSL_SSI
Shawn Guo60aae8d2012-03-16 16:56:40 +0800159 select SND_SOC_FSL_UTILS
Shawn Guod61e1122012-03-16 16:56:37 +0800160 select SND_SOC_POWERPC_DMA
Timur Tabi17467f22008-01-11 18:15:26 +0100161 select SND_SOC_CS4270
162 select SND_SOC_CS4270_VD33_ERRATA
163 default y if MPC8610_HPCD
164 help
165 Say Y if you want to enable audio on the Freescale MPC8610 HPCD.
Grant Likelydc641372008-07-29 11:42:30 +0100166
Timur Tabi27ef3742010-08-19 17:11:40 -0500167config SND_SOC_P1022_DS
168 tristate "ALSA SoC support for the Freescale P1022 DS board"
169 # I2C is necessary for the WM8776 driver
170 depends on P1022_DS && I2C
Shawn Guod61e1122012-03-16 16:56:37 +0800171 select SND_SOC_FSL_SSI
Shawn Guo60aae8d2012-03-16 16:56:40 +0800172 select SND_SOC_FSL_UTILS
Shawn Guod61e1122012-03-16 16:56:37 +0800173 select SND_SOC_POWERPC_DMA
Timur Tabi27ef3742010-08-19 17:11:40 -0500174 select SND_SOC_WM8776
175 default y if P1022_DS
176 help
177 Say Y if you want to enable audio on the Freescale P1022 DS board.
178 This will also include the Wolfson Microelectronics WM8776 codec
179 driver.
180
Timur Tabi96a0af62012-10-12 14:09:18 -0500181config SND_SOC_P1022_RDK
182 tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board"
183 # I2C is necessary for the WM8960 driver
184 depends on P1022_RDK && I2C
185 select SND_SOC_FSL_SSI
186 select SND_SOC_FSL_UTILS
187 select SND_SOC_POWERPC_DMA
188 select SND_SOC_WM8960
189 default y if P1022_RDK
190 help
191 Say Y if you want to enable audio on the Freescale / iVeia
192 P1022 RDK board. This will also include the Wolfson
193 Microelectronics WM8960 codec driver.
194
Grant Likelydc641372008-07-29 11:42:30 +0100195config SND_SOC_MPC5200_I2S
196 tristate "Freescale MPC5200 PSC in I2S mode driver"
Takashi Iwai65746122009-05-04 16:03:21 +0200197 depends on PPC_MPC52xx && PPC_BESTCOMM
Jon Smirl89dd0842009-05-23 19:12:59 -0400198 select SND_MPC52xx_DMA
Grant Likely847cdf42008-11-14 05:19:00 -0700199 select PPC_BESTCOMM_GEN_BD
Grant Likelydc641372008-07-29 11:42:30 +0100200 help
201 Say Y here to support the MPC5200 PSCs in I2S mode.
Jon Smirl20d0e1522009-05-26 08:34:10 -0400202
203config SND_SOC_MPC5200_AC97
204 tristate "Freescale MPC5200 PSC in AC97 mode driver"
205 depends on PPC_MPC52xx && PPC_BESTCOMM
Grant Likely6a84c232009-06-28 01:41:52 -0600206 select SND_SOC_AC97_BUS
Jon Smirl20d0e1522009-05-26 08:34:10 -0400207 select SND_MPC52xx_DMA
208 select PPC_BESTCOMM_GEN_BD
209 help
210 Say Y here to support the MPC5200 PSCs in AC97 mode.
211
Jon Smirla9262c42009-05-26 08:34:12 -0400212config SND_MPC52xx_SOC_PCM030
213 tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712"
Grant Likely40d9ec12009-06-28 01:42:06 -0600214 depends on PPC_MPC5200_SIMPLE
Jon Smirla9262c42009-05-26 08:34:12 -0400215 select SND_SOC_MPC5200_AC97
216 select SND_SOC_WM9712
217 help
Mark Brown0c0e09e2009-05-26 21:14:59 +0100218 Say Y if you want to add support for sound on the Phytec pcm030
219 baseboard.
Jon Smirl20d0e1522009-05-26 08:34:10 -0400220
Jon Smirl6ffee432009-05-26 08:34:14 -0400221config SND_MPC52xx_SOC_EFIKA
222 tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
Grant Likely40d9ec12009-06-28 01:42:06 -0600223 depends on PPC_EFIKA
Jon Smirl6ffee432009-05-26 08:34:14 -0400224 select SND_SOC_MPC5200_AC97
225 select SND_SOC_STAC9766
226 help
227 Say Y if you want to add support for sound on the Efika.
228
Shawn Guoa23dc692012-03-16 16:56:38 +0800229endif # SND_POWERPC_SOC
230
Arnd Bergmannea751222019-04-16 15:12:23 +0200231config SND_SOC_IMX_PCM_FIQ
232 tristate
Fabio Estevamc31da0b2020-11-10 17:39:37 -0300233 default y if (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC)
Arnd Bergmannea751222019-04-16 15:12:23 +0200234 select FIQ
235
Shawn Guoa23dc692012-03-16 16:56:38 +0800236if SND_IMX_SOC
237
Alexander Shiyaneba9e062014-03-16 08:21:34 +0400238comment "SoC Audio support for Freescale i.MX boards:"
Shawn Guoa23dc692012-03-16 16:56:38 +0800239
Shawn Guoa23dc692012-03-16 16:56:38 +0800240config SND_SOC_EUKREA_TLV320
241 tristate "Eukrea TLV320"
Fabio Estevamadd68832018-12-13 00:08:38 -0200242 depends on ARCH_MXC && !ARM64 && I2C
Max Filippovcc1bc542014-03-06 14:04:42 +0400243 select SND_SOC_TLV320AIC23_I2C
Shawn Guoa23dc692012-03-16 16:56:38 +0800244 select SND_SOC_IMX_AUDMUX
Denis Carikli66f23292014-01-15 18:23:25 +0100245 select SND_SOC_FSL_SSI
246 select SND_SOC_IMX_PCM_DMA
Shawn Guoa23dc692012-03-16 16:56:38 +0800247 help
248 Enable I2S based access to the TLV320AIC23B codec attached
249 to the SSI interface
250
Sean Cross7e7292d2014-07-31 10:43:37 +0800251config SND_SOC_IMX_ES8328
252 tristate "SoC Audio support for i.MX boards with the ES8328 codec"
253 depends on OF && (I2C || SPI)
254 select SND_SOC_ES8328_I2C if I2C
255 select SND_SOC_ES8328_SPI if SPI_MASTER
256 select SND_SOC_IMX_PCM_DMA
257 select SND_SOC_IMX_AUDMUX
258 select SND_SOC_FSL_SSI
Sean Cross7e7292d2014-07-31 10:43:37 +0800259 help
260 Say Y if you want to add support for the ES8328 audio codec connected
261 via SSI/I2S over either SPI or I2C.
262
Shawn Guoc4483032012-03-16 16:56:44 +0800263config SND_SOC_IMX_SGTL5000
264 tristate "SoC Audio support for i.MX boards with sgtl5000"
265 depends on OF && I2C
266 select SND_SOC_SGTL5000
267 select SND_SOC_IMX_PCM_DMA
268 select SND_SOC_IMX_AUDMUX
269 select SND_SOC_FSL_SSI
Shawn Guoc4483032012-03-16 16:56:44 +0800270 help
271 Say Y if you want to add support for SoC audio on an i.MX board with
272 a sgtl5000 codec.
273
Nicolin Chen2a956ec2013-08-28 12:04:46 +0800274config SND_SOC_IMX_SPDIF
275 tristate "SoC Audio support for i.MX boards with S/PDIF"
276 select SND_SOC_IMX_PCM_DMA
277 select SND_SOC_FSL_SPDIF
Nicolin Chen2a956ec2013-08-28 12:04:46 +0800278 help
279 SoC Audio support for i.MX boards with S/PDIF
280 Say Y if you want to add support for SoC audio on an i.MX board with
281 a S/DPDIF.
282
Shengjiu Wang38c6e4b2014-08-19 17:36:41 +0800283config SND_SOC_FSL_ASOC_CARD
284 tristate "Generic ASoC Sound Card with ASRC support"
285 depends on OF && I2C
Arnd Bergmannab07eae2015-11-24 23:21:10 +0100286 # enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
287 depends on SND_AC97_CODEC || SND_AC97_CODEC=n
Shengjiu Wang3b171192020-07-15 22:09:39 +0800288 select SND_SIMPLE_CARD_UTILS
Shengjiu Wang38c6e4b2014-08-19 17:36:41 +0800289 select SND_SOC_IMX_AUDMUX
290 select SND_SOC_IMX_PCM_DMA
291 select SND_SOC_FSL_ESAI
292 select SND_SOC_FSL_SAI
293 select SND_SOC_FSL_SSI
Shengjiu Wangefd0b162021-03-17 21:05:02 +0800294 select SND_SOC_WM8994
295 select MFD_WM8994
Shengjiu Wang38c6e4b2014-08-19 17:36:41 +0800296 help
297 ALSA SoC Audio support with ASRC feature for Freescale SoCs that have
Felipe F. Tonello57e756d2016-01-29 11:01:00 +0000298 ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888,
Matthias Schifferb5074752020-08-21 09:11:53 +0200299 CS4271, CS4272, SGTL5000 and TLV320AIC32x4.
Shengjiu Wang38c6e4b2014-08-19 17:36:41 +0800300 Say Y if you want to add support for Freescale Generic ASoC Sound Card.
301
Viorel Sumanb86ef532019-01-22 11:14:30 +0000302config SND_SOC_IMX_AUDMIX
303 tristate "SoC Audio support for i.MX boards with AUDMIX"
304 select SND_SOC_FSL_AUDMIX
305 select SND_SOC_FSL_SAI
306 help
307 SoC Audio support for i.MX boards with Audio Mixer
308 Say Y if you want to add support for SoC audio on an i.MX board with
309 an Audio Mixer.
310
Shengjiu Wang6a5f8502020-12-06 18:41:59 +0800311config SND_SOC_IMX_HDMI
312 tristate "SoC Audio support for i.MX boards with HDMI port"
313 select SND_SOC_FSL_SAI
314 select SND_SOC_FSL_AUD2HTX
315 select SND_SOC_HDMI_CODEC
316 help
317 ALSA SoC Audio support with HDMI feature for Freescale SoCs that have
318 SAI/AUD2HTX and connect with internal HDMI IP or external module
319 SII902X.
320 Say Y if you want to add support for SoC audio on an i.MX board with
321 IMX HDMI.
322
Shawn Guoa23dc692012-03-16 16:56:38 +0800323endif # SND_IMX_SOC
Alexander Shiyaneba9e062014-03-16 08:21:34 +0400324
325endmenu