xref: /linux/sound/soc/codecs/Kconfig (revision 679d7abdc7543e56abc41b8f4858f31a91259b29)
1# Helper to resolve issues with configs that have SPI enabled but I2C
2# modular, meaning we can't build the codec driver in with I2C support.
3# We use an ordered list of conditional defaults to pick the appropriate
4# setting - SPI can't be modular so that case doesn't need to be covered.
5config SND_SOC_I2C_AND_SPI
6	tristate
7	default m if I2C=m
8	default y if I2C=y
9	default y if SPI_MASTER=y
10
11config SND_SOC_ALL_CODECS
12	tristate "Build all ASoC CODEC drivers"
13	select SND_SOC_88PM860X if MFD_88PM860X
14	select SND_SOC_L3
15	select SND_SOC_AB8500_CODEC if ABX500_CORE
16	select SND_SOC_AC97_CODEC if SND_SOC_AC97_BUS
17	select SND_SOC_AD1836 if SPI_MASTER
18	select SND_SOC_AD193X if SND_SOC_I2C_AND_SPI
19	select SND_SOC_AD1980 if SND_SOC_AC97_BUS
20	select SND_SOC_AD73311
21	select SND_SOC_ADAU1373 if I2C
22	select SND_SOC_ADAV80X
23	select SND_SOC_ADS117X
24	select SND_SOC_AK4104 if SPI_MASTER
25	select SND_SOC_AK4535 if I2C
26	select SND_SOC_AK4641 if I2C
27	select SND_SOC_AK4642 if I2C
28	select SND_SOC_AK4671 if I2C
29	select SND_SOC_ALC5623 if I2C
30	select SND_SOC_ALC5632 if I2C
31	select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC
32	select SND_SOC_CS42L51 if I2C
33	select SND_SOC_CS42L52 if I2C
34	select SND_SOC_CS42L73 if I2C
35	select SND_SOC_CS4270 if I2C
36	select SND_SOC_CS4271 if SND_SOC_I2C_AND_SPI
37	select SND_SOC_CX20442
38	select SND_SOC_DA7210 if I2C
39	select SND_SOC_DFBMCS320
40	select SND_SOC_ISABELLE if I2C
41	select SND_SOC_JZ4740_CODEC
42	select SND_SOC_LM4857 if I2C
43	select SND_SOC_LM49453 if I2C
44	select SND_SOC_MAX98088 if I2C
45	select SND_SOC_MAX98095 if I2C
46	select SND_SOC_MAX9850 if I2C
47	select SND_SOC_MAX9768 if I2C
48	select SND_SOC_MAX9877 if I2C
49	select SND_SOC_MC13783 if MFD_MC13XXX
50	select SND_SOC_ML26124 if I2C
51	select SND_SOC_OMAP_HDMI_CODEC if OMAP4_DSS_HDMI
52	select SND_SOC_PCM3008
53	select SND_SOC_RT5631 if I2C
54	select SND_SOC_SGTL5000 if I2C
55	select SND_SOC_SN95031 if INTEL_SCU_IPC
56	select SND_SOC_SPDIF
57	select SND_SOC_SSM2602 if SND_SOC_I2C_AND_SPI
58	select SND_SOC_STA32X if I2C
59	select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
60	select SND_SOC_TLV320AIC23 if I2C
61	select SND_SOC_TLV320AIC26 if SPI_MASTER
62	select SND_SOC_TLV320AIC32X4 if I2C
63	select SND_SOC_TLV320AIC3X if I2C
64	select SND_SOC_TPA6130A2 if I2C
65	select SND_SOC_TLV320DAC33 if I2C
66	select SND_SOC_TWL4030 if TWL4030_CORE
67	select SND_SOC_TWL6040 if TWL6040_CORE
68	select SND_SOC_UDA134X
69	select SND_SOC_UDA1380 if I2C
70	select SND_SOC_WL1273 if MFD_WL1273_CORE
71	select SND_SOC_WM1250_EV1 if I2C
72	select SND_SOC_WM2000 if I2C
73	select SND_SOC_WM2200 if I2C
74	select SND_SOC_WM5100 if I2C
75	select SND_SOC_WM8350 if MFD_WM8350
76	select SND_SOC_WM8400 if MFD_WM8400
77	select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
78	select SND_SOC_WM8523 if I2C
79	select SND_SOC_WM8580 if I2C
80	select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
81	select SND_SOC_WM8727
82	select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
83	select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
84	select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
85	select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
86	select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
87	select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
88	select SND_SOC_WM8770 if SPI_MASTER
89	select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
90	select SND_SOC_WM8782
91	select SND_SOC_WM8804 if SND_SOC_I2C_AND_SPI
92	select SND_SOC_WM8900 if I2C
93	select SND_SOC_WM8903 if I2C
94	select SND_SOC_WM8904 if I2C
95	select SND_SOC_WM8940 if I2C
96	select SND_SOC_WM8955 if I2C
97	select SND_SOC_WM8960 if I2C
98	select SND_SOC_WM8961 if I2C
99	select SND_SOC_WM8962 if I2C
100	select SND_SOC_WM8971 if I2C
101	select SND_SOC_WM8974 if I2C
102	select SND_SOC_WM8978 if I2C
103	select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
104	select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
105	select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
106	select SND_SOC_WM8990 if I2C
107	select SND_SOC_WM8991 if I2C
108	select SND_SOC_WM8993 if I2C
109	select SND_SOC_WM8994 if MFD_WM8994
110	select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
111	select SND_SOC_WM8996 if I2C
112	select SND_SOC_WM9081 if I2C
113	select SND_SOC_WM9090 if I2C
114	select SND_SOC_WM9705 if SND_SOC_AC97_BUS
115	select SND_SOC_WM9712 if SND_SOC_AC97_BUS
116	select SND_SOC_WM9713 if SND_SOC_AC97_BUS
117        help
118          Normally ASoC codec drivers are only built if a machine driver which
119          uses them is also built since they are only usable with a machine
120          driver.  Selecting this option will allow these drivers to be built
121          without an explicit machine driver for test and development purposes.
122
123	  Support for the bus types used to access the codecs to be built must
124	  be selected separately.
125
126          If unsure select "N".
127
128config SND_SOC_88PM860X
129	tristate
130
131config SND_SOC_WM_HUBS
132	tristate
133	default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
134	default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
135
136config SND_SOC_AB8500_CODEC
137	tristate
138
139config SND_SOC_AC97_CODEC
140	tristate
141	select SND_AC97_CODEC
142
143config SND_SOC_AD1836
144	tristate
145
146config SND_SOC_AD193X
147	tristate
148
149config SND_SOC_AD1980
150	tristate
151
152config SND_SOC_AD73311
153	tristate
154
155config SND_SOC_ADAU1701
156	select SND_SOC_SIGMADSP
157	tristate
158
159config SND_SOC_ADAU1373
160	tristate
161
162config SND_SOC_ADAV80X
163	tristate
164
165config SND_SOC_ADS117X
166	tristate
167
168config SND_SOC_AK4104
169	tristate
170
171config SND_SOC_AK4535
172	tristate
173
174config SND_SOC_AK4641
175	tristate
176
177config SND_SOC_AK4642
178	tristate
179
180config SND_SOC_AK4671
181	tristate
182
183config SND_SOC_ALC5623
184       tristate
185config SND_SOC_ALC5632
186	tristate
187
188config SND_SOC_CQ0093VC
189	tristate
190
191config SND_SOC_CS42L51
192	tristate
193
194config SND_SOC_CS42L52
195	tristate
196
197config SND_SOC_CS42L73
198	tristate
199
200# Cirrus Logic CS4270 Codec
201config SND_SOC_CS4270
202	tristate
203
204# Cirrus Logic CS4270 Codec VD = 3.3V Errata
205# Select if you are affected by the errata where the part will not function
206# if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
207# not select any sample rates that require MCLK to be divided by 1.5.
208config SND_SOC_CS4270_VD33_ERRATA
209	bool
210	depends on SND_SOC_CS4270
211
212config SND_SOC_CS4271
213	tristate
214
215config SND_SOC_CX20442
216	tristate
217
218config SND_SOC_JZ4740_CODEC
219	tristate
220
221config SND_SOC_L3
222       tristate
223
224config SND_SOC_DA7210
225        tristate
226
227config SND_SOC_DFBMCS320
228	tristate
229
230config SND_SOC_DMIC
231	tristate
232
233config SND_SOC_ISABELLE
234        tristate
235
236config SND_SOC_LM49453
237	tristate
238
239config SND_SOC_MAX98088
240       tristate
241
242config SND_SOC_MAX98095
243       tristate
244
245config SND_SOC_MAX9850
246	tristate
247
248config SND_SOC_OMAP_HDMI_CODEC
249       tristate
250
251config SND_SOC_PCM3008
252       tristate
253
254config SND_SOC_RT5631
255	tristate
256
257#Freescale sgtl5000 codec
258config SND_SOC_SGTL5000
259	tristate
260
261config SND_SOC_SIGMADSP
262	tristate
263	select CRC32
264
265config SND_SOC_SN95031
266	tristate
267
268config SND_SOC_SPDIF
269	tristate
270
271config SND_SOC_SSM2602
272	tristate
273
274config SND_SOC_STA32X
275	tristate
276
277config SND_SOC_STAC9766
278	tristate
279
280config SND_SOC_TLV320AIC23
281	tristate
282
283config SND_SOC_TLV320AIC26
284	tristate "TI TLV320AIC26 Codec support" if SND_SOC_OF_SIMPLE
285	depends on SPI
286
287config SND_SOC_TLV320AIC32X4
288	tristate
289
290config SND_SOC_TLV320AIC3X
291	tristate
292
293config SND_SOC_TLV320DAC33
294	tristate
295
296config SND_SOC_TWL4030
297	select MFD_TWL4030_AUDIO
298	tristate
299
300config SND_SOC_TWL6040
301	tristate
302
303config SND_SOC_UDA134X
304       tristate
305
306config SND_SOC_UDA1380
307        tristate
308
309config SND_SOC_WL1273
310	tristate
311
312config SND_SOC_WM1250_EV1
313	tristate
314
315config SND_SOC_WM2000
316	tristate
317
318config SND_SOC_WM2200
319	tristate
320
321config SND_SOC_WM5100
322	tristate
323
324config SND_SOC_WM8350
325	tristate
326
327config SND_SOC_WM8400
328	tristate
329
330config SND_SOC_WM8510
331	tristate
332
333config SND_SOC_WM8523
334	tristate
335
336config SND_SOC_WM8580
337	tristate
338
339config SND_SOC_WM8711
340	tristate
341
342config SND_SOC_WM8727
343	tristate
344
345config SND_SOC_WM8728
346	tristate
347
348config SND_SOC_WM8731
349	tristate
350
351config SND_SOC_WM8737
352	tristate
353
354config SND_SOC_WM8741
355	tristate
356
357config SND_SOC_WM8750
358	tristate
359
360config SND_SOC_WM8753
361	tristate
362
363config SND_SOC_WM8770
364	tristate
365
366config SND_SOC_WM8776
367	tristate
368
369config SND_SOC_WM8782
370	tristate
371
372config SND_SOC_WM8804
373	tristate
374
375config SND_SOC_WM8900
376	tristate
377
378config SND_SOC_WM8903
379	tristate
380
381config SND_SOC_WM8904
382	tristate
383
384config SND_SOC_WM8940
385        tristate
386
387config SND_SOC_WM8955
388	tristate
389
390config SND_SOC_WM8960
391	tristate
392
393config SND_SOC_WM8961
394	tristate
395
396config SND_SOC_WM8962
397	tristate
398
399config SND_SOC_WM8971
400	tristate
401
402config SND_SOC_WM8974
403	tristate
404
405config SND_SOC_WM8978
406	tristate
407
408config SND_SOC_WM8983
409	tristate
410
411config SND_SOC_WM8985
412	tristate
413
414config SND_SOC_WM8988
415	tristate
416
417config SND_SOC_WM8990
418	tristate
419
420config SND_SOC_WM8991
421	tristate
422
423config SND_SOC_WM8993
424	tristate
425
426config SND_SOC_WM8994
427	tristate
428
429config SND_SOC_WM8995
430	tristate
431
432config SND_SOC_WM8996
433	tristate
434
435config SND_SOC_WM9081
436	tristate
437
438config SND_SOC_WM9090
439	tristate
440
441config SND_SOC_WM9705
442	tristate
443
444config SND_SOC_WM9712
445	tristate
446
447config SND_SOC_WM9713
448	tristate
449
450# Amp
451config SND_SOC_LM4857
452	tristate
453
454config SND_SOC_MAX9768
455	tristate
456
457config SND_SOC_MAX9877
458	tristate
459
460config SND_SOC_MC13783
461	tristate
462
463config SND_SOC_ML26124
464	tristate
465
466config SND_SOC_TPA6130A2
467	tristate
468