xref: /openbmc/linux/sound/soc/fsl/Kconfig (revision ed1666f6)
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_SSI
28	tristate "Synchronous Serial Interface module (SSI) support"
29	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
30	select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
31	select REGMAP_MMIO
32	help
33	  Say Y if you want to add Synchronous Serial Interface (SSI)
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
38config SND_SOC_FSL_SPDIF
39	tristate "Sony/Philips Digital Interface (S/PDIF) module support"
40	select REGMAP_MMIO
41	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
42	select SND_SOC_IMX_PCM_FIQ if SND_IMX_SOC != n && (MXC_TZIC || MXC_AVIC)
43	select BITREVERSE
44	help
45	  Say Y if you want to add Sony/Philips Digital Interface (SPDIF)
46	  support for the Freescale CPUs.
47	  This option is only useful for out-of-tree drivers since
48	  in-tree drivers select it automatically.
49
50config SND_SOC_FSL_ESAI
51	tristate "Enhanced Serial Audio Interface (ESAI) module support"
52	select REGMAP_MMIO
53	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
54	help
55	  Say Y if you want to add Enhanced Synchronous Audio Interface
56	  (ESAI) support for the Freescale CPUs.
57	  This option is only useful for out-of-tree drivers since
58	  in-tree drivers select it automatically.
59
60config SND_SOC_FSL_MICFIL
61	tristate "Pulse Density Modulation Microphone Interface (MICFIL) module support"
62	select REGMAP_MMIO
63	select SND_SOC_IMX_PCM_DMA if SND_IMX_SOC != n
64	select SND_SOC_GENERIC_DMAENGINE_PCM
65	help
66	  Say Y if you want to add Pulse Density Modulation microphone
67	  interface (MICFIL) support for NXP.
68
69config SND_SOC_FSL_UTILS
70	tristate
71
72config SND_SOC_IMX_PCM_DMA
73	tristate
74	select SND_SOC_GENERIC_DMAENGINE_PCM
75
76config SND_SOC_IMX_AUDMUX
77	tristate "Digital Audio Mux module support"
78	help
79	  Say Y if you want to add Digital Audio Mux (AUDMUX) support
80	  for the ARM i.MX CPUs.
81	  This option is only useful for out-of-tree drivers since
82	  in-tree drivers select it automatically.
83
84config SND_POWERPC_SOC
85	tristate "SoC Audio for Freescale PowerPC CPUs"
86	depends on FSL_SOC || PPC_MPC52xx
87	help
88	  Say Y or M if you want to add support for codecs attached to
89	  the PowerPC CPUs.
90
91config SND_IMX_SOC
92	tristate "SoC Audio for Freescale i.MX CPUs"
93	depends on ARCH_MXC || COMPILE_TEST
94	help
95	  Say Y or M if you want to add support for codecs attached to
96	  the i.MX CPUs.
97
98if SND_POWERPC_SOC
99
100config SND_MPC52xx_DMA
101	tristate
102
103config SND_SOC_POWERPC_DMA
104	tristate
105
106comment "SoC Audio support for Freescale PPC boards:"
107
108config SND_SOC_MPC8610_HPCD
109	tristate "ALSA SoC support for the Freescale MPC8610 HPCD board"
110	# I2C is necessary for the CS4270 driver
111	depends on MPC8610_HPCD && I2C
112	select SND_SOC_FSL_SSI
113	select SND_SOC_FSL_UTILS
114	select SND_SOC_POWERPC_DMA
115	select SND_SOC_CS4270
116	select SND_SOC_CS4270_VD33_ERRATA
117	default y if MPC8610_HPCD
118	help
119	  Say Y if you want to enable audio on the Freescale MPC8610 HPCD.
120
121config SND_SOC_P1022_DS
122	tristate "ALSA SoC support for the Freescale P1022 DS board"
123	# I2C is necessary for the WM8776 driver
124	depends on P1022_DS && I2C
125	select SND_SOC_FSL_SSI
126	select SND_SOC_FSL_UTILS
127	select SND_SOC_POWERPC_DMA
128	select SND_SOC_WM8776
129	default y if P1022_DS
130	help
131	  Say Y if you want to enable audio on the Freescale P1022 DS board.
132	  This will also include the Wolfson Microelectronics WM8776 codec
133	  driver.
134
135config SND_SOC_P1022_RDK
136	tristate "ALSA SoC support for the Freescale / iVeia P1022 RDK board"
137	# I2C is necessary for the WM8960 driver
138	depends on P1022_RDK && I2C
139	select SND_SOC_FSL_SSI
140	select SND_SOC_FSL_UTILS
141	select SND_SOC_POWERPC_DMA
142	select SND_SOC_WM8960
143	default y if P1022_RDK
144	help
145	  Say Y if you want to enable audio on the Freescale / iVeia
146	  P1022 RDK board.  This will also include the Wolfson
147	  Microelectronics WM8960 codec driver.
148
149config SND_SOC_MPC5200_I2S
150	tristate "Freescale MPC5200 PSC in I2S mode driver"
151	depends on PPC_MPC52xx && PPC_BESTCOMM
152	select SND_MPC52xx_DMA
153	select PPC_BESTCOMM_GEN_BD
154	help
155	  Say Y here to support the MPC5200 PSCs in I2S mode.
156
157config SND_SOC_MPC5200_AC97
158	tristate "Freescale MPC5200 PSC in AC97 mode driver"
159	depends on PPC_MPC52xx && PPC_BESTCOMM
160	select SND_SOC_AC97_BUS
161	select SND_MPC52xx_DMA
162	select PPC_BESTCOMM_GEN_BD
163	help
164	  Say Y here to support the MPC5200 PSCs in AC97 mode.
165
166config SND_MPC52xx_SOC_PCM030
167	tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712"
168	depends on PPC_MPC5200_SIMPLE
169	select SND_SOC_MPC5200_AC97
170	select SND_SOC_WM9712
171	help
172	  Say Y if you want to add support for sound on the Phytec pcm030
173	  baseboard.
174
175config SND_MPC52xx_SOC_EFIKA
176	tristate "SoC AC97 Audio support for bbplan Efika and STAC9766"
177	depends on PPC_EFIKA
178	select SND_SOC_MPC5200_AC97
179	select SND_SOC_STAC9766
180	help
181	  Say Y if you want to add support for sound on the Efika.
182
183endif # SND_POWERPC_SOC
184
185if SND_IMX_SOC
186
187config SND_SOC_IMX_SSI
188	tristate
189	select SND_SOC_FSL_UTILS
190
191config SND_SOC_IMX_PCM_FIQ
192	tristate
193	select FIQ
194
195comment "SoC Audio support for Freescale i.MX boards:"
196
197config SND_MXC_SOC_WM1133_EV1
198	tristate "Audio on the i.MX31ADS with WM1133-EV1 fitted"
199	depends on MACH_MX31ADS_WM1133_EV1
200	select SND_SOC_WM8350
201	select SND_SOC_IMX_PCM_FIQ
202	select SND_SOC_IMX_AUDMUX
203	select SND_SOC_IMX_SSI
204	help
205	  Enable support for audio on the i.MX31ADS with the WM1133-EV1
206	  PMIC board with WM8835x fitted.
207
208config SND_SOC_MX27VIS_AIC32X4
209	tristate "SoC audio support for Visstrim M10 boards"
210	depends on MACH_IMX27_VISSTRIM_M10 && I2C
211	select SND_SOC_TLV320AIC32X4
212	select SND_SOC_IMX_PCM_DMA
213	select SND_SOC_IMX_AUDMUX
214	select SND_SOC_IMX_SSI
215	help
216	  Say Y if you want to add support for SoC audio on Visstrim SM10
217	  board with TLV320AIC32X4 codec.
218
219config SND_SOC_PHYCORE_AC97
220	tristate "SoC Audio support for Phytec phyCORE (and phyCARD) boards"
221	depends on MACH_PCM043 || MACH_PCA100
222	select SND_SOC_AC97_BUS
223	select SND_SOC_WM9712
224	select SND_SOC_IMX_PCM_FIQ
225	select SND_SOC_IMX_AUDMUX
226	select SND_SOC_IMX_SSI
227	help
228	  Say Y if you want to add support for SoC audio on Phytec phyCORE
229	  and phyCARD boards in AC97 mode
230
231config SND_SOC_EUKREA_TLV320
232	tristate "Eukrea TLV320"
233	depends on ARCH_MXC && !ARM64 && I2C
234	select SND_SOC_TLV320AIC23_I2C
235	select SND_SOC_IMX_AUDMUX
236	select SND_SOC_IMX_SSI
237	select SND_SOC_FSL_SSI
238	select SND_SOC_IMX_PCM_DMA
239	help
240	  Enable I2S based access to the TLV320AIC23B codec attached
241	  to the SSI interface
242
243config SND_SOC_IMX_ES8328
244	tristate "SoC Audio support for i.MX boards with the ES8328 codec"
245	depends on OF && (I2C || SPI)
246	select SND_SOC_ES8328_I2C if I2C
247	select SND_SOC_ES8328_SPI if SPI_MASTER
248	select SND_SOC_IMX_PCM_DMA
249	select SND_SOC_IMX_AUDMUX
250	select SND_SOC_FSL_SSI
251	help
252	  Say Y if you want to add support for the ES8328 audio codec connected
253	  via SSI/I2S over either SPI or I2C.
254
255config SND_SOC_IMX_SGTL5000
256	tristate "SoC Audio support for i.MX boards with sgtl5000"
257	depends on OF && I2C
258	select SND_SOC_SGTL5000
259	select SND_SOC_IMX_PCM_DMA
260	select SND_SOC_IMX_AUDMUX
261	select SND_SOC_FSL_SSI
262	help
263	  Say Y if you want to add support for SoC audio on an i.MX board with
264	  a sgtl5000 codec.
265
266config SND_SOC_IMX_SPDIF
267	tristate "SoC Audio support for i.MX boards with S/PDIF"
268	select SND_SOC_IMX_PCM_DMA
269	select SND_SOC_FSL_SPDIF
270	help
271	  SoC Audio support for i.MX boards with S/PDIF
272	  Say Y if you want to add support for SoC audio on an i.MX board with
273	  a S/DPDIF.
274
275config SND_SOC_IMX_MC13783
276	tristate "SoC Audio support for I.MX boards with mc13783"
277	depends on MFD_MC13XXX && ARM
278	select SND_SOC_IMX_SSI
279	select SND_SOC_IMX_AUDMUX
280	select SND_SOC_MC13783
281	select SND_SOC_IMX_PCM_DMA
282
283config SND_SOC_FSL_ASOC_CARD
284	tristate "Generic ASoC Sound Card with ASRC support"
285	depends on OF && I2C
286	# enforce SND_SOC_FSL_ASOC_CARD=m if SND_AC97_CODEC=m:
287	depends on SND_AC97_CODEC || SND_AC97_CODEC=n
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
293	help
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 and SGTL5000.
297	 Say Y if you want to add support for Freescale Generic ASoC Sound Card.
298
299endif # SND_IMX_SOC
300
301endmenu
302