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