Merge series "ASoC: merge soc_pcm_hw_param() rollback and soc_pcm_hw_free()" from...
[linux-2.6-microblaze.git] / sound / soc / codecs / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 # Helper to resolve issues with configs that have SPI enabled but I2C
3 # modular, meaning we can't build the codec driver in with I2C support.
4 # We use an ordered list of conditional defaults to pick the appropriate
5 # setting - SPI can't be modular so that case doesn't need to be covered.
6 config SND_SOC_I2C_AND_SPI
7         tristate
8         default m if I2C=m
9         default y if I2C=y
10         default y if SPI_MASTER=y
11
12 menu "CODEC drivers"
13
14 config SND_SOC_ALL_CODECS
15         tristate "Build all ASoC CODEC drivers"
16         depends on COMPILE_TEST
17         imply SND_SOC_88PM860X
18         imply SND_SOC_L3
19         imply SND_SOC_AB8500_CODEC
20         imply SND_SOC_AC97_CODEC
21         imply SND_SOC_AD1836
22         imply SND_SOC_AD193X_SPI
23         imply SND_SOC_AD193X_I2C
24         imply SND_SOC_AD1980
25         imply SND_SOC_AD73311
26         imply SND_SOC_ADAU1373
27         imply SND_SOC_ADAU1761_I2C
28         imply SND_SOC_ADAU1761_SPI
29         imply SND_SOC_ADAU1781_I2C
30         imply SND_SOC_ADAU1781_SPI
31         imply SND_SOC_ADAV801
32         imply SND_SOC_ADAV803
33         imply SND_SOC_ADAU1977_SPI
34         imply SND_SOC_ADAU1977_I2C
35         imply SND_SOC_ADAU1701
36         imply SND_SOC_ADAU7002
37         imply SND_SOC_ADAU7118_I2C
38         imply SND_SOC_ADAU7118_HW
39         imply SND_SOC_ADS117X
40         imply SND_SOC_AK4104
41         imply SND_SOC_AK4118
42         imply SND_SOC_AK4458
43         imply SND_SOC_AK4535
44         imply SND_SOC_AK4554
45         imply SND_SOC_AK4613
46         imply SND_SOC_AK4641
47         imply SND_SOC_AK4642
48         imply SND_SOC_AK4671
49         imply SND_SOC_AK5386
50         imply SND_SOC_AK5558
51         imply SND_SOC_ALC5623
52         imply SND_SOC_ALC5632
53         imply SND_SOC_BT_SCO
54         imply SND_SOC_BD28623
55         imply SND_SOC_CQ0093VC
56         imply SND_SOC_CROS_EC_CODEC
57         imply SND_SOC_CS35L32
58         imply SND_SOC_CS35L33
59         imply SND_SOC_CS35L34
60         imply SND_SOC_CS35L35
61         imply SND_SOC_CS35L36
62         imply SND_SOC_CS42L42
63         imply SND_SOC_CS42L51_I2C
64         imply SND_SOC_CS42L52
65         imply SND_SOC_CS42L56
66         imply SND_SOC_CS42L73
67         imply SND_SOC_CS4234
68         imply SND_SOC_CS4265
69         imply SND_SOC_CS4270
70         imply SND_SOC_CS4271_I2C
71         imply SND_SOC_CS4271_SPI
72         imply SND_SOC_CS42XX8_I2C
73         imply SND_SOC_CS43130
74         imply SND_SOC_CS4341
75         imply SND_SOC_CS4349
76         imply SND_SOC_CS47L15
77         imply SND_SOC_CS47L24
78         imply SND_SOC_CS47L35
79         imply SND_SOC_CS47L85
80         imply SND_SOC_CS47L90
81         imply SND_SOC_CS47L92
82         imply SND_SOC_CS53L30
83         imply SND_SOC_CX20442
84         imply SND_SOC_CX2072X
85         imply SND_SOC_DA7210
86         imply SND_SOC_DA7213
87         imply SND_SOC_DA7218
88         imply SND_SOC_DA7219
89         imply SND_SOC_DA732X
90         imply SND_SOC_DA9055
91         imply SND_SOC_DMIC
92         imply SND_SOC_ES8316
93         imply SND_SOC_ES8328_SPI
94         imply SND_SOC_ES8328_I2C
95         imply SND_SOC_ES7134
96         imply SND_SOC_ES7241
97         imply SND_SOC_GTM601
98         imply SND_SOC_HDAC_HDMI
99         imply SND_SOC_HDAC_HDA
100         imply SND_SOC_ICS43432
101         imply SND_SOC_INNO_RK3036
102         imply SND_SOC_ISABELLE
103         imply SND_SOC_JZ4740_CODEC
104         imply SND_SOC_JZ4725B_CODEC
105         imply SND_SOC_JZ4770_CODEC
106         imply SND_SOC_LM4857
107         imply SND_SOC_LM49453
108         imply SND_SOC_LOCHNAGAR_SC
109         imply SND_SOC_MAX98088
110         imply SND_SOC_MAX98090
111         imply SND_SOC_MAX98095
112         imply SND_SOC_MAX98357A
113         imply SND_SOC_MAX98371
114         imply SND_SOC_MAX98504
115         imply SND_SOC_MAX9867
116         imply SND_SOC_MAX98925
117         imply SND_SOC_MAX98926
118         imply SND_SOC_MAX98927
119         imply SND_SOC_MAX98373_I2C
120         imply SND_SOC_MAX98373_SDW
121         imply SND_SOC_MAX98390
122         imply SND_SOC_MAX9850
123         imply SND_SOC_MAX9860
124         imply SND_SOC_MAX9759
125         imply SND_SOC_MAX9768
126         imply SND_SOC_MAX9877
127         imply SND_SOC_MC13783
128         imply SND_SOC_ML26124
129         imply SND_SOC_MT6351
130         imply SND_SOC_MT6358
131         imply SND_SOC_MT6359
132         imply SND_SOC_MT6660
133         imply SND_SOC_NAU8540
134         imply SND_SOC_NAU8810
135         imply SND_SOC_NAU8822
136         imply SND_SOC_NAU8824
137         imply SND_SOC_NAU8825
138         imply SND_SOC_HDMI_CODEC
139         imply SND_SOC_PCM1681
140         imply SND_SOC_PCM1789_I2C
141         imply SND_SOC_PCM179X_I2C
142         imply SND_SOC_PCM179X_SPI
143         imply SND_SOC_PCM186X_I2C
144         imply SND_SOC_PCM186X_SPI
145         imply SND_SOC_PCM3008
146         imply SND_SOC_PCM3060_I2C
147         imply SND_SOC_PCM3060_SPI
148         imply SND_SOC_PCM3168A_I2C
149         imply SND_SOC_PCM3168A_SPI
150         imply SND_SOC_PCM5102A
151         imply SND_SOC_PCM512x_I2C
152         imply SND_SOC_PCM512x_SPI
153         imply SND_SOC_RK3328
154         imply SND_SOC_RT274
155         imply SND_SOC_RT286
156         imply SND_SOC_RT298
157         imply SND_SOC_RT1011
158         imply SND_SOC_RT1015
159         imply SND_SOC_RT1015P
160         imply SND_SOC_RT1305
161         imply SND_SOC_RT1308
162         imply SND_SOC_RT5514
163         imply SND_SOC_RT5616
164         imply SND_SOC_RT5631
165         imply SND_SOC_RT5640
166         imply SND_SOC_RT5645
167         imply SND_SOC_RT5651
168         imply SND_SOC_RT5659
169         imply SND_SOC_RT5660
170         imply SND_SOC_RT5663
171         imply SND_SOC_RT5665
172         imply SND_SOC_RT5668
173         imply SND_SOC_RT5670
174         imply SND_SOC_RT5677
175         imply SND_SOC_RT5682_I2C
176         imply SND_SOC_RT5682_SDW
177         imply SND_SOC_RT700_SDW
178         imply SND_SOC_RT711_SDW
179         imply SND_SOC_RT715_SDW
180         imply SND_SOC_RT1308_SDW
181         imply SND_SOC_SGTL5000
182         imply SND_SOC_SI476X
183         imply SND_SOC_SIMPLE_AMPLIFIER
184         imply SND_SOC_SIRF_AUDIO_CODEC
185         imply SND_SOC_SPDIF
186         imply SND_SOC_SSM2305
187         imply SND_SOC_SSM2518
188         imply SND_SOC_SSM2602_SPI
189         imply SND_SOC_SSM2602_I2C
190         imply SND_SOC_SSM4567
191         imply SND_SOC_STA32X
192         imply SND_SOC_STA350
193         imply SND_SOC_STA529
194         imply SND_SOC_STAC9766
195         imply SND_SOC_STI_SAS
196         imply SND_SOC_TAS2552
197         imply SND_SOC_TAS2562
198         imply SND_SOC_TAS2764
199         imply SND_SOC_TAS2770
200         imply SND_SOC_TAS5086
201         imply SND_SOC_TAS571X
202         imply SND_SOC_TAS5720
203         imply SND_SOC_TAS6424
204         imply SND_SOC_TDA7419
205         imply SND_SOC_TFA9879
206         imply SND_SOC_TLV320ADCX140
207         imply SND_SOC_TLV320AIC23_I2C
208         imply SND_SOC_TLV320AIC23_SPI
209         imply SND_SOC_TLV320AIC26
210         imply SND_SOC_TLV320AIC31XX
211         imply SND_SOC_TLV320AIC32X4_I2C
212         imply SND_SOC_TLV320AIC32X4_SPI
213         imply SND_SOC_TLV320AIC3X
214         imply SND_SOC_TPA6130A2
215         imply SND_SOC_TLV320DAC33
216         imply SND_SOC_TSCS42XX
217         imply SND_SOC_TSCS454
218         imply SND_SOC_TS3A227E
219         imply SND_SOC_TWL4030
220         imply SND_SOC_TWL6040
221         imply SND_SOC_UDA1334
222         imply SND_SOC_UDA134X
223         imply SND_SOC_UDA1380
224         imply SND_SOC_WCD9335
225         imply SND_SOC_WCD934X
226         imply SND_SOC_WL1273
227         imply SND_SOC_WM0010
228         imply SND_SOC_WM1250_EV1
229         imply SND_SOC_WM2000
230         imply SND_SOC_WM2200
231         imply SND_SOC_WM5100
232         imply SND_SOC_WM5102
233         imply SND_SOC_WM5110
234         imply SND_SOC_WM8350
235         imply SND_SOC_WM8400
236         imply SND_SOC_WM8510
237         imply SND_SOC_WM8523
238         imply SND_SOC_WM8524
239         imply SND_SOC_WM8580
240         imply SND_SOC_WM8711
241         imply SND_SOC_WM8727
242         imply SND_SOC_WM8728
243         imply SND_SOC_WM8731
244         imply SND_SOC_WM8737
245         imply SND_SOC_WM8741
246         imply SND_SOC_WM8750
247         imply SND_SOC_WM8753
248         imply SND_SOC_WM8770
249         imply SND_SOC_WM8776
250         imply SND_SOC_WM8782
251         imply SND_SOC_WM8804_I2C
252         imply SND_SOC_WM8804_SPI
253         imply SND_SOC_WM8900
254         imply SND_SOC_WM8903
255         imply SND_SOC_WM8904
256         imply SND_SOC_WM8940
257         imply SND_SOC_WM8955
258         imply SND_SOC_WM8960
259         imply SND_SOC_WM8961
260         imply SND_SOC_WM8962
261         imply SND_SOC_WM8971
262         imply SND_SOC_WM8974
263         imply SND_SOC_WM8978
264         imply SND_SOC_WM8983
265         imply SND_SOC_WM8985
266         imply SND_SOC_WM8988
267         imply SND_SOC_WM8990
268         imply SND_SOC_WM8991
269         imply SND_SOC_WM8993
270         imply SND_SOC_WM8994
271         imply SND_SOC_WM8995
272         imply SND_SOC_WM8996
273         imply SND_SOC_WM8997
274         imply SND_SOC_WM8998
275         imply SND_SOC_WM9081
276         imply SND_SOC_WM9090
277         imply SND_SOC_WM9705
278         imply SND_SOC_WM9712
279         imply SND_SOC_WM9713
280         imply SND_SOC_WSA881X
281         imply SND_SOC_ZL38060
282         help
283           Normally ASoC codec drivers are only built if a machine driver which
284           uses them is also built since they are only usable with a machine
285           driver.  Selecting this option will allow these drivers to be built
286           without an explicit machine driver for test and development purposes.
287
288           Support for the bus types used to access the codecs to be built must
289           be selected separately.
290
291           If unsure select "N".
292
293 config SND_SOC_88PM860X
294         tristate
295         depends on MFD_88PM860X
296
297 config SND_SOC_ARIZONA
298         tristate
299         default y if SND_SOC_CS47L24=y
300         default y if SND_SOC_WM5102=y
301         default y if SND_SOC_WM5110=y
302         default y if SND_SOC_WM8997=y
303         default y if SND_SOC_WM8998=y
304         default m if SND_SOC_CS47L24=m
305         default m if SND_SOC_WM5102=m
306         default m if SND_SOC_WM5110=m
307         default m if SND_SOC_WM8997=m
308         default m if SND_SOC_WM8998=m
309
310 config SND_SOC_WM_HUBS
311         tristate
312         default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
313         default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
314
315 config SND_SOC_WM_ADSP
316         tristate
317         select SND_SOC_COMPRESS
318         default y if SND_SOC_MADERA=y
319         default y if SND_SOC_CS47L24=y
320         default y if SND_SOC_WM5102=y
321         default y if SND_SOC_WM5110=y
322         default y if SND_SOC_WM2200=y
323         default m if SND_SOC_MADERA=m
324         default m if SND_SOC_CS47L24=m
325         default m if SND_SOC_WM5102=m
326         default m if SND_SOC_WM5110=m
327         default m if SND_SOC_WM2200=m
328
329 config SND_SOC_AB8500_CODEC
330         tristate
331         depends on ABX500_CORE
332
333 config SND_SOC_AC97_CODEC
334         tristate "Build generic ASoC AC97 CODEC driver"
335         select SND_AC97_CODEC
336         select SND_SOC_AC97_BUS
337
338 config SND_SOC_AD1836
339         tristate
340         depends on SPI_MASTER
341
342 config SND_SOC_AD193X
343         tristate
344
345 config SND_SOC_AD193X_SPI
346         tristate
347         depends on SPI_MASTER
348         select SND_SOC_AD193X
349
350 config SND_SOC_AD193X_I2C
351         tristate
352         depends on I2C
353         select SND_SOC_AD193X
354
355 config SND_SOC_AD1980
356         tristate
357         depends on SND_SOC_AC97_BUS
358         select REGMAP_AC97
359
360 config SND_SOC_AD73311
361         tristate
362
363 config SND_SOC_ADAU_UTILS
364         tristate
365
366 config SND_SOC_ADAU1373
367         tristate
368         depends on I2C
369         select SND_SOC_ADAU_UTILS
370
371 config SND_SOC_ADAU1701
372         tristate "Analog Devices ADAU1701 CODEC"
373         depends on I2C
374         select SND_SOC_SIGMADSP_I2C
375
376 config SND_SOC_ADAU17X1
377         tristate
378         select SND_SOC_SIGMADSP_REGMAP
379         select SND_SOC_ADAU_UTILS
380
381 config SND_SOC_ADAU1761
382         tristate
383         select SND_SOC_ADAU17X1
384
385 config SND_SOC_ADAU1761_I2C
386         tristate "Analog Devices AU1761 CODEC - I2C"
387         depends on I2C
388         select SND_SOC_ADAU1761
389         select REGMAP_I2C
390
391 config SND_SOC_ADAU1761_SPI
392         tristate "Analog Devices AU1761 CODEC - SPI"
393         depends on SPI
394         select SND_SOC_ADAU1761
395         select REGMAP_SPI
396
397 config SND_SOC_ADAU1781
398         select SND_SOC_ADAU17X1
399         tristate
400
401 config SND_SOC_ADAU1781_I2C
402         tristate
403         depends on I2C
404         select SND_SOC_ADAU1781
405         select REGMAP_I2C
406
407 config SND_SOC_ADAU1781_SPI
408         tristate
409         depends on SPI_MASTER
410         select SND_SOC_ADAU1781
411         select REGMAP_SPI
412
413 config SND_SOC_ADAU1977
414         tristate
415
416 config SND_SOC_ADAU1977_SPI
417         tristate
418         depends on SPI_MASTER
419         select SND_SOC_ADAU1977
420         select REGMAP_SPI
421
422 config SND_SOC_ADAU1977_I2C
423         tristate
424         depends on I2C
425         select SND_SOC_ADAU1977
426         select REGMAP_I2C
427
428 config SND_SOC_ADAU7002
429         tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
430
431 config SND_SOC_ADAU7118
432         tristate
433
434 config SND_SOC_ADAU7118_HW
435         tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode"
436         select SND_SOC_ADAU7118
437         help
438           Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
439           Converter. In this mode, the device works in standalone mode which
440           means that there is no bus to comunicate with it. Stereo mode is not
441           supported in this mode.
442
443           To compile this driver as a module, choose M here: the module
444           will be called snd-soc-adau7118-hw.
445
446 config SND_SOC_ADAU7118_I2C
447         tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C"
448         depends on I2C
449         select SND_SOC_ADAU7118
450         select REGMAP_I2C
451         help
452           Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
453           Converter over I2C. This gives full support over the device.
454
455           To compile this driver as a module, choose M here: the module
456           will be called snd-soc-adau7118-i2c.
457
458 config SND_SOC_ADAV80X
459         tristate
460
461 config SND_SOC_ADAV801
462         tristate
463         depends on SPI_MASTER
464         select SND_SOC_ADAV80X
465
466 config SND_SOC_ADAV803
467         tristate
468         depends on I2C
469         select SND_SOC_ADAV80X
470
471 config SND_SOC_ADS117X
472         tristate
473
474 config SND_SOC_AK4104
475         tristate "AKM AK4104 CODEC"
476         depends on SPI_MASTER
477
478 config SND_SOC_AK4118
479         tristate "AKM AK4118 CODEC"
480         depends on I2C
481         select REGMAP_I2C
482
483 config SND_SOC_AK4458
484         tristate "AKM AK4458 CODEC"
485         depends on I2C
486         select REGMAP_I2C
487
488 config SND_SOC_AK4535
489         tristate
490         depends on I2C
491
492 config SND_SOC_AK4554
493         tristate "AKM AK4554 CODEC"
494
495 config SND_SOC_AK4613
496         tristate "AKM AK4613 CODEC"
497         depends on I2C
498
499 config SND_SOC_AK4641
500         tristate
501         depends on I2C
502
503 config SND_SOC_AK4642
504         tristate "AKM AK4642 CODEC"
505         depends on I2C
506
507 config SND_SOC_AK4671
508         tristate
509         depends on I2C
510
511 config SND_SOC_AK5386
512         tristate "AKM AK5638 CODEC"
513
514 config SND_SOC_AK5558
515         tristate "AKM AK5558 CODEC"
516         depends on I2C
517         select REGMAP_I2C
518
519 config SND_SOC_ALC5623
520        tristate "Realtek ALC5623 CODEC"
521         depends on I2C
522
523 config SND_SOC_ALC5632
524         tristate
525         depends on I2C
526
527 config SND_SOC_BD28623
528         tristate "ROHM BD28623 CODEC"
529         help
530           Enable support for ROHM BD28623MUV Class D speaker amplifier.
531           This codec does not have any control buses such as I2C, it
532           detect format of I2S automatically.
533
534 config SND_SOC_BT_SCO
535         tristate "Dummy BT SCO codec driver"
536
537 config SND_SOC_CPCAP
538         tristate "Motorola CPCAP codec"
539         depends on MFD_CPCAP
540
541 config SND_SOC_CQ0093VC
542         tristate
543
544 config SND_SOC_CROS_EC_CODEC
545         tristate "codec driver for ChromeOS EC"
546         depends on CROS_EC
547         select CRYPTO
548         select CRYPTO_LIB_SHA256
549         help
550           If you say yes here you will get support for the
551           ChromeOS Embedded Controller's Audio Codec.
552
553 config SND_SOC_CS35L32
554         tristate "Cirrus Logic CS35L32 CODEC"
555         depends on I2C
556
557 config SND_SOC_CS35L33
558         tristate "Cirrus Logic CS35L33 CODEC"
559         depends on I2C
560
561 config SND_SOC_CS35L34
562         tristate "Cirrus Logic CS35L34 CODEC"
563         depends on I2C
564
565 config SND_SOC_CS35L35
566         tristate "Cirrus Logic CS35L35 CODEC"
567         depends on I2C
568
569 config SND_SOC_CS35L36
570         tristate "Cirrus Logic CS35L36 CODEC"
571         depends on I2C
572
573 config SND_SOC_CS42L42
574         tristate "Cirrus Logic CS42L42 CODEC"
575         depends on I2C
576
577 config SND_SOC_CS42L51
578         tristate
579
580 config SND_SOC_CS42L51_I2C
581         tristate "Cirrus Logic CS42L51 CODEC (I2C)"
582         depends on I2C
583         select SND_SOC_CS42L51
584
585 config SND_SOC_CS42L52
586         tristate "Cirrus Logic CS42L52 CODEC"
587         depends on I2C && INPUT
588
589 config SND_SOC_CS42L56
590         tristate "Cirrus Logic CS42L56 CODEC"
591         depends on I2C && INPUT
592
593 config SND_SOC_CS42L73
594         tristate "Cirrus Logic CS42L73 CODEC"
595         depends on I2C
596
597 config SND_SOC_CS4234
598         tristate "Cirrus Logic CS4234 CODEC"
599         depends on I2C
600         select REGMAP_I2C
601
602 config SND_SOC_CS4265
603         tristate "Cirrus Logic CS4265 CODEC"
604         depends on I2C
605         select REGMAP_I2C
606
607 # Cirrus Logic CS4270 Codec
608 config SND_SOC_CS4270
609         tristate "Cirrus Logic CS4270 CODEC"
610         depends on I2C
611
612 # Cirrus Logic CS4270 Codec VD = 3.3V Errata
613 # Select if you are affected by the errata where the part will not function
614 # if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
615 # not select any sample rates that require MCLK to be divided by 1.5.
616 config SND_SOC_CS4270_VD33_ERRATA
617         bool
618         depends on SND_SOC_CS4270
619
620 config SND_SOC_CS4271
621         tristate
622
623 config SND_SOC_CS4271_I2C
624         tristate "Cirrus Logic CS4271 CODEC (I2C)"
625         depends on I2C
626         select SND_SOC_CS4271
627         select REGMAP_I2C
628
629 config SND_SOC_CS4271_SPI
630         tristate "Cirrus Logic CS4271 CODEC (SPI)"
631         depends on SPI_MASTER
632         select SND_SOC_CS4271
633         select REGMAP_SPI
634
635 config SND_SOC_CS42XX8
636         tristate
637
638 config SND_SOC_CS42XX8_I2C
639         tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
640         depends on I2C
641         select SND_SOC_CS42XX8
642         select REGMAP_I2C
643
644 # Cirrus Logic CS43130 HiFi DAC
645 config SND_SOC_CS43130
646         tristate "Cirrus Logic CS43130 CODEC"
647         depends on I2C
648
649 config SND_SOC_CS4341
650         tristate "Cirrus Logic CS4341 CODEC"
651         depends on SND_SOC_I2C_AND_SPI
652         select REGMAP_I2C if I2C
653         select REGMAP_SPI if SPI_MASTER
654
655 # Cirrus Logic CS4349 HiFi DAC
656 config SND_SOC_CS4349
657         tristate "Cirrus Logic CS4349 CODEC"
658         depends on I2C
659
660 config SND_SOC_CS47L15
661         tristate
662
663 config SND_SOC_CS47L24
664         tristate
665         depends on MFD_CS47L24
666
667 config SND_SOC_CS47L35
668         tristate
669
670 config SND_SOC_CS47L85
671         tristate
672
673 config SND_SOC_CS47L90
674         tristate
675
676 config SND_SOC_CS47L92
677         tristate
678
679 # Cirrus Logic Quad-Channel ADC
680 config SND_SOC_CS53L30
681         tristate "Cirrus Logic CS53L30 CODEC"
682         depends on I2C
683
684 config SND_SOC_CX20442
685         tristate
686         depends on TTY
687
688 config SND_SOC_CX2072X
689         tristate "Conexant CX2072X CODEC"
690         depends on I2C
691         help
692           Enable support for Conexant CX20721 and CX20723 codec chips.
693
694 config SND_SOC_JZ4740_CODEC
695         depends on MIPS || COMPILE_TEST
696         depends on OF
697         select REGMAP_MMIO
698         tristate "Ingenic JZ4740 internal CODEC"
699         help
700           Enable support for the internal CODEC found in the JZ4740 SoC
701           from Ingenic.
702
703           This driver can also be built as a module. If so, the module
704           will be called snd-soc-jz4740-codec.
705
706 config SND_SOC_JZ4725B_CODEC
707         depends on MIPS || COMPILE_TEST
708         depends on OF
709         select REGMAP
710         tristate "Ingenic JZ4725B internal CODEC"
711         help
712           Enable support for the internal CODEC found in the JZ4725B SoC
713           from Ingenic.
714
715           This driver can also be built as a module. If so, the module
716           will be called snd-soc-jz4725b-codec.
717
718 config SND_SOC_JZ4770_CODEC
719         depends on MIPS || COMPILE_TEST
720         depends on OF
721         select REGMAP
722         tristate "Ingenic JZ4770 internal CODEC"
723         help
724           Enable support for the internal CODEC found in the JZ4770 SoC
725           from Ingenic.
726
727           This driver can also be built as a module. If so, the module
728           will be called snd-soc-jz4770-codec.
729
730 config SND_SOC_L3
731        tristate
732
733 config SND_SOC_DA7210
734         tristate
735         depends on SND_SOC_I2C_AND_SPI
736
737 config SND_SOC_DA7213
738         tristate "Dialog DA7213 CODEC"
739         depends on I2C
740
741 config SND_SOC_DA7218
742         tristate
743         depends on I2C
744
745 config SND_SOC_DA7219
746         tristate
747         depends on I2C
748
749 config SND_SOC_DA732X
750         tristate
751         depends on I2C
752
753 config SND_SOC_DA9055
754         tristate
755         depends on I2C
756
757 config SND_SOC_DMIC
758         tristate "Generic Digital Microphone CODEC"
759         depends on GPIOLIB
760         help
761           Enable support for the Generic Digital Microphone CODEC.
762           Select this if your sound card has DMICs.
763
764 config SND_SOC_HDMI_CODEC
765         tristate
766         select SND_PCM_ELD
767         select SND_PCM_IEC958
768         select HDMI
769
770 config SND_SOC_ES7134
771        tristate "Everest Semi ES7134 CODEC"
772
773 config SND_SOC_ES7241
774        tristate "Everest Semi ES7241 CODEC"
775
776 config SND_SOC_ES8316
777         tristate "Everest Semi ES8316 CODEC"
778         depends on I2C
779
780 config SND_SOC_ES8328
781         tristate
782
783 config SND_SOC_ES8328_I2C
784         tristate "Everest Semi ES8328 CODEC (I2C)"
785         depends on I2C
786         select SND_SOC_ES8328
787
788 config SND_SOC_ES8328_SPI
789         tristate "Everest Semi ES8328 CODEC (SPI)"
790         depends on SPI_MASTER
791         select SND_SOC_ES8328
792
793 config SND_SOC_GTM601
794         tristate 'GTM601 UMTS modem audio codec'
795
796 config SND_SOC_HDAC_HDMI
797         tristate
798         select SND_HDA_EXT_CORE
799         select SND_PCM_ELD
800         select HDMI
801
802 config SND_SOC_HDAC_HDA
803         tristate
804         select SND_HDA
805
806 config SND_SOC_ICS43432
807         tristate
808
809 config SND_SOC_INNO_RK3036
810         tristate "Inno codec driver for RK3036 SoC"
811         select REGMAP_MMIO
812
813 config SND_SOC_ISABELLE
814         tristate
815         depends on I2C
816
817 config SND_SOC_LM49453
818         tristate
819         depends on I2C
820
821 config SND_SOC_LOCHNAGAR_SC
822         tristate "Lochnagar Sound Card"
823         depends on MFD_LOCHNAGAR
824         help
825           This driver support the sound card functionality of the Cirrus
826           Logic Lochnagar audio development board.
827
828 config SND_SOC_MADERA
829         tristate
830         default y if SND_SOC_CS47L15=y
831         default y if SND_SOC_CS47L35=y
832         default y if SND_SOC_CS47L85=y
833         default y if SND_SOC_CS47L90=y
834         default y if SND_SOC_CS47L92=y
835         default m if SND_SOC_CS47L15=m
836         default m if SND_SOC_CS47L35=m
837         default m if SND_SOC_CS47L85=m
838         default m if SND_SOC_CS47L90=m
839         default m if SND_SOC_CS47L92=m
840
841 config SND_SOC_MAX98088
842         tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
843         depends on I2C
844
845 config SND_SOC_MAX98090
846         tristate
847         depends on I2C
848
849 config SND_SOC_MAX98095
850         tristate
851         depends on I2C
852
853 config SND_SOC_MAX98357A
854         tristate "Maxim MAX98357A CODEC"
855         depends on GPIOLIB
856
857 config SND_SOC_MAX98371
858         tristate
859         depends on I2C
860
861 config SND_SOC_MAX98504
862         tristate "Maxim MAX98504 speaker amplifier"
863         depends on I2C
864
865 config SND_SOC_MAX9867
866         tristate "Maxim MAX9867 CODEC"
867         depends on I2C
868
869 config SND_SOC_MAX98925
870         tristate
871         depends on I2C
872
873 config SND_SOC_MAX98926
874         tristate
875         depends on I2C
876
877 config SND_SOC_MAX98927
878         tristate "Maxim Integrated MAX98927 Speaker Amplifier"
879         depends on I2C
880
881 config SND_SOC_MAX98373
882         tristate
883
884 config SND_SOC_MAX98373_I2C
885         tristate "Maxim Integrated MAX98373 Speaker Amplifier"
886         depends on I2C
887         select SND_SOC_MAX98373
888
889 config SND_SOC_MAX98373_SDW
890         tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW"
891         depends on SOUNDWIRE
892         select SND_SOC_MAX98373
893         select REGMAP_SOUNDWIRE
894         help
895           Enable support for Maxim Integrated MAX98373 Soundwire
896           amplifier. MAX98373 supports either the MIPI SoundWire
897           compatible interface for audio and control data, or
898           the PCM interface for audio data and a standard I2C
899           interface for control data. Select this if MAX98373 is
900           connected via soundwire.
901
902 config SND_SOC_MAX98390
903         tristate "Maxim Integrated MAX98390 Speaker Amplifier"
904         depends on I2C
905
906 config SND_SOC_MAX9850
907         tristate
908         depends on I2C
909
910 config SND_SOC_MAX9860
911         tristate "Maxim MAX9860 Mono Audio Voice Codec"
912         depends on I2C
913         select REGMAP_I2C
914
915 config SND_SOC_MSM8916_WCD_ANALOG
916         tristate "Qualcomm MSM8916 WCD Analog Codec"
917         depends on SPMI || COMPILE_TEST
918
919 config SND_SOC_MSM8916_WCD_DIGITAL
920         tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
921         select REGMAP_MMIO
922
923 config SND_SOC_PCM1681
924         tristate "Texas Instruments PCM1681 CODEC"
925         depends on I2C
926
927 config SND_SOC_PCM1789
928         tristate
929
930 config SND_SOC_PCM1789_I2C
931         tristate "Texas Instruments PCM1789 CODEC (I2C)"
932         depends on I2C
933         select SND_SOC_PCM1789
934         help
935           Enable support for Texas Instruments PCM1789 CODEC.
936           Select this if your PCM1789 is connected via an I2C bus.
937
938 config SND_SOC_PCM179X
939         tristate
940
941 config SND_SOC_PCM179X_I2C
942         tristate "Texas Instruments PCM179X CODEC (I2C)"
943         depends on I2C
944         select SND_SOC_PCM179X
945         help
946           Enable support for Texas Instruments PCM179x CODEC.
947           Select this if your PCM179x is connected via an I2C bus.
948
949 config SND_SOC_PCM179X_SPI
950         tristate "Texas Instruments PCM179X CODEC (SPI)"
951         depends on SPI_MASTER
952         select SND_SOC_PCM179X
953         help
954           Enable support for Texas Instruments PCM179x CODEC.
955           Select this if your PCM179x is connected via an SPI bus.
956
957 config SND_SOC_PCM186X
958         tristate
959
960 config SND_SOC_PCM186X_I2C
961         tristate "Texas Instruments PCM186x CODECs - I2C"
962         depends on I2C
963         select SND_SOC_PCM186X
964         select REGMAP_I2C
965
966 config SND_SOC_PCM186X_SPI
967         tristate "Texas Instruments PCM186x CODECs - SPI"
968         depends on SPI_MASTER
969         select SND_SOC_PCM186X
970         select REGMAP_SPI
971
972 config SND_SOC_PCM3008
973        tristate
974
975 config SND_SOC_PCM3060
976        tristate
977
978 config SND_SOC_PCM3060_I2C
979         tristate "Texas Instruments PCM3060 CODEC - I2C"
980         depends on I2C
981         select SND_SOC_PCM3060
982         select REGMAP_I2C
983
984 config SND_SOC_PCM3060_SPI
985         tristate "Texas Instruments PCM3060 CODEC - SPI"
986         depends on SPI_MASTER
987         select SND_SOC_PCM3060
988         select REGMAP_SPI
989
990 config SND_SOC_PCM3168A
991         tristate
992
993 config SND_SOC_PCM3168A_I2C
994         tristate "Texas Instruments PCM3168A CODEC - I2C"
995         depends on I2C
996         select SND_SOC_PCM3168A
997         select REGMAP_I2C
998
999 config SND_SOC_PCM3168A_SPI
1000         tristate "Texas Instruments PCM3168A CODEC - SPI"
1001         depends on SPI_MASTER
1002         select SND_SOC_PCM3168A
1003         select REGMAP_SPI
1004
1005 config SND_SOC_PCM5102A
1006         tristate "Texas Instruments PCM5102A CODEC"
1007
1008 config SND_SOC_PCM512x
1009         tristate
1010
1011 config SND_SOC_PCM512x_I2C
1012         tristate "Texas Instruments PCM512x CODECs - I2C"
1013         depends on I2C
1014         select SND_SOC_PCM512x
1015         select REGMAP_I2C
1016
1017 config SND_SOC_PCM512x_SPI
1018         tristate "Texas Instruments PCM512x CODECs - SPI"
1019         depends on SPI_MASTER
1020         select SND_SOC_PCM512x
1021         select REGMAP_SPI
1022
1023 config SND_SOC_RK3328
1024         tristate "Rockchip RK3328 audio CODEC"
1025         select REGMAP_MMIO
1026
1027 config SND_SOC_RL6231
1028         tristate
1029         default y if SND_SOC_RT5514=y
1030         default y if SND_SOC_RT5616=y
1031         default y if SND_SOC_RT5640=y
1032         default y if SND_SOC_RT5645=y
1033         default y if SND_SOC_RT5651=y
1034         default y if SND_SOC_RT5659=y
1035         default y if SND_SOC_RT5660=y
1036         default y if SND_SOC_RT5663=y
1037         default y if SND_SOC_RT5665=y
1038         default y if SND_SOC_RT5668=y
1039         default y if SND_SOC_RT5670=y
1040         default y if SND_SOC_RT5677=y
1041         default y if SND_SOC_RT5682=y
1042         default y if SND_SOC_RT1011=y
1043         default y if SND_SOC_RT1015=y
1044         default y if SND_SOC_RT1015P=y
1045         default y if SND_SOC_RT1305=y
1046         default y if SND_SOC_RT1308=y
1047         default m if SND_SOC_RT5514=m
1048         default m if SND_SOC_RT5616=m
1049         default m if SND_SOC_RT5640=m
1050         default m if SND_SOC_RT5645=m
1051         default m if SND_SOC_RT5651=m
1052         default m if SND_SOC_RT5659=m
1053         default m if SND_SOC_RT5660=m
1054         default m if SND_SOC_RT5663=m
1055         default m if SND_SOC_RT5665=m
1056         default m if SND_SOC_RT5668=m
1057         default m if SND_SOC_RT5670=m
1058         default m if SND_SOC_RT5677=m
1059         default m if SND_SOC_RT5682=m
1060         default m if SND_SOC_RT1011=m
1061         default m if SND_SOC_RT1015=m
1062         default m if SND_SOC_RT1015P=m
1063         default m if SND_SOC_RT1305=m
1064         default m if SND_SOC_RT1308=m
1065
1066 config SND_SOC_RL6347A
1067         tristate
1068         default y if SND_SOC_RT274=y
1069         default y if SND_SOC_RT286=y
1070         default y if SND_SOC_RT298=y
1071         default m if SND_SOC_RT274=m
1072         default m if SND_SOC_RT286=m
1073         default m if SND_SOC_RT298=m
1074
1075 config SND_SOC_RT274
1076         tristate
1077         depends on I2C
1078
1079 config SND_SOC_RT286
1080         tristate
1081         depends on I2C
1082
1083 config SND_SOC_RT298
1084         tristate
1085         depends on I2C
1086
1087 config SND_SOC_RT1011
1088         tristate
1089         depends on I2C
1090
1091 config SND_SOC_RT1015
1092         tristate
1093         depends on I2C
1094
1095 config SND_SOC_RT1015P
1096         tristate
1097         depends on GPIOLIB
1098
1099 config SND_SOC_RT1305
1100         tristate
1101         depends on I2C
1102
1103 config SND_SOC_RT1308
1104         tristate
1105         depends on I2C
1106
1107 config SND_SOC_RT1308_SDW
1108         tristate "Realtek RT1308 Codec - SDW"
1109         depends on I2C && SOUNDWIRE
1110         select REGMAP_SOUNDWIRE
1111
1112 config SND_SOC_RT5514
1113         tristate
1114         depends on I2C
1115
1116 config SND_SOC_RT5514_SPI
1117         tristate
1118         depends on SPI_MASTER
1119
1120 config SND_SOC_RT5514_SPI_BUILTIN
1121         bool # force RT5514_SPI to be built-in to avoid link errors
1122         default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
1123
1124 config SND_SOC_RT5616
1125         tristate "Realtek RT5616 CODEC"
1126         depends on I2C
1127
1128 config SND_SOC_RT5631
1129         tristate "Realtek ALC5631/RT5631 CODEC"
1130         depends on I2C
1131
1132 config SND_SOC_RT5640
1133         tristate
1134         depends on I2C
1135
1136 config SND_SOC_RT5645
1137         tristate
1138         depends on I2C
1139
1140 config SND_SOC_RT5651
1141         tristate
1142         depends on I2C
1143
1144 config SND_SOC_RT5659
1145         tristate
1146         depends on I2C
1147
1148 config SND_SOC_RT5660
1149         tristate
1150         depends on I2C
1151
1152 config SND_SOC_RT5663
1153         tristate
1154         depends on I2C
1155
1156 config SND_SOC_RT5665
1157         tristate
1158         depends on I2C
1159
1160 config SND_SOC_RT5668
1161         tristate
1162         depends on I2C
1163
1164 config SND_SOC_RT5670
1165         tristate
1166         depends on I2C
1167
1168 config SND_SOC_RT5677
1169         tristate
1170         depends on I2C
1171         select REGMAP_I2C
1172         select REGMAP_IRQ
1173
1174 config SND_SOC_RT5677_SPI
1175         tristate
1176         default SND_SOC_RT5677 && SPI
1177
1178 config SND_SOC_RT5682
1179         tristate
1180
1181 config SND_SOC_RT5682_I2C
1182         tristate
1183         depends on I2C
1184         select SND_SOC_RT5682
1185
1186 config SND_SOC_RT5682_SDW
1187         tristate "Realtek RT5682 Codec - SDW"
1188         depends on SOUNDWIRE
1189         select SND_SOC_RT5682
1190         select REGMAP_SOUNDWIRE
1191
1192 config SND_SOC_RT700
1193         tristate
1194
1195 config SND_SOC_RT700_SDW
1196         tristate "Realtek RT700 Codec - SDW"
1197         depends on SOUNDWIRE
1198         select SND_SOC_RT700
1199         select REGMAP_SOUNDWIRE
1200
1201 config SND_SOC_RT711
1202         tristate
1203
1204 config SND_SOC_RT711_SDW
1205         tristate "Realtek RT711 Codec - SDW"
1206         depends on SOUNDWIRE
1207         select SND_SOC_RT711
1208         select REGMAP_SOUNDWIRE
1209
1210 config SND_SOC_RT715
1211         tristate
1212
1213 config SND_SOC_RT715_SDW
1214         tristate "Realtek RT715 Codec - SDW"
1215         depends on SOUNDWIRE
1216         select SND_SOC_RT715
1217         select REGMAP_SOUNDWIRE
1218
1219 #Freescale sgtl5000 codec
1220 config SND_SOC_SGTL5000
1221         tristate "Freescale SGTL5000 CODEC"
1222         depends on I2C
1223
1224 config SND_SOC_SI476X
1225         tristate
1226
1227 config SND_SOC_SIGMADSP
1228         tristate
1229         select CRC32
1230
1231 config SND_SOC_SIGMADSP_I2C
1232         tristate
1233         select SND_SOC_SIGMADSP
1234
1235 config SND_SOC_SIGMADSP_REGMAP
1236         tristate
1237         select SND_SOC_SIGMADSP
1238
1239 config SND_SOC_SIMPLE_AMPLIFIER
1240         tristate "Simple Audio Amplifier"
1241         select GPIOLIB
1242
1243 config SND_SOC_SIRF_AUDIO_CODEC
1244         tristate "SiRF SoC internal audio codec"
1245         select REGMAP_MMIO
1246
1247 config SND_SOC_SPDIF
1248         tristate "S/PDIF CODEC"
1249
1250 config SND_SOC_SSM2305
1251         tristate "Analog Devices SSM2305 Class-D Amplifier"
1252         help
1253           Enable support for Analog Devices SSM2305 filterless
1254           high-efficiency mono Class-D audio power amplifiers.
1255
1256 config SND_SOC_SSM2518
1257         tristate
1258         depends on I2C
1259
1260 config SND_SOC_SSM2602
1261         tristate
1262
1263 config SND_SOC_SSM2602_SPI
1264         tristate "Analog Devices SSM2602 CODEC - SPI"
1265         depends on SPI_MASTER
1266         select SND_SOC_SSM2602
1267         select REGMAP_SPI
1268
1269 config SND_SOC_SSM2602_I2C
1270         tristate "Analog Devices SSM2602 CODEC - I2C"
1271         depends on I2C
1272         select SND_SOC_SSM2602
1273         select REGMAP_I2C
1274
1275 config SND_SOC_SSM4567
1276         tristate "Analog Devices ssm4567 amplifier driver support"
1277         depends on I2C
1278
1279 config SND_SOC_STA32X
1280         tristate "STA326, STA328 and STA329 speaker amplifier"
1281         depends on I2C
1282         select REGMAP_I2C
1283
1284 config SND_SOC_STA350
1285         tristate "STA350 speaker amplifier"
1286         depends on I2C
1287
1288 config SND_SOC_STA529
1289         tristate
1290         depends on I2C
1291
1292 config SND_SOC_STAC9766
1293         tristate
1294         depends on SND_SOC_AC97_BUS
1295
1296 config SND_SOC_STI_SAS
1297         tristate "codec Audio support for STI SAS codec"
1298
1299 config SND_SOC_TAS2552
1300         tristate "Texas Instruments TAS2552 Mono Audio amplifier"
1301         depends on I2C
1302
1303 config SND_SOC_TAS2562
1304         tristate "Texas Instruments TAS2562 Mono Audio amplifier"
1305         depends on I2C
1306
1307 config SND_SOC_TAS2764
1308         tristate "Texas Instruments TAS2764 Mono Audio amplifier"
1309         depends on I2C
1310
1311 config SND_SOC_TAS2770
1312         tristate "Texas Instruments TAS2770 speaker amplifier"
1313         depends on I2C
1314
1315 config SND_SOC_TAS5086
1316         tristate "Texas Instruments TAS5086 speaker amplifier"
1317         depends on I2C
1318
1319 config SND_SOC_TAS571X
1320         tristate "Texas Instruments TAS571x power amplifiers"
1321         depends on I2C
1322         help
1323           Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
1324           TAS5719 and TAS5721 power amplifiers
1325
1326 config SND_SOC_TAS5720
1327         tristate "Texas Instruments TAS5720 Mono Audio amplifier"
1328         depends on I2C
1329         help
1330           Enable support for Texas Instruments TAS5720L/M high-efficiency mono
1331           Class-D audio power amplifiers.
1332
1333 config SND_SOC_TAS6424
1334         tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
1335         depends on I2C
1336         help
1337           Enable support for Texas Instruments TAS6424 high-efficiency
1338           digital input quad-channel Class-D audio power amplifiers.
1339
1340 config SND_SOC_TDA7419
1341         tristate "ST TDA7419 audio processor"
1342         depends on I2C
1343         select REGMAP_I2C
1344
1345 config SND_SOC_TFA9879
1346         tristate "NXP Semiconductors TFA9879 amplifier"
1347         depends on I2C
1348
1349 config SND_SOC_TLV320AIC23
1350         tristate
1351
1352 config SND_SOC_TLV320AIC23_I2C
1353         tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
1354         depends on I2C
1355         select SND_SOC_TLV320AIC23
1356
1357 config SND_SOC_TLV320AIC23_SPI
1358         tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
1359         depends on SPI_MASTER
1360         select SND_SOC_TLV320AIC23
1361
1362 config SND_SOC_TLV320AIC26
1363         tristate
1364         depends on SPI
1365
1366 config SND_SOC_TLV320AIC31XX
1367         tristate "Texas Instruments TLV320AIC31xx CODECs"
1368         depends on I2C
1369         select REGMAP_I2C
1370
1371 config SND_SOC_TLV320AIC32X4
1372         tristate
1373         depends on COMMON_CLK
1374
1375 config SND_SOC_TLV320AIC32X4_I2C
1376         tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
1377         depends on I2C
1378         depends on COMMON_CLK
1379         select SND_SOC_TLV320AIC32X4
1380
1381 config SND_SOC_TLV320AIC32X4_SPI
1382         tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
1383         depends on SPI_MASTER
1384         depends on COMMON_CLK
1385         select SND_SOC_TLV320AIC32X4
1386
1387 config SND_SOC_TLV320AIC3X
1388         tristate "Texas Instruments TLV320AIC3x CODECs"
1389         depends on I2C
1390
1391 config SND_SOC_TLV320DAC33
1392         tristate
1393         depends on I2C
1394
1395 config SND_SOC_TLV320ADCX140
1396         tristate "Texas Instruments TLV320ADCX140 CODEC family"
1397         depends on I2C
1398         select REGMAP_I2C
1399         help
1400           Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and
1401           tlv320adc6140 quad channel ADCs.
1402
1403 config SND_SOC_TS3A227E
1404         tristate "TI Headset/Mic detect and keypress chip"
1405         depends on I2C
1406
1407 config SND_SOC_TSCS42XX
1408         tristate "Tempo Semiconductor TSCS42xx CODEC"
1409         depends on I2C
1410         select REGMAP_I2C
1411         help
1412           Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
1413
1414 config SND_SOC_TSCS454
1415         tristate "Tempo Semiconductor TSCS454 CODEC"
1416         depends on I2C
1417         select REGMAP_I2C
1418         help
1419           Add support for Tempo Semiconductor's TSCS454 audio CODEC.
1420
1421 config SND_SOC_TWL4030
1422         tristate
1423         depends on TWL4030_CORE
1424         select MFD_TWL4030_AUDIO
1425
1426 config SND_SOC_TWL6040
1427         tristate
1428         depends on TWL6040_CORE
1429
1430 config SND_SOC_UDA1334
1431         tristate "NXP UDA1334 DAC"
1432         depends on GPIOLIB
1433         help
1434           The UDA1334 is an NXP audio codec, supports the I2S-bus data format
1435           and has basic features such as de-emphasis (at 44.1 kHz sampling
1436           rate) and mute.
1437
1438 config SND_SOC_UDA134X
1439        tristate
1440
1441 config SND_SOC_UDA1380
1442         tristate
1443         depends on I2C
1444
1445 config SND_SOC_WCD9335
1446         tristate "WCD9335 Codec"
1447         depends on SLIMBUS
1448         select REGMAP_SLIMBUS
1449         select REGMAP_IRQ
1450         help
1451           The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
1452           Qualcomm Technologies, Inc. (QTI) multimedia solutions,
1453           including the MSM8996, MSM8976, and MSM8956 chipsets.
1454
1455 config SND_SOC_WCD934X
1456         tristate "WCD9340/WCD9341 Codec"
1457         depends on COMMON_CLK
1458         depends on MFD_WCD934X
1459         help
1460           The WCD9340/9341 is a audio codec IC Integrated in
1461           Qualcomm SoCs like SDM845.
1462
1463 config SND_SOC_WL1273
1464         tristate
1465
1466 config SND_SOC_WM0010
1467         tristate
1468         depends on SPI_MASTER
1469
1470 config SND_SOC_WM1250_EV1
1471         tristate
1472         depends on I2C
1473
1474 config SND_SOC_WM2000
1475         tristate
1476         depends on I2C
1477
1478 config SND_SOC_WM2200
1479         tristate
1480         depends on I2C
1481
1482 config SND_SOC_WM5100
1483         tristate
1484         depends on I2C
1485
1486 config SND_SOC_WM5102
1487         tristate
1488         depends on MFD_WM5102
1489
1490 config SND_SOC_WM5110
1491         tristate
1492         depends on MFD_WM5110
1493
1494 config SND_SOC_WM8350
1495         tristate
1496         depends on MFD_WM8350
1497
1498 config SND_SOC_WM8400
1499         tristate
1500         # FIXME nothing selects SND_SOC_WM8400??
1501         depends on MFD_WM8400
1502
1503 config SND_SOC_WM8510
1504         tristate "Wolfson Microelectronics WM8510 CODEC"
1505         depends on SND_SOC_I2C_AND_SPI
1506
1507 config SND_SOC_WM8523
1508         tristate "Wolfson Microelectronics WM8523 DAC"
1509         depends on I2C
1510
1511 config SND_SOC_WM8524
1512         tristate "Wolfson Microelectronics WM8524 DAC"
1513         depends on GPIOLIB
1514
1515 config SND_SOC_WM8580
1516         tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
1517         depends on I2C
1518
1519 config SND_SOC_WM8711
1520         tristate "Wolfson Microelectronics WM8711 CODEC"
1521         depends on SND_SOC_I2C_AND_SPI
1522
1523 config SND_SOC_WM8727
1524         tristate
1525
1526 config SND_SOC_WM8728
1527         tristate "Wolfson Microelectronics WM8728 DAC"
1528         depends on SND_SOC_I2C_AND_SPI
1529
1530 config SND_SOC_WM8731
1531         tristate "Wolfson Microelectronics WM8731 CODEC"
1532         depends on SND_SOC_I2C_AND_SPI
1533
1534 config SND_SOC_WM8737
1535         tristate "Wolfson Microelectronics WM8737 ADC"
1536         depends on SND_SOC_I2C_AND_SPI
1537
1538 config SND_SOC_WM8741
1539         tristate "Wolfson Microelectronics WM8741 DAC"
1540         depends on SND_SOC_I2C_AND_SPI
1541
1542 config SND_SOC_WM8750
1543         tristate "Wolfson Microelectronics WM8750 CODEC"
1544         depends on SND_SOC_I2C_AND_SPI
1545
1546 config SND_SOC_WM8753
1547         tristate "Wolfson Microelectronics WM8753 CODEC"
1548         depends on SND_SOC_I2C_AND_SPI
1549
1550 config SND_SOC_WM8770
1551         tristate "Wolfson Microelectronics WM8770 CODEC"
1552         depends on SPI_MASTER
1553
1554 config SND_SOC_WM8776
1555         tristate "Wolfson Microelectronics WM8776 CODEC"
1556         depends on SND_SOC_I2C_AND_SPI
1557
1558 config SND_SOC_WM8782
1559         tristate "Wolfson Microelectronics WM8782 ADC"
1560
1561 config SND_SOC_WM8804
1562         tristate
1563
1564 config SND_SOC_WM8804_I2C
1565         tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1566         depends on I2C
1567         select SND_SOC_WM8804
1568         select REGMAP_I2C
1569
1570 config SND_SOC_WM8804_SPI
1571         tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1572         depends on SPI_MASTER
1573         select SND_SOC_WM8804
1574         select REGMAP_SPI
1575
1576 config SND_SOC_WM8900
1577         tristate
1578         depends on SND_SOC_I2C_AND_SPI
1579
1580 config SND_SOC_WM8903
1581         tristate "Wolfson Microelectronics WM8903 CODEC"
1582         depends on I2C
1583
1584 config SND_SOC_WM8904
1585         tristate "Wolfson Microelectronics WM8904 CODEC"
1586         depends on I2C
1587
1588 config SND_SOC_WM8940
1589         tristate
1590         depends on I2C
1591
1592 config SND_SOC_WM8955
1593         tristate
1594         depends on I2C
1595
1596 config SND_SOC_WM8960
1597         tristate "Wolfson Microelectronics WM8960 CODEC"
1598         depends on I2C
1599
1600 config SND_SOC_WM8961
1601         tristate
1602         depends on I2C
1603
1604 config SND_SOC_WM8962
1605         tristate "Wolfson Microelectronics WM8962 CODEC"
1606         depends on I2C && INPUT
1607
1608 config SND_SOC_WM8971
1609         tristate
1610         depends on I2C
1611
1612 config SND_SOC_WM8974
1613         tristate "Wolfson Microelectronics WM8974 codec"
1614         depends on I2C
1615
1616 config SND_SOC_WM8978
1617         tristate "Wolfson Microelectronics WM8978 codec"
1618         depends on I2C
1619
1620 config SND_SOC_WM8983
1621         tristate
1622         depends on SND_SOC_I2C_AND_SPI
1623
1624 config SND_SOC_WM8985
1625         tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1626         depends on SND_SOC_I2C_AND_SPI
1627
1628 config SND_SOC_WM8988
1629         tristate
1630         depends on SND_SOC_I2C_AND_SPI
1631
1632 config SND_SOC_WM8990
1633         tristate
1634         depends on I2C
1635
1636 config SND_SOC_WM8991
1637         tristate
1638         depends on I2C
1639
1640 config SND_SOC_WM8993
1641         tristate
1642         depends on I2C
1643
1644 config SND_SOC_WM8994
1645         tristate
1646
1647 config SND_SOC_WM8995
1648         tristate
1649         depends on SND_SOC_I2C_AND_SPI
1650
1651 config SND_SOC_WM8996
1652         tristate
1653         depends on I2C
1654
1655 config SND_SOC_WM8997
1656         tristate
1657         depends on MFD_WM8997
1658
1659 config SND_SOC_WM8998
1660         tristate
1661         depends on MFD_WM8998
1662
1663 config SND_SOC_WM9081
1664         tristate
1665         depends on I2C
1666
1667 config SND_SOC_WM9090
1668         tristate
1669         depends on I2C
1670
1671 config SND_SOC_WM9705
1672         tristate
1673         depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1674         select REGMAP_AC97
1675         select AC97_BUS_COMPAT if AC97_BUS_NEW
1676
1677 config SND_SOC_WM9712
1678         tristate
1679         depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1680         select REGMAP_AC97
1681         select AC97_BUS_COMPAT if AC97_BUS_NEW
1682
1683 config SND_SOC_WM9713
1684         tristate
1685         depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1686         select REGMAP_AC97
1687         select AC97_BUS_COMPAT if AC97_BUS_NEW
1688
1689 config SND_SOC_WSA881X
1690         tristate "WSA881X Codec"
1691         depends on SOUNDWIRE
1692         select REGMAP_SOUNDWIRE
1693         tristate
1694         help
1695           This enables support for Qualcomm WSA8810/WSA8815 Class-D
1696           Smart Speaker Amplifier.
1697
1698 config SND_SOC_ZL38060
1699         tristate "Microsemi ZL38060 Connected Home Audio Processor"
1700         depends on SPI_MASTER
1701         select GPIOLIB
1702         select REGMAP
1703         help
1704           Support for ZL38060 Connected Home Audio Processor from Microsemi,
1705           which consists of a Digital Signal Processor (DSP), several Digital
1706           Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs.
1707
1708 config SND_SOC_ZX_AUD96P22
1709         tristate "ZTE ZX AUD96P22 CODEC"
1710         depends on I2C
1711         select REGMAP_I2C
1712
1713 # Amp
1714 config SND_SOC_LM4857
1715         tristate
1716         depends on I2C
1717
1718 config SND_SOC_MAX9759
1719         tristate "Maxim MAX9759 speaker Amplifier"
1720         select GPIOLIB
1721
1722 config SND_SOC_MAX9768
1723         tristate
1724         depends on I2C
1725
1726 config SND_SOC_MAX9877
1727         tristate
1728         depends on I2C
1729
1730 config SND_SOC_MC13783
1731         tristate
1732         depends on MFD_MC13XXX
1733
1734 config SND_SOC_ML26124
1735         tristate
1736         depends on I2C
1737
1738 config SND_SOC_MT6351
1739         tristate "MediaTek MT6351 Codec"
1740
1741 config SND_SOC_MT6358
1742         tristate "MediaTek MT6358 Codec"
1743         help
1744           Enable support for the platform which uses MT6358 as
1745           external codec device.
1746
1747 config SND_SOC_MT6359
1748         tristate "MediaTek MT6359 Codec"
1749         depends on MTK_PMIC_WRAP
1750         help
1751           Enable support for the platform which uses MT6359 as
1752           external codec device.
1753
1754 config SND_SOC_MT6660
1755         tristate "Mediatek MT6660 Speaker Amplifier"
1756         depends on I2C
1757         help
1758           MediaTek MT6660 is a smart power amplifier which contain
1759           speaker protection, multi-band DRC, equalizer functions.
1760           Select N if you don't have MT6660 on board.
1761           Select M to build this as module.
1762
1763 config SND_SOC_NAU8540
1764        tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1765        depends on I2C
1766
1767 config SND_SOC_NAU8810
1768         tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1769         depends on I2C
1770
1771 config SND_SOC_NAU8822
1772         tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
1773         depends on I2C
1774
1775 config SND_SOC_NAU8824
1776         tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1777         depends on I2C
1778
1779 config SND_SOC_NAU8825
1780         tristate
1781         depends on I2C
1782
1783 config SND_SOC_TPA6130A2
1784         tristate "Texas Instruments TPA6130A2 headphone amplifier"
1785         depends on I2C
1786
1787 endmenu