xref: /openbmc/linux/sound/soc/fsl/Kconfig (revision 2c64e9cb)
1menu "SoC Audio for Freescale CPUs"
2
3comment "Common SoC Audio options for Freescale CPUs:"
4
5config SND_SOC_FSL_ASRC
6	tristate "Asynchronous Sample Rate Converter (ASRC) module support"
7	depends on HAS_DMA
8	select REGMAP_MMIO
9	select SND_SOC_GENERIC_DMAENGINE_PCM
10	help
11	  Say Y if you want to add Asynchronous Sample Rate Converter (ASRC)
12	  support for the Freescale CPUs.
13	  This option is only useful for out-of-tree drivers since
14	  in-tree drivers select it automatically.
15
16config SND_SOC_FSL_SAI
17	tristate "Synchronous Audio Interface (SAI) module support"
18	select REGMAP_MMIO
19	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
20	select SND_SOC_GENERIC_DMAENGINE_PCM
21	help
22	  Say Y if you want to add Synchronous Audio Interface (SAI)
23	  support for the Freescale CPUs.
24	  This option is only useful for out-of-tree drivers since
25	  in-tree drivers select it automatically.
26
27config SND_SOC_FSL_AUDMIX
28	tristate "Audio Mixer (AUDMIX) module support"
29	select REGMAP_MMIO
30	help
31	  Say Y if you want to add Audio Mixer (AUDMIX)
32	  support for the NXP iMX CPUs.
33
34config SND_SOC_FSL_SSI
35	tristate "Synchronous Serial Interface module (SSI) support"
36	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
37	select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
38	select REGMAP_MMIO
39	help
40	  Say Y if you want to add Synchronous Serial Interface (SSI)
41	  support for the Freescale CPUs.
42	  This option is only useful for out-of-tree drivers since
43	  in-tree drivers select it automatically.
44
45config SND_SOC_FSL_SPDIF
46	tristate "Sony/Philips Digital Interface (S/PDIF) module support"
47	select REGMAP_MMIO
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 BITREVERSE
51	help
52	  Say Y if you want to add Sony/Philips Digital Interface (SPDIF)
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_ESAI
58	tristate "Enhanced Serial Audio Interface (ESAI) module support"
59	select REGMAP_MMIO
60	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
61	help
62	  Say Y if you want to add Enhanced Synchronous Audio Interface
63	  (ESAI) support for the Freescale CPUs.
64	  This option is only useful for out-of-tree drivers since
65	  in-tree drivers select it automatically.
66
67config SND_SOC_FSL_MICFIL
68	tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support"
69	select REGMAP_MMIO
70	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
71	select SND_SOC_GENERIC_DMAENGINE_PCM
72	help
73	  Say Y if you want to add Pulse Density Modulation microphone
74	  interface (MICFIL) support for NXP.
75
76config SND_SOC_FSL_UTILS
77	tristate
78
79config SND_SOC_IMX_PCM_DMA
80	tristate
81	select SND_SOC_GENERIC_DMAENGINE_PCM
82
83config SND_SOC_IMX_AUDMUX
84	tristate "Digital Audio Mux module support"
85	help
86	  Say Y if you want to add Digital Audio Mux (AUDMUX) support
87	  for the ARM i.MX CPUs.
88	  This option is only useful for out-of-tree drivers since
89	  in-tree drivers select it automatically.
90
91config SND_POWERPC_SOC
92	tristate "SoC Audio for Freescale PowerPC CPUs"
93	depends on FSL_SOC || PPC_MPC52xx
94	help
95	  Say Y or M if you want to add support for codecs attached to
96	  the PowerPC CPUs.
97
98config SND_IMX_SOC
99	tristate "SoC Audio for Freescale i.MX CPUs"
100	depends on ARCH_MXC || COMPILE_TEST
101	help
102	  Say Y or M if you want to add support for codecs attached to
103	  the i.MX CPUs.
104
105if SND_POWERPC_SOC
106
107config SND_MPC52xx_DMA
108	tristate
109
110config SND_SOC_POWERPC_DMA
111	tristate
112
113comment "SoC Audio support for Freescale PPC boards:"
114
115config SND_SOC_MPC8610_HPCD
116	tristate "ALSA SoC support for the Freescale MPC8610 HPCD board"
117	# I2C is necessary for the CS4270 driver
118	depends on MPC8610_HPCD && I2C
119	select SND_SOC_FSL_SSI
120	select SND_SOC_FSL_UTILS
121	select SND_SOC_POWERPC_DMA
122	select SND_SOC_CS4270
123	select SND_SOC_CS4270_VD33_ERRATA
124	default y if MPC8610_HPCD
125	help
126	  Say Y if you want to enable audio on the Freescale MPC8610 HPCD.
127
128config SND_SOC_P1022_DS
129	tristate "ALSA SoC support for the Freescale P1022 DS board"
130	# I2C is necessary for the WM8776 driver
131	depends on P1022_DS && I2C
132	select SND_SOC_FSL_SSI
133	select SND_SOC_FSL_UTILS
134	select SND_SOC_POWERPC_DMA
135	select SND_SOC_WM8776
136	default y if P1022_DS
137	help
138	  Say Y if you want to enable audio on the Freescale P1022 DS board.
139	  This will also include the Wolfson Microelectronics WM8776 codec
140	  driver.
141
142config SND_SOC_P1022_RDK
143	tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board"
144	# I2C is necessary for the WM8960 driver
145	depends on P1022_RDK && I2C
146	select SND_SOC_FSL_SSI
147	select SND_SOC_FSL_UTILS
148	select SND_SOC_POWERPC_DMA
149	select SND_SOC_WM8960
150	default y if P1022_RDK
151	help
152	  Say Y if you want to enable audio on the Freescale / iVeia
153	  P1022 RDK board.  This will also include the Wolfson
154	  Microelectronics WM8960 codec driver.
155
156config SND_SOC_MPC5200_I2S
157	tristate "Freescale MPC5200 PSC in I2S mode driver"
158	depends on PPC_MPC52xx && PPC_BESTCOMM
159	select SND_MPC52xx_DMA
160	select PPC_BESTCOMM_GEN_BD
161	help
162	  Say Y here to support the MPC5200 PSCs in I2S mode.
163
164config SND_SOC_MPC5200_AC97
165	tristate "Freescale MPC5200 PSC in AC97 mode driver"
166	depends on PPC_MPC52xx && PPC_BESTCOMM
167	select SND_SOC_AC97_BUS
168	select SND_MPC52xx_DMA
169	select PPC_BESTCOMM_GEN_BD
170	help
171	  Say Y here to support the MPC5200 PSCs in AC97 mode.
172
173config SND_MPC52xx_SOC_PCM030
174	tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712"
175	depends on PPC_MPC5200_SIMPLE
176	select SND_SOC_MPC5200_AC97
177	select SND_SOC_WM9712
178	help
179	  Say Y if you want to add support for sound on the Phytec pcm030
180	  baseboard.
181
182config SND_MPC52xx_SOC_EFIKA
183	tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
184	depends on PPC_EFIKA
185	select SND_SOC_MPC5200_AC97
186	select SND_SOC_STAC9766
187	help
188	  Say Y if you want to add support for sound on the Efika.
189
190endif # SND_POWERPC_SOC
191
192config SND_SOC_IMX_PCM_FIQ
193	tristate
194	default y if SND_SOC_IMX_SSI=y && (SND_SOC_FSL_SSI=m || SND_SOC_FSL_SPDIF=m) && (MXC_TZIC || MXC_AVIC)
195	select FIQ
196
197if SND_IMX_SOC
198
199config SND_SOC_IMX_SSI
200	tristate
201	select SND_SOC_FSL_UTILS
202
203comment "SoC Audio support for Freescale i.MX boards:"
204
205config SND_MXC_SOC_WM1133_EV1
206	tristate "Audio on the i.MX31ADS with WM1133-EV1 fitted"
207	depends on MACH_MX31ADS_WM1133_EV1
208	select SND_SOC_WM8350
209	select SND_SOC_IMX_PCM_FIQ
210	select SND_SOC_IMX_AUDMUX
211	select SND_SOC_IMX_SSI
212	help
213	  Enable support for audio on the i.MX31ADS with the WM1133-EV1
214	  PMIC board with WM8835x fitted.
215
216config SND_SOC_MX27VIS_AIC32X4
217	tristate "SoC audio support for Visstrim M10 boards"
218	depends on MACH_IMX27_VISSTRIM_M10 && I2C
219	select SND_SOC_TLV320AIC32X4
220	select SND_SOC_IMX_PCM_DMA
221	select SND_SOC_IMX_AUDMUX
222	select SND_SOC_IMX_SSI
223	help
224	  Say Y if you want to add support for SoC audio on Visstrim SM10
225	  board with TLV320AIC32X4 codec.
226
227config SND_SOC_PHYCORE_AC97
228	tristate "SoC Audio support for Phytec phyCORE (and phyCARD) boards"
229	depends on MACH_PCM043 || MACH_PCA100
230	select SND_SOC_AC97_BUS
231	select SND_SOC_WM9712
232	select SND_SOC_IMX_PCM_FIQ
233	select SND_SOC_IMX_AUDMUX
234	select SND_SOC_IMX_SSI
235	help
236	  Say Y if you want to add support for SoC audio on Phytec phyCORE
237	  and phyCARD boards in AC97 mode
238
239config 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_IMX_SSI
245	select SND_SOC_FSL_SSI
246	select SND_SOC_IMX_PCM_DMA
247	help
248	  Enable I2S based access to the TLV320AIC23B codec attached
249	  to the SSI interface
250
251config 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
259	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
263config 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
270	help
271	  Say Y if you want to add support for SoC audio on an i.MX board with
272	  a sgtl5000 codec.
273
274config 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
278	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
283config SND_SOC_IMX_MC13783
284	tristate "SoC Audio support for I.MX boards with mc13783"
285	depends on MFD_MC13XXX && ARM
286	select SND_SOC_IMX_SSI
287	select SND_SOC_IMX_AUDMUX
288	select SND_SOC_MC13783
289	select SND_SOC_IMX_PCM_DMA
290
291config SND_SOC_FSL_ASOC_CARD
292	tristate "Generic ASoC Sound Card with ASRC support"
293	depends on OF && I2C
294	# enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
295	depends on SND_AC97_CODEC || SND_AC97_CODEC=n
296	select SND_SOC_IMX_AUDMUX
297	select SND_SOC_IMX_PCM_DMA
298	select SND_SOC_FSL_ESAI
299	select SND_SOC_FSL_SAI
300	select SND_SOC_FSL_SSI
301	help
302	 ALSA SoC Audio support with ASRC feature for Freescale SoCs that have
303	 ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888,
304	 CS4271, CS4272 and SGTL5000.
305	 Say Y if you want to add support for Freescale Generic ASoC Sound Card.
306
307config SND_SOC_IMX_AUDMIX
308	tristate "SoC Audio support for i.MX boards with AUDMIX"
309	select SND_SOC_FSL_AUDMIX
310	select SND_SOC_FSL_SAI
311	help
312	  SoC Audio support for i.MX boards with Audio Mixer
313	  Say Y if you want to add support for SoC audio on an i.MX board with
314	  an Audio Mixer.
315
316endif # SND_IMX_SOC
317
318endmenu
319