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