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