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