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