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