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