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