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