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