]> git.karo-electronics.de Git - karo-tx-linux.git/blob - sound/soc/codecs/Kconfig
ASoC: Add ADAU1X61 and ADAU1X81 CODECs common code
[karo-tx-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 if SND_SOC_AC97_BUS
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_ADAV801 if SPI_MASTER
27         select SND_SOC_ADAV803 if I2C
28         select SND_SOC_ADAU1977_SPI if SPI_MASTER
29         select SND_SOC_ADAU1977_I2C if I2C
30         select SND_SOC_ADAU1701 if I2C
31         select SND_SOC_ADS117X
32         select SND_SOC_AK4104 if SPI_MASTER
33         select SND_SOC_AK4535 if I2C
34         select SND_SOC_AK4554
35         select SND_SOC_AK4641 if I2C
36         select SND_SOC_AK4642 if I2C
37         select SND_SOC_AK4671 if I2C
38         select SND_SOC_AK5386
39         select SND_SOC_ALC5623 if I2C
40         select SND_SOC_ALC5632 if I2C
41         select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC
42         select SND_SOC_CS42L51 if I2C
43         select SND_SOC_CS42L52 if I2C
44         select SND_SOC_CS42L73 if I2C
45         select SND_SOC_CS4270 if I2C
46         select SND_SOC_CS4271 if SND_SOC_I2C_AND_SPI
47         select SND_SOC_CS42XX8_I2C if I2C
48         select SND_SOC_CX20442 if TTY
49         select SND_SOC_DA7210 if I2C
50         select SND_SOC_DA7213 if I2C
51         select SND_SOC_DA732X if I2C
52         select SND_SOC_DA9055 if I2C
53         select SND_SOC_BT_SCO
54         select SND_SOC_ISABELLE if I2C
55         select SND_SOC_JZ4740_CODEC
56         select SND_SOC_LM4857 if I2C
57         select SND_SOC_LM49453 if I2C
58         select SND_SOC_MAX98088 if I2C
59         select SND_SOC_MAX98090 if I2C
60         select SND_SOC_MAX98095 if I2C
61         select SND_SOC_MAX9850 if I2C
62         select SND_SOC_MAX9768 if I2C
63         select SND_SOC_MAX9877 if I2C
64         select SND_SOC_MC13783 if MFD_MC13XXX
65         select SND_SOC_ML26124 if I2C
66         select SND_SOC_HDMI_CODEC
67         select SND_SOC_PCM1681 if I2C
68         select SND_SOC_PCM1792A if SPI_MASTER
69         select SND_SOC_PCM3008
70         select SND_SOC_PCM512x_I2C if I2C
71         select SND_SOC_PCM512x_SPI if SPI_MASTER
72         select SND_SOC_RT5631 if I2C
73         select SND_SOC_RT5640 if I2C
74         select SND_SOC_SGTL5000 if I2C
75         select SND_SOC_SI476X if MFD_SI476X_CORE
76         select SND_SOC_SIRF_AUDIO_CODEC
77         select SND_SOC_SN95031 if INTEL_SCU_IPC
78         select SND_SOC_SPDIF
79         select SND_SOC_SSM2518 if I2C
80         select SND_SOC_SSM2602_SPI if SPI_MASTER
81         select SND_SOC_SSM2602_I2C if I2C
82         select SND_SOC_STA32X if I2C
83         select SND_SOC_STA529 if I2C
84         select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
85         select SND_SOC_TAS5086 if I2C
86         select SND_SOC_TLV320AIC23_I2C if I2C
87         select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
88         select SND_SOC_TLV320AIC26 if SPI_MASTER
89         select SND_SOC_TLV320AIC31XX if I2C
90         select SND_SOC_TLV320AIC32X4 if I2C
91         select SND_SOC_TLV320AIC3X if I2C
92         select SND_SOC_TPA6130A2 if I2C
93         select SND_SOC_TLV320DAC33 if I2C
94         select SND_SOC_TWL4030 if TWL4030_CORE
95         select SND_SOC_TWL6040 if TWL6040_CORE
96         select SND_SOC_UDA134X
97         select SND_SOC_UDA1380 if I2C
98         select SND_SOC_WL1273 if MFD_WL1273_CORE
99         select SND_SOC_WM0010 if SPI_MASTER
100         select SND_SOC_WM1250_EV1 if I2C
101         select SND_SOC_WM2000 if I2C
102         select SND_SOC_WM2200 if I2C
103         select SND_SOC_WM5100 if I2C
104         select SND_SOC_WM5102 if MFD_WM5102
105         select SND_SOC_WM5110 if MFD_WM5110
106         select SND_SOC_WM8350 if MFD_WM8350
107         select SND_SOC_WM8400 if MFD_WM8400
108         select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
109         select SND_SOC_WM8523 if I2C
110         select SND_SOC_WM8580 if I2C
111         select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
112         select SND_SOC_WM8727
113         select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
114         select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
115         select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
116         select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
117         select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
118         select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
119         select SND_SOC_WM8770 if SPI_MASTER
120         select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
121         select SND_SOC_WM8782
122         select SND_SOC_WM8804 if SND_SOC_I2C_AND_SPI
123         select SND_SOC_WM8900 if I2C
124         select SND_SOC_WM8903 if I2C
125         select SND_SOC_WM8904 if I2C
126         select SND_SOC_WM8940 if I2C
127         select SND_SOC_WM8955 if I2C
128         select SND_SOC_WM8960 if I2C
129         select SND_SOC_WM8961 if I2C
130         select SND_SOC_WM8962 if I2C
131         select SND_SOC_WM8971 if I2C
132         select SND_SOC_WM8974 if I2C
133         select SND_SOC_WM8978 if I2C
134         select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
135         select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
136         select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
137         select SND_SOC_WM8990 if I2C
138         select SND_SOC_WM8991 if I2C
139         select SND_SOC_WM8993 if I2C
140         select SND_SOC_WM8994 if MFD_WM8994
141         select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
142         select SND_SOC_WM8996 if I2C
143         select SND_SOC_WM8997 if MFD_WM8997
144         select SND_SOC_WM9081 if I2C
145         select SND_SOC_WM9090 if I2C
146         select SND_SOC_WM9705 if SND_SOC_AC97_BUS
147         select SND_SOC_WM9712 if SND_SOC_AC97_BUS
148         select SND_SOC_WM9713 if SND_SOC_AC97_BUS
149         help
150           Normally ASoC codec drivers are only built if a machine driver which
151           uses them is also built since they are only usable with a machine
152           driver.  Selecting this option will allow these drivers to be built
153           without an explicit machine driver for test and development purposes.
154
155           Support for the bus types used to access the codecs to be built must
156           be selected separately.
157
158           If unsure select "N".
159
160 config SND_SOC_88PM860X
161         tristate
162
163 config SND_SOC_ARIZONA
164         tristate
165         default y if SND_SOC_WM5102=y
166         default y if SND_SOC_WM5110=y
167         default y if SND_SOC_WM8997=y
168         default m if SND_SOC_WM5102=m
169         default m if SND_SOC_WM5110=m
170         default m if SND_SOC_WM8997=m
171
172 config SND_SOC_WM_HUBS
173         tristate
174         default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
175         default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
176
177 config SND_SOC_WM_ADSP
178         tristate
179         default y if SND_SOC_WM5102=y
180         default y if SND_SOC_WM5110=y
181         default y if SND_SOC_WM2200=y
182         default m if SND_SOC_WM5102=m
183         default m if SND_SOC_WM5110=m
184         default m if SND_SOC_WM2200=m
185
186 config SND_SOC_AB8500_CODEC
187         tristate
188
189 config SND_SOC_AC97_CODEC
190         tristate
191         select SND_AC97_CODEC
192
193 config SND_SOC_AD1836
194         tristate
195
196 config SND_SOC_AD193X
197         tristate
198
199 config SND_SOC_AD193X_SPI
200         tristate
201         select SND_SOC_AD193X
202
203 config SND_SOC_AD193X_I2C
204         tristate
205         select SND_SOC_AD193X
206
207 config SND_SOC_AD1980
208         tristate
209
210 config SND_SOC_AD73311
211         tristate
212
213 config SND_SOC_ADAU1373
214         tristate
215
216 config SND_SOC_ADAU1701
217         tristate "Analog Devices ADAU1701 CODEC"
218         depends on I2C
219         select SND_SOC_SIGMADSP
220
221 config SND_SOC_ADAU17X1
222         tristate
223         select SND_SOC_SIGMADSP
224
225 config SND_SOC_ADAU1977
226         tristate
227
228 config SND_SOC_ADAU1977_SPI
229         tristate
230         select SND_SOC_ADAU1977
231         select REGMAP_SPI
232
233 config SND_SOC_ADAU1977_I2C
234         tristate
235         select SND_SOC_ADAU1977
236         select REGMAP_I2C
237
238 config SND_SOC_ADAV80X
239         tristate
240
241 config SND_SOC_ADAV801
242         tristate
243         select SND_SOC_ADAV80X
244
245 config SND_SOC_ADAV803
246         tristate
247         select SND_SOC_ADAV80X
248
249 config SND_SOC_ADS117X
250         tristate
251
252 config SND_SOC_AK4104
253         tristate "AKM AK4104 CODEC"
254         depends on SPI_MASTER
255
256 config SND_SOC_AK4535
257         tristate
258
259 config SND_SOC_AK4554
260         tristate "AKM AK4554 CODEC"
261
262 config SND_SOC_AK4641
263         tristate
264
265 config SND_SOC_AK4642
266         tristate "AKM AK4642 CODEC"
267         depends on I2C
268
269 config SND_SOC_AK4671
270         tristate
271
272 config SND_SOC_AK5386
273         tristate "AKM AK5638 CODEC"
274
275 config SND_SOC_ALC5623
276        tristate
277
278 config SND_SOC_ALC5632
279         tristate
280
281 config SND_SOC_CQ0093VC
282         tristate
283
284 config SND_SOC_CS42L51
285         tristate
286
287 config SND_SOC_CS42L52
288         tristate "Cirrus Logic CS42L52 CODEC"
289         depends on I2C
290
291 config SND_SOC_CS42L73
292         tristate "Cirrus Logic CS42L73 CODEC"
293         depends on I2C
294
295 # Cirrus Logic CS4270 Codec
296 config SND_SOC_CS4270
297         tristate "Cirrus Logic CS4270 CODEC"
298         depends on I2C
299
300 # Cirrus Logic CS4270 Codec VD = 3.3V Errata
301 # Select if you are affected by the errata where the part will not function
302 # if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
303 # not select any sample rates that require MCLK to be divided by 1.5.
304 config SND_SOC_CS4270_VD33_ERRATA
305         bool
306         depends on SND_SOC_CS4270
307
308 config SND_SOC_CS4271
309         tristate "Cirrus Logic CS4271 CODEC"
310         depends on SND_SOC_I2C_AND_SPI
311
312 config SND_SOC_CS42XX8
313         tristate
314
315 config SND_SOC_CS42XX8_I2C
316         tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
317         depends on I2C
318         select SND_SOC_CS42XX8
319         select REGMAP_I2C
320
321 config SND_SOC_CX20442
322         tristate
323         depends on TTY
324
325 config SND_SOC_JZ4740_CODEC
326         select REGMAP_MMIO
327         tristate
328
329 config SND_SOC_L3
330        tristate
331
332 config SND_SOC_DA7210
333         tristate
334
335 config SND_SOC_DA7213
336         tristate
337
338 config SND_SOC_DA732X
339         tristate
340
341 config SND_SOC_DA9055
342         tristate
343
344 config SND_SOC_BT_SCO
345         tristate
346
347 config SND_SOC_DMIC
348         tristate
349
350 config SND_SOC_HDMI_CODEC
351        tristate "HDMI stub CODEC"
352
353 config SND_SOC_ISABELLE
354         tristate
355
356 config SND_SOC_LM49453
357         tristate
358
359 config SND_SOC_MAX98088
360        tristate
361
362 config SND_SOC_MAX98090
363        tristate
364
365 config SND_SOC_MAX98095
366        tristate
367
368 config SND_SOC_MAX9850
369         tristate
370
371 config SND_SOC_PCM1681
372         tristate "Texas Instruments PCM1681 CODEC"
373         depends on I2C
374
375 config SND_SOC_PCM1792A
376         tristate "Texas Instruments PCM1792A CODEC"
377         depends on SPI_MASTER
378
379 config SND_SOC_PCM3008
380        tristate
381
382 config SND_SOC_PCM512x
383         tristate
384
385 config SND_SOC_PCM512x_I2C
386         tristate "Texas Instruments PCM512x CODECs - I2C"
387         depends on I2C
388         select SND_SOC_PCM512x
389         select REGMAP_I2C
390
391 config SND_SOC_PCM512x_SPI
392         tristate "Texas Instruments PCM512x CODECs - SPI"
393         depends on SPI_MASTER
394         select SND_SOC_PCM512x
395         select REGMAP_SPI
396
397 config SND_SOC_RT5631
398         tristate
399
400 config SND_SOC_RT5640
401         tristate
402
403 #Freescale sgtl5000 codec
404 config SND_SOC_SGTL5000
405         tristate "Freescale SGTL5000 CODEC"
406         depends on I2C
407
408 config SND_SOC_SI476X
409         tristate
410
411 config SND_SOC_SIGMADSP
412         tristate
413         select CRC32
414
415 config SND_SOC_SIRF_AUDIO_CODEC
416         tristate "SiRF SoC internal audio codec"
417         select REGMAP_MMIO
418
419 config SND_SOC_SN95031
420         tristate
421
422 config SND_SOC_SPDIF
423         tristate "S/PDIF CODEC"
424
425 config SND_SOC_SSM2518
426         tristate
427
428 config SND_SOC_SSM2602
429         tristate
430
431 config SND_SOC_SSM2602_SPI
432         select SND_SOC_SSM2602
433         tristate
434
435 config SND_SOC_SSM2602_I2C
436         select SND_SOC_SSM2602
437         tristate
438
439 config SND_SOC_STA32X
440         tristate
441
442 config SND_SOC_STA529
443         tristate
444
445 config SND_SOC_STAC9766
446         tristate
447
448 config SND_SOC_TAS5086
449         tristate "Texas Instruments TAS5086 speaker amplifier"
450         depends on I2C
451
452 config SND_SOC_TLV320AIC23
453         tristate
454
455 config SND_SOC_TLV320AIC23_I2C
456         tristate
457         select SND_SOC_TLV320AIC23
458
459 config SND_SOC_TLV320AIC23_SPI
460         tristate
461         select SND_SOC_TLV320AIC23
462
463 config SND_SOC_TLV320AIC26
464         tristate
465         depends on SPI
466
467 config SND_SOC_TLV320AIC31XX
468         tristate
469
470 config SND_SOC_TLV320AIC32X4
471         tristate
472
473 config SND_SOC_TLV320AIC3X
474         tristate "Texas Instruments TLV320AIC3x CODECs"
475         depends on I2C
476
477 config SND_SOC_TLV320DAC33
478         tristate
479
480 config SND_SOC_TWL4030
481         select MFD_TWL4030_AUDIO
482         tristate
483
484 config SND_SOC_TWL6040
485         tristate
486
487 config SND_SOC_UDA134X
488        tristate
489
490 config SND_SOC_UDA1380
491         tristate
492
493 config SND_SOC_WL1273
494         tristate
495
496 config SND_SOC_WM0010
497         tristate
498
499 config SND_SOC_WM1250_EV1
500         tristate
501
502 config SND_SOC_WM2000
503         tristate
504
505 config SND_SOC_WM2200
506         tristate
507
508 config SND_SOC_WM5100
509         tristate
510
511 config SND_SOC_WM5102
512         tristate
513
514 config SND_SOC_WM5110
515         tristate
516
517 config SND_SOC_WM8350
518         tristate
519
520 config SND_SOC_WM8400
521         tristate
522
523 config SND_SOC_WM8510
524         tristate "Wolfson Microelectronics WM8510 CODEC"
525         depends on SND_SOC_I2C_AND_SPI
526
527 config SND_SOC_WM8523
528         tristate "Wolfson Microelectronics WM8523 DAC"
529         depends on I2C
530
531 config SND_SOC_WM8580
532         tristate "Wolfson Microelectronics WM8523 CODEC"
533         depends on I2C
534
535 config SND_SOC_WM8711
536         tristate "Wolfson Microelectronics WM8711 CODEC"
537         depends on SND_SOC_I2C_AND_SPI
538
539 config SND_SOC_WM8727
540         tristate
541
542 config SND_SOC_WM8728
543         tristate "Wolfson Microelectronics WM8728 DAC"
544         depends on SND_SOC_I2C_AND_SPI
545
546 config SND_SOC_WM8731
547         tristate "Wolfson Microelectronics WM8731 CODEC"
548         depends on SND_SOC_I2C_AND_SPI
549
550 config SND_SOC_WM8737
551         tristate "Wolfson Microelectronics WM8737 ADC"
552         depends on SND_SOC_I2C_AND_SPI
553
554 config SND_SOC_WM8741
555         tristate "Wolfson Microelectronics WM8737 DAC"
556         depends on SND_SOC_I2C_AND_SPI
557
558 config SND_SOC_WM8750
559         tristate "Wolfson Microelectronics WM8750 CODEC"
560         depends on SND_SOC_I2C_AND_SPI
561
562 config SND_SOC_WM8753
563         tristate "Wolfson Microelectronics WM8753 CODEC"
564         depends on SND_SOC_I2C_AND_SPI
565
566 config SND_SOC_WM8770
567         tristate "Wolfson Microelectronics WM8770 CODEC"
568         depends on SPI_MASTER
569
570 config SND_SOC_WM8776
571         tristate "Wolfson Microelectronics WM8776 CODEC"
572         depends on SND_SOC_I2C_AND_SPI
573
574 config SND_SOC_WM8782
575         tristate
576
577 config SND_SOC_WM8804
578         tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver"
579         depends on SND_SOC_I2C_AND_SPI
580
581 config SND_SOC_WM8900
582         tristate
583
584 config SND_SOC_WM8903
585         tristate "Wolfson Microelectronics WM8903 CODEC"
586         depends on I2C
587
588 config SND_SOC_WM8904
589         tristate
590
591 config SND_SOC_WM8940
592         tristate
593
594 config SND_SOC_WM8955
595         tristate
596
597 config SND_SOC_WM8960
598         tristate
599
600 config SND_SOC_WM8961
601         tristate
602
603 config SND_SOC_WM8962
604         tristate "Wolfson Microelectronics WM8962 CODEC"
605         depends on I2C
606
607 config SND_SOC_WM8971
608         tristate
609
610 config SND_SOC_WM8974
611         tristate
612
613 config SND_SOC_WM8978
614         tristate
615
616 config SND_SOC_WM8983
617         tristate
618
619 config SND_SOC_WM8985
620         tristate
621
622 config SND_SOC_WM8988
623         tristate
624
625 config SND_SOC_WM8990
626         tristate
627
628 config SND_SOC_WM8991
629         tristate
630
631 config SND_SOC_WM8993
632         tristate
633
634 config SND_SOC_WM8994
635         tristate
636
637 config SND_SOC_WM8995
638         tristate
639
640 config SND_SOC_WM8996
641         tristate
642
643 config SND_SOC_WM8997
644         tristate
645
646 config SND_SOC_WM9081
647         tristate
648
649 config SND_SOC_WM9090
650         tristate
651
652 config SND_SOC_WM9705
653         tristate
654
655 config SND_SOC_WM9712
656         tristate
657
658 config SND_SOC_WM9713
659         tristate
660
661 # Amp
662 config SND_SOC_LM4857
663         tristate
664
665 config SND_SOC_MAX9768
666         tristate
667
668 config SND_SOC_MAX9877
669         tristate
670
671 config SND_SOC_MC13783
672         tristate
673
674 config SND_SOC_ML26124
675         tristate
676
677 config SND_SOC_TPA6130A2
678         tristate "Texas Instruments TPA6130A2 headphone amplifier"
679         depends on I2C
680
681 endmenu