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