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