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