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