Merge airlied/drm-next into drm-intel-next-queued
[linux-2.6-block.git] / sound / soc / codecs / Kconfig
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.
5 config 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
11 menu "CODEC drivers"
12
13 config SND_SOC_ALL_CODECS
14         tristate "Build all ASoC CODEC drivers"
15         depends on COMPILE_TEST
16         select SND_SOC_88PM860X if MFD_88PM860X
17         select SND_SOC_L3
18         select SND_SOC_AB8500_CODEC if ABX500_CORE
19         select SND_SOC_AC97_CODEC
20         select SND_SOC_AD1836 if SPI_MASTER
21         select SND_SOC_AD193X_SPI if SPI_MASTER
22         select SND_SOC_AD193X_I2C if I2C
23         select SND_SOC_AD1980 if SND_SOC_AC97_BUS
24         select SND_SOC_AD73311
25         select SND_SOC_ADAU1373 if I2C
26         select SND_SOC_ADAU1761_I2C if I2C
27         select SND_SOC_ADAU1761_SPI if SPI
28         select SND_SOC_ADAU1781_I2C if I2C
29         select SND_SOC_ADAU1781_SPI if SPI
30         select SND_SOC_ADAV801 if SPI_MASTER
31         select SND_SOC_ADAV803 if I2C
32         select SND_SOC_ADAU1977_SPI if SPI_MASTER
33         select SND_SOC_ADAU1977_I2C if I2C
34         select SND_SOC_ADAU1701 if I2C
35         select SND_SOC_ADAU7002
36         select SND_SOC_ADS117X
37         select SND_SOC_AK4104 if SPI_MASTER
38         select SND_SOC_AK4535 if I2C
39         select SND_SOC_AK4554
40         select SND_SOC_AK4613 if I2C
41         select SND_SOC_AK4641 if I2C
42         select SND_SOC_AK4642 if I2C
43         select SND_SOC_AK4671 if I2C
44         select SND_SOC_AK5386
45         select SND_SOC_ALC5623 if I2C
46         select SND_SOC_ALC5632 if I2C
47         select SND_SOC_BT_SCO
48         select SND_SOC_CQ0093VC
49         select SND_SOC_CS35L32 if I2C
50         select SND_SOC_CS35L33 if I2C
51         select SND_SOC_CS35L34 if I2C
52         select SND_SOC_CS35L35 if I2C
53         select SND_SOC_CS42L42 if I2C
54         select SND_SOC_CS42L51_I2C if I2C
55         select SND_SOC_CS42L52 if I2C && INPUT
56         select SND_SOC_CS42L56 if I2C && INPUT
57         select SND_SOC_CS42L73 if I2C
58         select SND_SOC_CS4265 if I2C
59         select SND_SOC_CS4270 if I2C
60         select SND_SOC_CS4271_I2C if I2C
61         select SND_SOC_CS4271_SPI if SPI_MASTER
62         select SND_SOC_CS42XX8_I2C if I2C
63         select SND_SOC_CS43130 if I2C
64         select SND_SOC_CS4349 if I2C
65         select SND_SOC_CS47L24 if MFD_CS47L24
66         select SND_SOC_CS53L30 if I2C
67         select SND_SOC_CX20442 if TTY
68         select SND_SOC_DA7210 if SND_SOC_I2C_AND_SPI
69         select SND_SOC_DA7213 if I2C
70         select SND_SOC_DA7218 if I2C
71         select SND_SOC_DA7219 if I2C
72         select SND_SOC_DA732X if I2C
73         select SND_SOC_DA9055 if I2C
74         select SND_SOC_DIO2125
75         select SND_SOC_DMIC if GPIOLIB
76         select SND_SOC_ES8316 if I2C
77         select SND_SOC_ES8328_SPI if SPI_MASTER
78         select SND_SOC_ES8328_I2C if I2C
79         select SND_SOC_ES7134
80         select SND_SOC_GTM601
81         select SND_SOC_HDAC_HDMI
82         select SND_SOC_ICS43432
83         select SND_SOC_INNO_RK3036
84         select SND_SOC_ISABELLE if I2C
85         select SND_SOC_JZ4740_CODEC
86         select SND_SOC_LM4857 if I2C
87         select SND_SOC_LM49453 if I2C
88         select SND_SOC_MAX98088 if I2C
89         select SND_SOC_MAX98090 if I2C
90         select SND_SOC_MAX98095 if I2C
91         select SND_SOC_MAX98357A if GPIOLIB
92         select SND_SOC_MAX98371 if I2C
93         select SND_SOC_MAX98504 if I2C
94         select SND_SOC_MAX9867 if I2C
95         select SND_SOC_MAX98925 if I2C
96         select SND_SOC_MAX98926 if I2C
97         select SND_SOC_MAX98927 if I2C
98         select SND_SOC_MAX9850 if I2C
99         select SND_SOC_MAX9860 if I2C
100         select SND_SOC_MAX9768 if I2C
101         select SND_SOC_MAX9877 if I2C
102         select SND_SOC_MC13783 if MFD_MC13XXX
103         select SND_SOC_ML26124 if I2C
104         select SND_SOC_NAU8540 if I2C
105         select SND_SOC_NAU8810 if I2C
106         select SND_SOC_NAU8824 if I2C
107         select SND_SOC_NAU8825 if I2C
108         select SND_SOC_HDMI_CODEC
109         select SND_SOC_PCM1681 if I2C
110         select SND_SOC_PCM179X_I2C if I2C
111         select SND_SOC_PCM179X_SPI if SPI_MASTER
112         select SND_SOC_PCM3008
113         select SND_SOC_PCM3168A_I2C if I2C
114         select SND_SOC_PCM3168A_SPI if SPI_MASTER
115         select SND_SOC_PCM5102A
116         select SND_SOC_PCM512x_I2C if I2C
117         select SND_SOC_PCM512x_SPI if SPI_MASTER
118         select SND_SOC_RT274 if I2C
119         select SND_SOC_RT286 if I2C
120         select SND_SOC_RT298 if I2C
121         select SND_SOC_RT5514 if I2C
122         select SND_SOC_RT5616 if I2C
123         select SND_SOC_RT5631 if I2C
124         select SND_SOC_RT5640 if I2C
125         select SND_SOC_RT5645 if I2C
126         select SND_SOC_RT5651 if I2C
127         select SND_SOC_RT5659 if I2C
128         select SND_SOC_RT5660 if I2C
129         select SND_SOC_RT5663 if I2C
130         select SND_SOC_RT5665 if I2C
131         select SND_SOC_RT5670 if I2C
132         select SND_SOC_RT5677 if I2C && SPI_MASTER
133         select SND_SOC_SGTL5000 if I2C
134         select SND_SOC_SI476X if MFD_SI476X_CORE
135         select SND_SOC_SIRF_AUDIO_CODEC
136         select SND_SOC_SN95031 if INTEL_SCU_IPC
137         select SND_SOC_SPDIF
138         select SND_SOC_SSM2518 if I2C
139         select SND_SOC_SSM2602_SPI if SPI_MASTER
140         select SND_SOC_SSM2602_I2C if I2C
141         select SND_SOC_SSM4567 if I2C
142         select SND_SOC_STA32X if I2C
143         select SND_SOC_STA350 if I2C
144         select SND_SOC_STA529 if I2C
145         select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
146         select SND_SOC_STI_SAS
147         select SND_SOC_TAS2552 if I2C
148         select SND_SOC_TAS5086 if I2C
149         select SND_SOC_TAS571X if I2C
150         select SND_SOC_TAS5720 if I2C
151         select SND_SOC_TFA9879 if I2C
152         select SND_SOC_TLV320AIC23_I2C if I2C
153         select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
154         select SND_SOC_TLV320AIC26 if SPI_MASTER
155         select SND_SOC_TLV320AIC31XX if I2C
156         select SND_SOC_TLV320AIC32X4_I2C if I2C
157         select SND_SOC_TLV320AIC32X4_SPI if SPI_MASTER
158         select SND_SOC_TLV320AIC3X if I2C
159         select SND_SOC_TPA6130A2 if I2C
160         select SND_SOC_TLV320DAC33 if I2C
161         select SND_SOC_TS3A227E if I2C
162         select SND_SOC_TWL4030 if TWL4030_CORE
163         select SND_SOC_TWL6040 if TWL6040_CORE
164         select SND_SOC_UDA134X
165         select SND_SOC_UDA1380 if I2C
166         select SND_SOC_WL1273 if MFD_WL1273_CORE
167         select SND_SOC_WM0010 if SPI_MASTER
168         select SND_SOC_WM1250_EV1 if I2C
169         select SND_SOC_WM2000 if I2C
170         select SND_SOC_WM2200 if I2C
171         select SND_SOC_WM5100 if I2C
172         select SND_SOC_WM5102 if MFD_WM5102
173         select SND_SOC_WM5110 if MFD_WM5110
174         select SND_SOC_WM8350 if MFD_WM8350
175         select SND_SOC_WM8400 if MFD_WM8400
176         select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
177         select SND_SOC_WM8523 if I2C
178         select SND_SOC_WM8524 if GPIOLIB
179         select SND_SOC_WM8580 if I2C
180         select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
181         select SND_SOC_WM8727
182         select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
183         select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
184         select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
185         select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
186         select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
187         select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
188         select SND_SOC_WM8770 if SPI_MASTER
189         select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
190         select SND_SOC_WM8782
191         select SND_SOC_WM8804_I2C if I2C
192         select SND_SOC_WM8804_SPI if SPI_MASTER
193         select SND_SOC_WM8900 if I2C
194         select SND_SOC_WM8903 if I2C
195         select SND_SOC_WM8904 if I2C
196         select SND_SOC_WM8940 if I2C
197         select SND_SOC_WM8955 if I2C
198         select SND_SOC_WM8960 if I2C
199         select SND_SOC_WM8961 if I2C
200         select SND_SOC_WM8962 if I2C && INPUT
201         select SND_SOC_WM8971 if I2C
202         select SND_SOC_WM8974 if I2C
203         select SND_SOC_WM8978 if I2C
204         select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
205         select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
206         select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
207         select SND_SOC_WM8990 if I2C
208         select SND_SOC_WM8991 if I2C
209         select SND_SOC_WM8993 if I2C
210         select SND_SOC_WM8994 if MFD_WM8994
211         select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
212         select SND_SOC_WM8996 if I2C
213         select SND_SOC_WM8997 if MFD_WM8997
214         select SND_SOC_WM8998 if MFD_WM8998
215         select SND_SOC_WM9081 if I2C
216         select SND_SOC_WM9090 if I2C
217         select SND_SOC_WM9705 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
218         select SND_SOC_WM9712 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
219         select SND_SOC_WM9713 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
220         help
221           Normally ASoC codec drivers are only built if a machine driver which
222           uses them is also built since they are only usable with a machine
223           driver.  Selecting this option will allow these drivers to be built
224           without an explicit machine driver for test and development purposes.
225
226           Support for the bus types used to access the codecs to be built must
227           be selected separately.
228
229           If unsure select "N".
230
231 config SND_SOC_88PM860X
232         tristate
233
234 config SND_SOC_ARIZONA
235         tristate
236         default y if SND_SOC_CS47L24=y
237         default y if SND_SOC_WM5102=y
238         default y if SND_SOC_WM5110=y
239         default y if SND_SOC_WM8997=y
240         default y if SND_SOC_WM8998=y
241         default m if SND_SOC_CS47L24=m
242         default m if SND_SOC_WM5102=m
243         default m if SND_SOC_WM5110=m
244         default m if SND_SOC_WM8997=m
245         default m if SND_SOC_WM8998=m
246
247 config SND_SOC_WM_HUBS
248         tristate
249         default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
250         default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
251
252 config SND_SOC_WM_ADSP
253         tristate
254         select SND_SOC_COMPRESS
255         default y if SND_SOC_CS47L24=y
256         default y if SND_SOC_WM5102=y
257         default y if SND_SOC_WM5110=y
258         default y if SND_SOC_WM2200=y
259         default m if SND_SOC_CS47L24=m
260         default m if SND_SOC_WM5102=m
261         default m if SND_SOC_WM5110=m
262         default m if SND_SOC_WM2200=m
263
264 config SND_SOC_AB8500_CODEC
265         tristate
266
267 config SND_SOC_AC97_CODEC
268         tristate "Build generic ASoC AC97 CODEC driver"
269         select SND_AC97_CODEC
270         select SND_SOC_AC97_BUS
271
272 config SND_SOC_AD1836
273         tristate
274
275 config SND_SOC_AD193X
276         tristate
277
278 config SND_SOC_AD193X_SPI
279         tristate
280         select SND_SOC_AD193X
281
282 config SND_SOC_AD193X_I2C
283         tristate
284         select SND_SOC_AD193X
285
286 config SND_SOC_AD1980
287         select REGMAP_AC97
288         tristate
289
290 config SND_SOC_AD73311
291         tristate
292
293 config SND_SOC_ADAU_UTILS
294         tristate
295
296 config SND_SOC_ADAU1373
297         tristate
298         select SND_SOC_ADAU_UTILS
299
300 config SND_SOC_ADAU1701
301         tristate "Analog Devices ADAU1701 CODEC"
302         depends on I2C
303         select SND_SOC_SIGMADSP_I2C
304
305 config SND_SOC_ADAU17X1
306         tristate
307         select SND_SOC_SIGMADSP_REGMAP
308         select SND_SOC_ADAU_UTILS
309
310 config SND_SOC_ADAU1761
311         tristate
312         select SND_SOC_ADAU17X1
313
314 config SND_SOC_ADAU1761_I2C
315         tristate "Analog Devices AU1761 CODEC - I2C"
316         depends on I2C
317         select SND_SOC_ADAU1761
318         select REGMAP_I2C
319
320 config SND_SOC_ADAU1761_SPI
321         tristate "Analog Devices AU1761 CODEC - SPI"
322         depends on SPI
323         select SND_SOC_ADAU1761
324         select REGMAP_SPI
325
326 config SND_SOC_ADAU1781
327         select SND_SOC_ADAU17X1
328         tristate
329
330 config SND_SOC_ADAU1781_I2C
331         tristate
332         select SND_SOC_ADAU1781
333         select REGMAP_I2C
334
335 config SND_SOC_ADAU1781_SPI
336         tristate
337         select SND_SOC_ADAU1781
338         select REGMAP_SPI
339
340 config SND_SOC_ADAU1977
341         tristate
342
343 config SND_SOC_ADAU1977_SPI
344         tristate
345         select SND_SOC_ADAU1977
346         select REGMAP_SPI
347
348 config SND_SOC_ADAU1977_I2C
349         tristate
350         select SND_SOC_ADAU1977
351         select REGMAP_I2C
352
353 config SND_SOC_ADAU7002
354         tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
355
356 config SND_SOC_ADAV80X
357         tristate
358
359 config SND_SOC_ADAV801
360         tristate
361         select SND_SOC_ADAV80X
362
363 config SND_SOC_ADAV803
364         tristate
365         select SND_SOC_ADAV80X
366
367 config SND_SOC_ADS117X
368         tristate
369
370 config SND_SOC_AK4104
371         tristate "AKM AK4104 CODEC"
372         depends on SPI_MASTER
373
374 config SND_SOC_AK4535
375         tristate
376
377 config SND_SOC_AK4554
378         tristate "AKM AK4554 CODEC"
379
380 config SND_SOC_AK4613
381         tristate "AKM AK4613 CODEC"
382         depends on I2C
383
384 config SND_SOC_AK4641
385         tristate
386
387 config SND_SOC_AK4642
388         tristate "AKM AK4642 CODEC"
389         depends on I2C
390
391 config SND_SOC_AK4671
392         tristate
393
394 config SND_SOC_AK5386
395         tristate "AKM AK5638 CODEC"
396
397 config SND_SOC_ALC5623
398        tristate "Realtek ALC5623 CODEC"
399         depends on I2C
400
401 config SND_SOC_ALC5632
402         tristate
403
404 config SND_SOC_BT_SCO
405         tristate "Dummy BT SCO codec driver"
406
407 config SND_SOC_CQ0093VC
408         tristate
409
410 config SND_SOC_CS35L32
411         tristate "Cirrus Logic CS35L32 CODEC"
412         depends on I2C
413
414 config SND_SOC_CS35L33
415         tristate "Cirrus Logic CS35L33 CODEC"
416         depends on I2C
417
418 config SND_SOC_CS35L34
419         tristate "Cirrus Logic CS35L34 CODEC"
420         depends on I2C
421
422 config SND_SOC_CS35L35
423         tristate "Cirrus Logic CS35L35 CODEC"
424         depends on I2C
425
426 config SND_SOC_CS42L42
427         tristate "Cirrus Logic CS42L42 CODEC"
428         depends on I2C
429
430 config SND_SOC_CS42L51
431         tristate
432
433 config SND_SOC_CS42L51_I2C
434         tristate "Cirrus Logic CS42L51 CODEC (I2C)"
435         depends on I2C
436         select SND_SOC_CS42L51
437
438 config SND_SOC_CS42L52
439         tristate "Cirrus Logic CS42L52 CODEC"
440         depends on I2C && INPUT
441
442 config SND_SOC_CS42L56
443         tristate "Cirrus Logic CS42L56 CODEC"
444         depends on I2C && INPUT
445
446 config SND_SOC_CS42L73
447         tristate "Cirrus Logic CS42L73 CODEC"
448         depends on I2C
449
450 config SND_SOC_CS4265
451         tristate "Cirrus Logic CS4265 CODEC"
452         depends on I2C
453         select REGMAP_I2C
454
455 # Cirrus Logic CS4270 Codec
456 config SND_SOC_CS4270
457         tristate "Cirrus Logic CS4270 CODEC"
458         depends on I2C
459
460 # Cirrus Logic CS4270 Codec VD = 3.3V Errata
461 # Select if you are affected by the errata where the part will not function
462 # if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
463 # not select any sample rates that require MCLK to be divided by 1.5.
464 config SND_SOC_CS4270_VD33_ERRATA
465         bool
466         depends on SND_SOC_CS4270
467
468 config SND_SOC_CS4271
469         tristate
470
471 config SND_SOC_CS4271_I2C
472         tristate "Cirrus Logic CS4271 CODEC (I2C)"
473         depends on I2C
474         select SND_SOC_CS4271
475         select REGMAP_I2C
476
477 config SND_SOC_CS4271_SPI
478         tristate "Cirrus Logic CS4271 CODEC (SPI)"
479         depends on SPI_MASTER
480         select SND_SOC_CS4271
481         select REGMAP_SPI
482
483 config SND_SOC_CS42XX8
484         tristate
485
486 config SND_SOC_CS42XX8_I2C
487         tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
488         depends on I2C
489         select SND_SOC_CS42XX8
490         select REGMAP_I2C
491
492 # Cirrus Logic CS43130 HiFi DAC
493 config SND_SOC_CS43130
494         tristate "Cirrus Logic CS43130 CODEC"
495         depends on I2C
496
497 # Cirrus Logic CS4349 HiFi DAC
498 config SND_SOC_CS4349
499         tristate "Cirrus Logic CS4349 CODEC"
500         depends on I2C
501
502 config SND_SOC_CS47L24
503         tristate
504
505 # Cirrus Logic Quad-Channel ADC
506 config SND_SOC_CS53L30
507         tristate "Cirrus Logic CS53L30 CODEC"
508         depends on I2C
509
510 config SND_SOC_CX20442
511         tristate
512         depends on TTY
513
514 config SND_SOC_JZ4740_CODEC
515         select REGMAP_MMIO
516         tristate
517
518 config SND_SOC_L3
519        tristate
520
521 config SND_SOC_DA7210
522         tristate
523
524 config SND_SOC_DA7213
525         tristate
526
527 config SND_SOC_DA7218
528         tristate
529
530 config SND_SOC_DA7219
531         tristate
532
533 config SND_SOC_DA732X
534         tristate
535
536 config SND_SOC_DA9055
537         tristate
538
539 config SND_SOC_DIO2125
540         tristate "Dioo DIO2125 Amplifier"
541         select GPIOLIB
542
543 config SND_SOC_DMIC
544         tristate
545
546 config SND_SOC_HDMI_CODEC
547         tristate
548         select SND_PCM_ELD
549         select SND_PCM_IEC958
550         select HDMI
551
552 config SND_SOC_ES7134
553        tristate "Everest Semi ES7134 CODEC"
554
555 config SND_SOC_ES8316
556         tristate "Everest Semi ES8316 CODEC"
557         depends on I2C
558
559 config SND_SOC_ES8328
560         tristate
561
562 config SND_SOC_ES8328_I2C
563         tristate "Everest Semi ES8328 CODEC (I2C)"
564         depends on I2C
565         select SND_SOC_ES8328
566
567 config SND_SOC_ES8328_SPI
568         tristate "Everest Semi ES8328 CODEC (SPI)"
569         depends on SPI_MASTER
570         select SND_SOC_ES8328
571
572 config SND_SOC_GTM601
573         tristate 'GTM601 UMTS modem audio codec'
574
575 config SND_SOC_HDAC_HDMI
576         tristate
577         select SND_HDA_EXT_CORE
578         select SND_PCM_ELD
579         select HDMI
580
581 config SND_SOC_ICS43432
582         tristate
583
584 config SND_SOC_INNO_RK3036
585         tristate "Inno codec driver for RK3036 SoC"
586         select REGMAP_MMIO
587
588 config SND_SOC_ISABELLE
589         tristate
590
591 config SND_SOC_LM49453
592         tristate
593
594 config SND_SOC_MAX98088
595        tristate
596
597 config SND_SOC_MAX98090
598        tristate
599
600 config SND_SOC_MAX98095
601        tristate
602
603 config SND_SOC_MAX98357A
604        tristate
605
606 config SND_SOC_MAX98371
607        tristate
608
609 config SND_SOC_MAX98504
610         tristate "Maxim MAX98504 speaker amplifier"
611         depends on I2C
612
613 config SND_SOC_MAX9867
614         tristate
615
616 config SND_SOC_MAX98925
617        tristate
618
619 config SND_SOC_MAX98926
620         tristate
621
622 config SND_SOC_MAX98927
623         tristate "Maxim Integrated MAX98927 Speaker Amplifier"
624         depends on I2C
625
626 config SND_SOC_MAX9850
627         tristate
628
629 config SND_SOC_MAX9860
630         tristate "Maxim MAX9860 Mono Audio Voice Codec"
631         depends on I2C
632         select REGMAP_I2C
633
634 config SND_SOC_MSM8916_WCD_ANALOG
635         tristate "Qualcomm MSM8916 WCD Analog Codec"
636         depends on SPMI || COMPILE_TEST
637
638 config SND_SOC_MSM8916_WCD_DIGITAL
639         tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
640
641 config SND_SOC_PCM1681
642         tristate "Texas Instruments PCM1681 CODEC"
643         depends on I2C
644
645 config SND_SOC_PCM179X
646         tristate
647
648 config SND_SOC_PCM179X_I2C
649         tristate "Texas Instruments PCM179X CODEC (I2C)"
650         depends on I2C
651         select SND_SOC_PCM179X
652         help
653           Enable support for Texas Instruments PCM179x CODEC.
654           Select this if your PCM179x is connected via an I2C bus.
655
656 config SND_SOC_PCM179X_SPI
657         tristate "Texas Instruments PCM179X CODEC (SPI)"
658         depends on SPI_MASTER
659         select SND_SOC_PCM179X
660         help
661           Enable support for Texas Instruments PCM179x CODEC.
662           Select this if your PCM179x is connected via an SPI bus.
663
664 config SND_SOC_PCM3008
665        tristate
666
667 config SND_SOC_PCM3168A
668         tristate
669
670 config SND_SOC_PCM3168A_I2C
671         tristate "Texas Instruments PCM3168A CODEC - I2C"
672         depends on I2C
673         select SND_SOC_PCM3168A
674         select REGMAP_I2C
675
676 config SND_SOC_PCM3168A_SPI
677         tristate "Texas Instruments PCM3168A CODEC - SPI"
678         depends on SPI_MASTER
679         select SND_SOC_PCM3168A
680         select REGMAP_SPI
681
682 config SND_SOC_PCM5102A
683         tristate
684
685 config SND_SOC_PCM512x
686         tristate
687
688 config SND_SOC_PCM512x_I2C
689         tristate "Texas Instruments PCM512x CODECs - I2C"
690         depends on I2C
691         select SND_SOC_PCM512x
692         select REGMAP_I2C
693
694 config SND_SOC_PCM512x_SPI
695         tristate "Texas Instruments PCM512x CODECs - SPI"
696         depends on SPI_MASTER
697         select SND_SOC_PCM512x
698         select REGMAP_SPI
699
700 config SND_SOC_RL6231
701         tristate
702         default y if SND_SOC_RT5514=y
703         default y if SND_SOC_RT5616=y
704         default y if SND_SOC_RT5640=y
705         default y if SND_SOC_RT5645=y
706         default y if SND_SOC_RT5651=y
707         default y if SND_SOC_RT5659=y
708         default y if SND_SOC_RT5660=y
709         default y if SND_SOC_RT5663=y
710         default y if SND_SOC_RT5665=y
711         default y if SND_SOC_RT5670=y
712         default y if SND_SOC_RT5677=y
713         default m if SND_SOC_RT5514=m
714         default m if SND_SOC_RT5616=m
715         default m if SND_SOC_RT5640=m
716         default m if SND_SOC_RT5645=m
717         default m if SND_SOC_RT5651=m
718         default m if SND_SOC_RT5659=m
719         default m if SND_SOC_RT5660=m
720         default m if SND_SOC_RT5663=m
721         default m if SND_SOC_RT5665=m
722         default m if SND_SOC_RT5670=m
723         default m if SND_SOC_RT5677=m
724
725 config SND_SOC_RL6347A
726         tristate
727         default y if SND_SOC_RT274=y
728         default y if SND_SOC_RT286=y
729         default y if SND_SOC_RT298=y
730         default m if SND_SOC_RT274=m
731         default m if SND_SOC_RT286=m
732         default m if SND_SOC_RT298=m
733
734 config SND_SOC_RT274
735         tristate
736         depends on I2C
737
738 config SND_SOC_RT286
739         tristate
740         depends on I2C
741
742 config SND_SOC_RT298
743         tristate
744         depends on I2C
745
746 config SND_SOC_RT5514
747         tristate
748
749 config SND_SOC_RT5514_SPI
750         tristate
751
752 config SND_SOC_RT5514_SPI_BUILTIN
753         bool # force RT5514_SPI to be built-in to avoid link errors
754         default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
755
756 config SND_SOC_RT5616
757         tristate "Realtek RT5616 CODEC"
758         depends on I2C
759
760 config SND_SOC_RT5631
761         tristate "Realtek ALC5631/RT5631 CODEC"
762         depends on I2C
763
764 config SND_SOC_RT5640
765         tristate
766
767 config SND_SOC_RT5645
768         tristate
769
770 config SND_SOC_RT5651
771         tristate
772
773 config SND_SOC_RT5659
774         tristate
775
776 config SND_SOC_RT5660
777         tristate
778
779 config SND_SOC_RT5663
780         tristate
781
782 config SND_SOC_RT5665
783         tristate
784
785 config SND_SOC_RT5670
786         tristate
787
788 config SND_SOC_RT5677
789         tristate
790         select REGMAP_I2C
791         select REGMAP_IRQ
792
793 config SND_SOC_RT5677_SPI
794         tristate
795         default SND_SOC_RT5677 && SPI
796
797 #Freescale sgtl5000 codec
798 config SND_SOC_SGTL5000
799         tristate "Freescale SGTL5000 CODEC"
800         depends on I2C
801
802 config SND_SOC_SI476X
803         tristate
804
805 config SND_SOC_SIGMADSP
806         tristate
807         select CRC32
808
809 config SND_SOC_SIGMADSP_I2C
810         tristate
811         select SND_SOC_SIGMADSP
812
813 config SND_SOC_SIGMADSP_REGMAP
814         tristate
815         select SND_SOC_SIGMADSP
816
817 config SND_SOC_SIRF_AUDIO_CODEC
818         tristate "SiRF SoC internal audio codec"
819         select REGMAP_MMIO
820
821 config SND_SOC_SN95031
822         tristate
823
824 config SND_SOC_SPDIF
825         tristate "S/PDIF CODEC"
826
827 config SND_SOC_SSM2518
828         tristate
829
830 config SND_SOC_SSM2602
831         tristate
832
833 config SND_SOC_SSM2602_SPI
834         tristate "Analog Devices SSM2602 CODEC - SPI"
835         depends on SPI_MASTER
836         select SND_SOC_SSM2602
837         select REGMAP_SPI
838
839 config SND_SOC_SSM2602_I2C
840         tristate "Analog Devices SSM2602 CODEC - I2C"
841         depends on I2C
842         select SND_SOC_SSM2602
843         select REGMAP_I2C
844
845 config SND_SOC_SSM4567
846         tristate "Analog Devices ssm4567 amplifier driver support"
847         depends on I2C
848
849 config SND_SOC_STA32X
850         tristate "STA326, STA328 and STA329 speaker amplifier"
851         depends on I2C
852         select REGMAP_I2C
853
854 config SND_SOC_STA350
855         tristate "STA350 speaker amplifier"
856         depends on I2C
857
858 config SND_SOC_STA529
859         tristate
860
861 config SND_SOC_STAC9766
862         tristate
863
864 config SND_SOC_STI_SAS
865         tristate "codec Audio support for STI SAS codec"
866
867 config SND_SOC_TAS2552
868         tristate "Texas Instruments TAS2552 Mono Audio amplifier"
869         depends on I2C
870
871 config SND_SOC_TAS5086
872         tristate "Texas Instruments TAS5086 speaker amplifier"
873         depends on I2C
874
875 config SND_SOC_TAS571X
876         tristate "Texas Instruments TAS5711/TAS5717/TAS5719/TAS5721 power amplifiers"
877         depends on I2C
878
879 config SND_SOC_TAS5720
880         tristate "Texas Instruments TAS5720 Mono Audio amplifier"
881         depends on I2C
882         help
883           Enable support for Texas Instruments TAS5720L/M high-efficiency mono
884           Class-D audio power amplifiers.
885
886 config SND_SOC_TFA9879
887         tristate "NXP Semiconductors TFA9879 amplifier"
888         depends on I2C
889
890 config SND_SOC_TLV320AIC23
891         tristate
892
893 config SND_SOC_TLV320AIC23_I2C
894         tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
895         depends on I2C
896         select SND_SOC_TLV320AIC23
897
898 config SND_SOC_TLV320AIC23_SPI
899         tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
900         depends on SPI_MASTER
901         select SND_SOC_TLV320AIC23
902
903 config SND_SOC_TLV320AIC26
904         tristate
905         depends on SPI
906
907 config SND_SOC_TLV320AIC31XX
908         tristate "Texas Instruments TLV320AIC31xx CODECs"
909         depends on I2C
910         select REGMAP_I2C
911
912 config SND_SOC_TLV320AIC32X4
913         tristate
914
915 config SND_SOC_TLV320AIC32X4_I2C
916         tristate
917         depends on I2C
918         select SND_SOC_TLV320AIC32X4
919
920 config SND_SOC_TLV320AIC32X4_SPI
921         tristate
922         depends on SPI_MASTER
923         select SND_SOC_TLV320AIC32X4
924
925 config SND_SOC_TLV320AIC3X
926         tristate "Texas Instruments TLV320AIC3x CODECs"
927         depends on I2C
928
929 config SND_SOC_TLV320DAC33
930         tristate
931
932 config SND_SOC_TS3A227E
933         tristate "TI Headset/Mic detect and keypress chip"
934         depends on I2C
935
936 config SND_SOC_TWL4030
937         select MFD_TWL4030_AUDIO
938         tristate
939
940 config SND_SOC_TWL6040
941         tristate
942
943 config SND_SOC_UDA134X
944        tristate
945
946 config SND_SOC_UDA1380
947         tristate
948         depends on I2C
949
950 config SND_SOC_WL1273
951         tristate
952
953 config SND_SOC_WM0010
954         tristate
955
956 config SND_SOC_WM1250_EV1
957         tristate
958
959 config SND_SOC_WM2000
960         tristate
961
962 config SND_SOC_WM2200
963         tristate
964
965 config SND_SOC_WM5100
966         tristate
967
968 config SND_SOC_WM5102
969         tristate
970
971 config SND_SOC_WM5110
972         tristate
973
974 config SND_SOC_WM8350
975         tristate
976
977 config SND_SOC_WM8400
978         tristate
979
980 config SND_SOC_WM8510
981         tristate "Wolfson Microelectronics WM8510 CODEC"
982         depends on SND_SOC_I2C_AND_SPI
983
984 config SND_SOC_WM8523
985         tristate "Wolfson Microelectronics WM8523 DAC"
986         depends on I2C
987
988 config SND_SOC_WM8524
989         tristate "Wolfson Microelectronics WM8524 DAC"
990         depends on GPIOLIB
991
992 config SND_SOC_WM8580
993         tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
994         depends on I2C
995
996 config SND_SOC_WM8711
997         tristate "Wolfson Microelectronics WM8711 CODEC"
998         depends on SND_SOC_I2C_AND_SPI
999
1000 config SND_SOC_WM8727
1001         tristate
1002
1003 config SND_SOC_WM8728
1004         tristate "Wolfson Microelectronics WM8728 DAC"
1005         depends on SND_SOC_I2C_AND_SPI
1006
1007 config SND_SOC_WM8731
1008         tristate "Wolfson Microelectronics WM8731 CODEC"
1009         depends on SND_SOC_I2C_AND_SPI
1010
1011 config SND_SOC_WM8737
1012         tristate "Wolfson Microelectronics WM8737 ADC"
1013         depends on SND_SOC_I2C_AND_SPI
1014
1015 config SND_SOC_WM8741
1016         tristate "Wolfson Microelectronics WM8737 DAC"
1017         depends on SND_SOC_I2C_AND_SPI
1018
1019 config SND_SOC_WM8750
1020         tristate "Wolfson Microelectronics WM8750 CODEC"
1021         depends on SND_SOC_I2C_AND_SPI
1022
1023 config SND_SOC_WM8753
1024         tristate "Wolfson Microelectronics WM8753 CODEC"
1025         depends on SND_SOC_I2C_AND_SPI
1026
1027 config SND_SOC_WM8770
1028         tristate "Wolfson Microelectronics WM8770 CODEC"
1029         depends on SPI_MASTER
1030
1031 config SND_SOC_WM8776
1032         tristate "Wolfson Microelectronics WM8776 CODEC"
1033         depends on SND_SOC_I2C_AND_SPI
1034
1035 config SND_SOC_WM8782
1036         tristate
1037
1038 config SND_SOC_WM8804
1039         tristate
1040
1041 config SND_SOC_WM8804_I2C
1042         tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1043         depends on I2C
1044         select SND_SOC_WM8804
1045         select REGMAP_I2C
1046
1047 config SND_SOC_WM8804_SPI
1048         tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1049         depends on SPI_MASTER
1050         select SND_SOC_WM8804
1051         select REGMAP_SPI
1052
1053 config SND_SOC_WM8900
1054         tristate
1055
1056 config SND_SOC_WM8903
1057         tristate "Wolfson Microelectronics WM8903 CODEC"
1058         depends on I2C
1059
1060 config SND_SOC_WM8904
1061         tristate
1062
1063 config SND_SOC_WM8940
1064         tristate
1065
1066 config SND_SOC_WM8955
1067         tristate
1068
1069 config SND_SOC_WM8960
1070         tristate "Wolfson Microelectronics WM8960 CODEC"
1071         depends on I2C
1072
1073 config SND_SOC_WM8961
1074         tristate
1075
1076 config SND_SOC_WM8962
1077         tristate "Wolfson Microelectronics WM8962 CODEC"
1078         depends on I2C && INPUT
1079
1080 config SND_SOC_WM8971
1081         tristate
1082
1083 config SND_SOC_WM8974
1084         tristate "Wolfson Microelectronics WM8974 codec"
1085         depends on I2C
1086
1087 config SND_SOC_WM8978
1088         tristate "Wolfson Microelectronics WM8978 codec"
1089         depends on I2C
1090
1091 config SND_SOC_WM8983
1092         tristate
1093
1094 config SND_SOC_WM8985
1095         tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1096         depends on SND_SOC_I2C_AND_SPI
1097
1098 config SND_SOC_WM8988
1099         tristate
1100
1101 config SND_SOC_WM8990
1102         tristate
1103
1104 config SND_SOC_WM8991
1105         tristate
1106
1107 config SND_SOC_WM8993
1108         tristate
1109
1110 config SND_SOC_WM8994
1111         tristate
1112
1113 config SND_SOC_WM8995
1114         tristate
1115
1116 config SND_SOC_WM8996
1117         tristate
1118
1119 config SND_SOC_WM8997
1120         tristate
1121
1122 config SND_SOC_WM8998
1123         tristate
1124
1125 config SND_SOC_WM9081
1126         tristate
1127         depends on I2C
1128
1129 config SND_SOC_WM9090
1130         tristate
1131
1132 config SND_SOC_WM9705
1133         tristate
1134         select REGMAP_AC97
1135         select AC97_BUS_COMPAT if AC97_BUS_NEW
1136
1137 config SND_SOC_WM9712
1138         tristate
1139         select REGMAP_AC97
1140         select AC97_BUS_COMPAT if AC97_BUS_NEW
1141
1142 config SND_SOC_WM9713
1143         tristate
1144         select REGMAP_AC97
1145         select AC97_BUS_COMPAT if AC97_BUS_NEW
1146
1147 config SND_SOC_ZX_AUD96P22
1148         tristate "ZTE ZX AUD96P22 CODEC"
1149         depends on I2C
1150         select REGMAP_I2C
1151
1152 # Amp
1153 config SND_SOC_LM4857
1154         tristate
1155
1156 config SND_SOC_MAX9768
1157         tristate
1158
1159 config SND_SOC_MAX9877
1160         tristate
1161
1162 config SND_SOC_MC13783
1163         tristate
1164
1165 config SND_SOC_ML26124
1166         tristate
1167
1168 config SND_SOC_NAU8540
1169        tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1170        depends on I2C
1171
1172 config SND_SOC_NAU8810
1173         tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1174         depends on I2C
1175
1176 config SND_SOC_NAU8824
1177         tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1178         depends on I2C
1179
1180 config SND_SOC_NAU8825
1181         tristate
1182
1183 config SND_SOC_TPA6130A2
1184         tristate "Texas Instruments TPA6130A2 headphone amplifier"
1185         depends on I2C
1186
1187 endmenu