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