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