xref: /openbmc/linux/sound/soc/codecs/Kconfig (revision 12653414)
1# Helper to resolve issues with configs that have SPI enabled but I2C
2# modular, meaning we can't build the codec driver in with I2C support.
3# We use an ordered list of conditional defaults to pick the appropriate
4# setting - SPI can't be modular so that case doesn't need to be covered.
5config SND_SOC_I2C_AND_SPI
6	tristate
7	default m if I2C=m
8	default y if I2C=y
9	default y if SPI_MASTER=y
10
11menu "CODEC drivers"
12
13config SND_SOC_ALL_CODECS
14	tristate "Build all ASoC CODEC drivers"
15	depends on COMPILE_TEST
16	select SND_SOC_88PM860X if MFD_88PM860X
17	select SND_SOC_L3
18	select SND_SOC_AB8500_CODEC if ABX500_CORE
19	select SND_SOC_AC97_CODEC
20	select SND_SOC_AD1836 if SPI_MASTER
21	select SND_SOC_AD193X_SPI if SPI_MASTER
22	select SND_SOC_AD193X_I2C if I2C
23	select SND_SOC_AD1980 if SND_SOC_AC97_BUS
24	select SND_SOC_AD73311
25	select SND_SOC_ADAU1373 if I2C
26	select SND_SOC_ADAU1761_I2C if I2C
27	select SND_SOC_ADAU1761_SPI if SPI
28	select SND_SOC_ADAU1781_I2C if I2C
29	select SND_SOC_ADAU1781_SPI if SPI
30	select SND_SOC_ADAV801 if SPI_MASTER
31	select SND_SOC_ADAV803 if I2C
32	select SND_SOC_ADAU1977_SPI if SPI_MASTER
33	select SND_SOC_ADAU1977_I2C if I2C
34	select SND_SOC_ADAU1701 if I2C
35	select SND_SOC_ADAU7002
36	select SND_SOC_ADS117X
37	select SND_SOC_AK4104 if SPI_MASTER
38	select SND_SOC_AK4535 if I2C
39	select SND_SOC_AK4554
40	select SND_SOC_AK4613 if I2C
41	select SND_SOC_AK4641 if I2C
42	select SND_SOC_AK4642 if I2C
43	select SND_SOC_AK4671 if I2C
44	select SND_SOC_AK5386
45	select SND_SOC_ALC5623 if I2C
46	select SND_SOC_ALC5632 if I2C
47	select SND_SOC_BT_SCO
48	select SND_SOC_CQ0093VC
49	select SND_SOC_CS35L32 if I2C
50	select SND_SOC_CS35L33 if I2C
51	select SND_SOC_CS35L34 if I2C
52	select SND_SOC_CS35L35 if I2C
53	select SND_SOC_CS42L42 if I2C
54	select SND_SOC_CS42L51_I2C if I2C
55	select SND_SOC_CS42L52 if I2C && INPUT
56	select SND_SOC_CS42L56 if I2C && INPUT
57	select SND_SOC_CS42L73 if I2C
58	select SND_SOC_CS4265 if I2C
59	select SND_SOC_CS4270 if I2C
60	select SND_SOC_CS4271_I2C if I2C
61	select SND_SOC_CS4271_SPI if SPI_MASTER
62	select SND_SOC_CS42XX8_I2C if I2C
63	select SND_SOC_CS4349 if I2C
64	select SND_SOC_CS47L24 if MFD_CS47L24
65	select SND_SOC_CS53L30 if I2C
66	select SND_SOC_CX20442 if TTY
67	select SND_SOC_DA7210 if SND_SOC_I2C_AND_SPI
68	select SND_SOC_DA7213 if I2C
69	select SND_SOC_DA7218 if I2C
70	select SND_SOC_DA7219 if I2C
71	select SND_SOC_DA732X if I2C
72	select SND_SOC_DA9055 if I2C
73	select SND_SOC_DIO2125
74	select SND_SOC_DMIC
75	select SND_SOC_ES8316 if I2C
76	select SND_SOC_ES8328_SPI if SPI_MASTER
77	select SND_SOC_ES8328_I2C if I2C
78	select SND_SOC_ES7134
79	select SND_SOC_GTM601
80	select SND_SOC_HDAC_HDMI
81	select SND_SOC_ICS43432
82	select SND_SOC_INNO_RK3036
83	select SND_SOC_ISABELLE if I2C
84	select SND_SOC_JZ4740_CODEC
85	select SND_SOC_LM4857 if I2C
86	select SND_SOC_LM49453 if I2C
87	select SND_SOC_MAX98088 if I2C
88	select SND_SOC_MAX98090 if I2C
89	select SND_SOC_MAX98095 if I2C
90	select SND_SOC_MAX98357A if GPIOLIB
91	select SND_SOC_MAX98371 if I2C
92	select SND_SOC_MAX98504 if I2C
93	select SND_SOC_MAX9867 if I2C
94	select SND_SOC_MAX98925 if I2C
95	select SND_SOC_MAX98926 if I2C
96	select SND_SOC_MAX98927 if I2C
97	select SND_SOC_MAX9850 if I2C
98	select SND_SOC_MAX9860 if I2C
99	select SND_SOC_MAX9768 if I2C
100	select SND_SOC_MAX9877 if I2C
101	select SND_SOC_MC13783 if MFD_MC13XXX
102	select SND_SOC_ML26124 if I2C
103	select SND_SOC_NAU8540 if I2C
104	select SND_SOC_NAU8810 if I2C
105	select SND_SOC_NAU8824 if I2C
106	select SND_SOC_NAU8825 if I2C
107	select SND_SOC_HDMI_CODEC
108	select SND_SOC_PCM1681 if I2C
109	select SND_SOC_PCM179X_I2C if I2C
110	select SND_SOC_PCM179X_SPI if SPI_MASTER
111	select SND_SOC_PCM3008
112	select SND_SOC_PCM3168A_I2C if I2C
113	select SND_SOC_PCM3168A_SPI if SPI_MASTER
114	select SND_SOC_PCM5102A
115	select SND_SOC_PCM512x_I2C if I2C
116	select SND_SOC_PCM512x_SPI if SPI_MASTER
117	select SND_SOC_RT286 if I2C
118	select SND_SOC_RT298 if I2C
119	select SND_SOC_RT5514 if I2C
120	select SND_SOC_RT5616 if I2C
121	select SND_SOC_RT5631 if I2C
122	select SND_SOC_RT5640 if I2C
123	select SND_SOC_RT5645 if I2C
124	select SND_SOC_RT5651 if I2C
125	select SND_SOC_RT5659 if I2C
126	select SND_SOC_RT5660 if I2C
127	select SND_SOC_RT5663 if I2C
128	select SND_SOC_RT5665 if I2C
129	select SND_SOC_RT5670 if I2C
130	select SND_SOC_RT5677 if I2C && SPI_MASTER
131	select SND_SOC_SGTL5000 if I2C
132	select SND_SOC_SI476X if MFD_SI476X_CORE
133	select SND_SOC_SIRF_AUDIO_CODEC
134	select SND_SOC_SN95031 if INTEL_SCU_IPC
135	select SND_SOC_SPDIF
136	select SND_SOC_SSM2518 if I2C
137	select SND_SOC_SSM2602_SPI if SPI_MASTER
138	select SND_SOC_SSM2602_I2C if I2C
139	select SND_SOC_SSM4567 if I2C
140	select SND_SOC_STA32X if I2C
141	select SND_SOC_STA350 if I2C
142	select SND_SOC_STA529 if I2C
143	select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
144	select SND_SOC_STI_SAS
145	select SND_SOC_TAS2552 if I2C
146	select SND_SOC_TAS5086 if I2C
147	select SND_SOC_TAS571X if I2C
148	select SND_SOC_TAS5720 if I2C
149	select SND_SOC_TFA9879 if I2C
150	select SND_SOC_TLV320AIC23_I2C if I2C
151	select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
152	select SND_SOC_TLV320AIC26 if SPI_MASTER
153	select SND_SOC_TLV320AIC31XX if I2C
154	select SND_SOC_TLV320AIC32X4_I2C if I2C
155	select SND_SOC_TLV320AIC32X4_SPI if SPI_MASTER
156	select SND_SOC_TLV320AIC3X if I2C
157	select SND_SOC_TPA6130A2 if I2C
158	select SND_SOC_TLV320DAC33 if I2C
159	select SND_SOC_TS3A227E if I2C
160	select SND_SOC_TWL4030 if TWL4030_CORE
161	select SND_SOC_TWL6040 if TWL6040_CORE
162	select SND_SOC_UDA134X
163	select SND_SOC_UDA1380 if I2C
164	select SND_SOC_WL1273 if MFD_WL1273_CORE
165	select SND_SOC_WM0010 if SPI_MASTER
166	select SND_SOC_WM1250_EV1 if I2C
167	select SND_SOC_WM2000 if I2C
168	select SND_SOC_WM2200 if I2C
169	select SND_SOC_WM5100 if I2C
170	select SND_SOC_WM5102 if MFD_WM5102
171	select SND_SOC_WM5110 if MFD_WM5110
172	select SND_SOC_WM8350 if MFD_WM8350
173	select SND_SOC_WM8400 if MFD_WM8400
174	select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
175	select SND_SOC_WM8523 if I2C
176	select SND_SOC_WM8580 if I2C
177	select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
178	select SND_SOC_WM8727
179	select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
180	select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
181	select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
182	select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
183	select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
184	select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
185	select SND_SOC_WM8770 if SPI_MASTER
186	select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
187	select SND_SOC_WM8782
188	select SND_SOC_WM8804_I2C if I2C
189	select SND_SOC_WM8804_SPI if SPI_MASTER
190	select SND_SOC_WM8900 if I2C
191	select SND_SOC_WM8903 if I2C
192	select SND_SOC_WM8904 if I2C
193	select SND_SOC_WM8940 if I2C
194	select SND_SOC_WM8955 if I2C
195	select SND_SOC_WM8960 if I2C
196	select SND_SOC_WM8961 if I2C
197	select SND_SOC_WM8962 if I2C && INPUT
198	select SND_SOC_WM8971 if I2C
199	select SND_SOC_WM8974 if I2C
200	select SND_SOC_WM8978 if I2C
201	select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
202	select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
203	select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
204	select SND_SOC_WM8990 if I2C
205	select SND_SOC_WM8991 if I2C
206	select SND_SOC_WM8993 if I2C
207	select SND_SOC_WM8994 if MFD_WM8994
208	select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
209	select SND_SOC_WM8996 if I2C
210	select SND_SOC_WM8997 if MFD_WM8997
211	select SND_SOC_WM8998 if MFD_WM8998
212	select SND_SOC_WM9081 if I2C
213	select SND_SOC_WM9090 if I2C
214	select SND_SOC_WM9705 if SND_SOC_AC97_BUS
215	select SND_SOC_WM9712 if SND_SOC_AC97_BUS
216	select SND_SOC_WM9713 if SND_SOC_AC97_BUS
217        help
218          Normally ASoC codec drivers are only built if a machine driver which
219          uses them is also built since they are only usable with a machine
220          driver.  Selecting this option will allow these drivers to be built
221          without an explicit machine driver for test and development purposes.
222
223	  Support for the bus types used to access the codecs to be built must
224	  be selected separately.
225
226          If unsure select "N".
227
228config SND_SOC_88PM860X
229	tristate
230
231config SND_SOC_ARIZONA
232	tristate
233	default y if SND_SOC_CS47L24=y
234	default y if SND_SOC_WM5102=y
235	default y if SND_SOC_WM5110=y
236	default y if SND_SOC_WM8997=y
237	default y if SND_SOC_WM8998=y
238	default m if SND_SOC_CS47L24=m
239	default m if SND_SOC_WM5102=m
240	default m if SND_SOC_WM5110=m
241	default m if SND_SOC_WM8997=m
242	default m if SND_SOC_WM8998=m
243
244config SND_SOC_WM_HUBS
245	tristate
246	default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
247	default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
248
249config SND_SOC_WM_ADSP
250	tristate
251	select SND_SOC_COMPRESS
252	default y if SND_SOC_CS47L24=y
253	default y if SND_SOC_WM5102=y
254	default y if SND_SOC_WM5110=y
255	default y if SND_SOC_WM2200=y
256	default m if SND_SOC_CS47L24=m
257	default m if SND_SOC_WM5102=m
258	default m if SND_SOC_WM5110=m
259	default m if SND_SOC_WM2200=m
260
261config SND_SOC_AB8500_CODEC
262	tristate
263
264config SND_SOC_AC97_CODEC
265	tristate "Build generic ASoC AC97 CODEC driver"
266	select SND_AC97_CODEC
267	select SND_SOC_AC97_BUS
268
269config SND_SOC_AD1836
270	tristate
271
272config SND_SOC_AD193X
273	tristate
274
275config SND_SOC_AD193X_SPI
276	tristate
277	select SND_SOC_AD193X
278
279config SND_SOC_AD193X_I2C
280	tristate
281	select SND_SOC_AD193X
282
283config SND_SOC_AD1980
284	select REGMAP_AC97
285	tristate
286
287config SND_SOC_AD73311
288	tristate
289
290config SND_SOC_ADAU_UTILS
291	tristate
292
293config SND_SOC_ADAU1373
294	tristate
295	select SND_SOC_ADAU_UTILS
296
297config SND_SOC_ADAU1701
298	tristate "Analog Devices ADAU1701 CODEC"
299	depends on I2C
300	select SND_SOC_SIGMADSP_I2C
301
302config SND_SOC_ADAU17X1
303	tristate
304	select SND_SOC_SIGMADSP_REGMAP
305	select SND_SOC_ADAU_UTILS
306
307config SND_SOC_ADAU1761
308	tristate
309	select SND_SOC_ADAU17X1
310
311config SND_SOC_ADAU1761_I2C
312	tristate "Analog Devices AU1761 CODEC - I2C"
313	depends on I2C
314	select SND_SOC_ADAU1761
315	select REGMAP_I2C
316
317config SND_SOC_ADAU1761_SPI
318	tristate "Analog Devices AU1761 CODEC - SPI"
319	depends on SPI
320	select SND_SOC_ADAU1761
321	select REGMAP_SPI
322
323config SND_SOC_ADAU1781
324	select SND_SOC_ADAU17X1
325	tristate
326
327config SND_SOC_ADAU1781_I2C
328	tristate
329	select SND_SOC_ADAU1781
330	select REGMAP_I2C
331
332config SND_SOC_ADAU1781_SPI
333	tristate
334	select SND_SOC_ADAU1781
335	select REGMAP_SPI
336
337config SND_SOC_ADAU1977
338	tristate
339
340config SND_SOC_ADAU1977_SPI
341	tristate
342	select SND_SOC_ADAU1977
343	select REGMAP_SPI
344
345config SND_SOC_ADAU1977_I2C
346	tristate
347	select SND_SOC_ADAU1977
348	select REGMAP_I2C
349
350config SND_SOC_ADAU7002
351	tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
352
353config SND_SOC_ADAV80X
354	tristate
355
356config SND_SOC_ADAV801
357	tristate
358	select SND_SOC_ADAV80X
359
360config SND_SOC_ADAV803
361	tristate
362	select SND_SOC_ADAV80X
363
364config SND_SOC_ADS117X
365	tristate
366
367config SND_SOC_AK4104
368	tristate "AKM AK4104 CODEC"
369	depends on SPI_MASTER
370
371config SND_SOC_AK4535
372	tristate
373
374config SND_SOC_AK4554
375	tristate "AKM AK4554 CODEC"
376
377config SND_SOC_AK4613
378	tristate "AKM AK4613 CODEC"
379	depends on I2C
380
381config SND_SOC_AK4641
382	tristate
383
384config SND_SOC_AK4642
385	tristate "AKM AK4642 CODEC"
386	depends on I2C
387
388config SND_SOC_AK4671
389	tristate
390
391config SND_SOC_AK5386
392	tristate "AKM AK5638 CODEC"
393
394config SND_SOC_ALC5623
395       tristate "Realtek ALC5623 CODEC"
396	depends on I2C
397
398config SND_SOC_ALC5632
399	tristate
400
401config SND_SOC_BT_SCO
402	tristate "Dummy BT SCO codec driver"
403
404config SND_SOC_CQ0093VC
405	tristate
406
407config SND_SOC_CS35L32
408	tristate "Cirrus Logic CS35L32 CODEC"
409	depends on I2C
410
411config SND_SOC_CS35L33
412	tristate "Cirrus Logic CS35L33 CODEC"
413	depends on I2C
414
415config SND_SOC_CS35L34
416	tristate "Cirrus Logic CS35L34 CODEC"
417	depends on I2C
418
419config SND_SOC_CS35L35
420	tristate "Cirrus Logic CS35L35 CODEC"
421	depends on I2C
422
423config SND_SOC_CS42L42
424	tristate "Cirrus Logic CS42L42 CODEC"
425	depends on I2C
426
427config SND_SOC_CS42L51
428	tristate
429
430config SND_SOC_CS42L51_I2C
431	tristate "Cirrus Logic CS42L51 CODEC (I2C)"
432	depends on I2C
433	select SND_SOC_CS42L51
434
435config SND_SOC_CS42L52
436	tristate "Cirrus Logic CS42L52 CODEC"
437	depends on I2C && INPUT
438
439config SND_SOC_CS42L56
440	tristate "Cirrus Logic CS42L56 CODEC"
441	depends on I2C && INPUT
442
443config SND_SOC_CS42L73
444	tristate "Cirrus Logic CS42L73 CODEC"
445	depends on I2C
446
447config SND_SOC_CS4265
448	tristate "Cirrus Logic CS4265 CODEC"
449	depends on I2C
450	select REGMAP_I2C
451
452# Cirrus Logic CS4270 Codec
453config SND_SOC_CS4270
454	tristate "Cirrus Logic CS4270 CODEC"
455	depends on I2C
456
457# Cirrus Logic CS4270 Codec VD = 3.3V Errata
458# Select if you are affected by the errata where the part will not function
459# if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
460# not select any sample rates that require MCLK to be divided by 1.5.
461config SND_SOC_CS4270_VD33_ERRATA
462	bool
463	depends on SND_SOC_CS4270
464
465config SND_SOC_CS4271
466	tristate
467
468config SND_SOC_CS4271_I2C
469	tristate "Cirrus Logic CS4271 CODEC (I2C)"
470	depends on I2C
471	select SND_SOC_CS4271
472	select REGMAP_I2C
473
474config SND_SOC_CS4271_SPI
475	tristate "Cirrus Logic CS4271 CODEC (SPI)"
476	depends on SPI_MASTER
477	select SND_SOC_CS4271
478	select REGMAP_SPI
479
480config SND_SOC_CS42XX8
481	tristate
482
483config SND_SOC_CS42XX8_I2C
484	tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
485	depends on I2C
486	select SND_SOC_CS42XX8
487	select REGMAP_I2C
488
489# Cirrus Logic CS4349 HiFi DAC
490config SND_SOC_CS4349
491	tristate "Cirrus Logic CS4349 CODEC"
492	depends on I2C
493
494config SND_SOC_CS47L24
495	tristate
496
497# Cirrus Logic Quad-Channel ADC
498config SND_SOC_CS53L30
499	tristate "Cirrus Logic CS53L30 CODEC"
500	depends on I2C
501
502config SND_SOC_CX20442
503	tristate
504	depends on TTY
505
506config SND_SOC_JZ4740_CODEC
507	select REGMAP_MMIO
508	tristate
509
510config SND_SOC_L3
511       tristate
512
513config SND_SOC_DA7210
514        tristate
515
516config SND_SOC_DA7213
517        tristate
518
519config SND_SOC_DA7218
520	tristate
521
522config SND_SOC_DA7219
523        tristate
524
525config SND_SOC_DA732X
526        tristate
527
528config SND_SOC_DA9055
529	tristate
530
531config SND_SOC_DIO2125
532	tristate "Dioo DIO2125 Amplifier"
533	select GPIOLIB
534
535config SND_SOC_DMIC
536	tristate
537
538config SND_SOC_HDMI_CODEC
539	tristate
540	select SND_PCM_ELD
541	select SND_PCM_IEC958
542	select HDMI
543
544config SND_SOC_ES7134
545       tristate "Everest Semi ES7134 CODEC"
546
547config SND_SOC_ES8316
548	tristate "Everest Semi ES8316 CODEC"
549	depends on I2C
550
551config SND_SOC_ES8328
552	tristate
553
554config SND_SOC_ES8328_I2C
555	tristate "Everest Semi ES8328 CODEC (I2C)"
556	depends on I2C
557	select SND_SOC_ES8328
558
559config SND_SOC_ES8328_SPI
560	tristate "Everest Semi ES8328 CODEC (SPI)"
561	depends on SPI_MASTER
562	select SND_SOC_ES8328
563
564config SND_SOC_GTM601
565	tristate 'GTM601 UMTS modem audio codec'
566
567config SND_SOC_HDAC_HDMI
568	tristate
569	select SND_HDA_EXT_CORE
570	select SND_PCM_ELD
571	select HDMI
572
573config SND_SOC_ICS43432
574	tristate
575
576config SND_SOC_INNO_RK3036
577	tristate "Inno codec driver for RK3036 SoC"
578	select REGMAP_MMIO
579
580config SND_SOC_ISABELLE
581        tristate
582
583config SND_SOC_LM49453
584	tristate
585
586config SND_SOC_MAX98088
587       tristate
588
589config SND_SOC_MAX98090
590       tristate
591
592config SND_SOC_MAX98095
593       tristate
594
595config SND_SOC_MAX98357A
596       tristate
597
598config SND_SOC_MAX98371
599       tristate
600
601config SND_SOC_MAX98504
602	tristate "Maxim MAX98504 speaker amplifier"
603	depends on I2C
604
605config SND_SOC_MAX9867
606	tristate
607
608config SND_SOC_MAX98925
609       tristate
610
611config SND_SOC_MAX98926
612	tristate
613
614config SND_SOC_MAX98927
615	tristate "Maxim Integrated MAX98927 Speaker Amplifier"
616	depends on I2C
617
618config SND_SOC_MAX9850
619	tristate
620
621config SND_SOC_MAX9860
622	tristate "Maxim MAX9860 Mono Audio Voice Codec"
623	depends on I2C
624	select REGMAP_I2C
625
626config SND_SOC_MSM8916_WCD_ANALOG
627	tristate "Qualcomm MSM8916 WCD Analog Codec"
628	depends on SPMI || COMPILE_TEST
629
630config SND_SOC_MSM8916_WCD_DIGITAL
631	tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
632
633config SND_SOC_PCM1681
634	tristate "Texas Instruments PCM1681 CODEC"
635	depends on I2C
636
637config SND_SOC_PCM179X
638	tristate
639
640config SND_SOC_PCM179X_I2C
641	tristate "Texas Instruments PCM179X CODEC (I2C)"
642	depends on I2C
643	select SND_SOC_PCM179X
644	help
645	  Enable support for Texas Instruments PCM179x CODEC.
646	  Select this if your PCM179x is connected via an I2C bus.
647
648config SND_SOC_PCM179X_SPI
649	tristate "Texas Instruments PCM179X CODEC (SPI)"
650	depends on SPI_MASTER
651	select SND_SOC_PCM179X
652	help
653	  Enable support for Texas Instruments PCM179x CODEC.
654	  Select this if your PCM179x is connected via an SPI bus.
655
656config SND_SOC_PCM3008
657       tristate
658
659config SND_SOC_PCM3168A
660	tristate
661
662config SND_SOC_PCM3168A_I2C
663	tristate "Texas Instruments PCM3168A CODEC - I2C"
664	depends on I2C
665	select SND_SOC_PCM3168A
666	select REGMAP_I2C
667
668config SND_SOC_PCM3168A_SPI
669	tristate "Texas Instruments PCM3168A CODEC - SPI"
670	depends on SPI_MASTER
671	select SND_SOC_PCM3168A
672	select REGMAP_SPI
673
674config SND_SOC_PCM5102A
675	tristate
676
677config SND_SOC_PCM512x
678	tristate
679
680config SND_SOC_PCM512x_I2C
681	tristate "Texas Instruments PCM512x CODECs - I2C"
682	depends on I2C
683	select SND_SOC_PCM512x
684	select REGMAP_I2C
685
686config SND_SOC_PCM512x_SPI
687	tristate "Texas Instruments PCM512x CODECs - SPI"
688	depends on SPI_MASTER
689	select SND_SOC_PCM512x
690	select REGMAP_SPI
691
692config SND_SOC_RL6231
693	tristate
694	default y if SND_SOC_RT5514=y
695	default y if SND_SOC_RT5616=y
696	default y if SND_SOC_RT5640=y
697	default y if SND_SOC_RT5645=y
698	default y if SND_SOC_RT5651=y
699	default y if SND_SOC_RT5659=y
700	default y if SND_SOC_RT5660=y
701	default y if SND_SOC_RT5663=y
702	default y if SND_SOC_RT5665=y
703	default y if SND_SOC_RT5670=y
704	default y if SND_SOC_RT5677=y
705	default m if SND_SOC_RT5514=m
706	default m if SND_SOC_RT5616=m
707	default m if SND_SOC_RT5640=m
708	default m if SND_SOC_RT5645=m
709	default m if SND_SOC_RT5651=m
710	default m if SND_SOC_RT5659=m
711	default m if SND_SOC_RT5660=m
712	default m if SND_SOC_RT5663=m
713	default m if SND_SOC_RT5665=m
714	default m if SND_SOC_RT5670=m
715	default m if SND_SOC_RT5677=m
716
717config SND_SOC_RL6347A
718	tristate
719	default y if SND_SOC_RT286=y
720	default y if SND_SOC_RT298=y
721	default m if SND_SOC_RT286=m
722	default m if SND_SOC_RT298=m
723
724config SND_SOC_RT286
725	tristate
726	depends on I2C
727
728config SND_SOC_RT298
729	tristate
730	depends on I2C
731
732config SND_SOC_RT5514
733	tristate
734
735config SND_SOC_RT5514_SPI
736	tristate
737
738config SND_SOC_RT5616
739	tristate "Realtek RT5616 CODEC"
740	depends on I2C
741
742config SND_SOC_RT5631
743	tristate "Realtek ALC5631/RT5631 CODEC"
744	depends on I2C
745
746config SND_SOC_RT5640
747	tristate
748
749config SND_SOC_RT5645
750        tristate
751
752config SND_SOC_RT5651
753	tristate
754
755config SND_SOC_RT5659
756	tristate
757
758config SND_SOC_RT5660
759	tristate
760
761config SND_SOC_RT5663
762	tristate
763
764config SND_SOC_RT5665
765	tristate
766
767config SND_SOC_RT5670
768	tristate
769
770config SND_SOC_RT5677
771	tristate
772	select REGMAP_I2C
773	select REGMAP_IRQ
774
775config SND_SOC_RT5677_SPI
776	tristate
777	default SND_SOC_RT5677 && SPI
778
779#Freescale sgtl5000 codec
780config SND_SOC_SGTL5000
781	tristate "Freescale SGTL5000 CODEC"
782	depends on I2C
783
784config SND_SOC_SI476X
785	tristate
786
787config SND_SOC_SIGMADSP
788	tristate
789	select CRC32
790
791config SND_SOC_SIGMADSP_I2C
792	tristate
793	select SND_SOC_SIGMADSP
794
795config SND_SOC_SIGMADSP_REGMAP
796	tristate
797	select SND_SOC_SIGMADSP
798
799config SND_SOC_SIRF_AUDIO_CODEC
800	tristate "SiRF SoC internal audio codec"
801	select REGMAP_MMIO
802
803config SND_SOC_SN95031
804	tristate
805
806config SND_SOC_SPDIF
807	tristate "S/PDIF CODEC"
808
809config SND_SOC_SSM2518
810	tristate
811
812config SND_SOC_SSM2602
813	tristate
814
815config SND_SOC_SSM2602_SPI
816	tristate "Analog Devices SSM2602 CODEC - SPI"
817	depends on SPI_MASTER
818	select SND_SOC_SSM2602
819	select REGMAP_SPI
820
821config SND_SOC_SSM2602_I2C
822	tristate "Analog Devices SSM2602 CODEC - I2C"
823	depends on I2C
824	select SND_SOC_SSM2602
825	select REGMAP_I2C
826
827config SND_SOC_SSM4567
828	tristate "Analog Devices ssm4567 amplifier driver support"
829	depends on I2C
830
831config SND_SOC_STA32X
832	tristate "STA326, STA328 and STA329 speaker amplifier"
833	depends on I2C
834	select REGMAP_I2C
835
836config SND_SOC_STA350
837	tristate "STA350 speaker amplifier"
838	depends on I2C
839
840config SND_SOC_STA529
841	tristate
842
843config SND_SOC_STAC9766
844	tristate
845
846config SND_SOC_STI_SAS
847	tristate "codec Audio support for STI SAS codec"
848
849config SND_SOC_TAS2552
850	tristate "Texas Instruments TAS2552 Mono Audio amplifier"
851	depends on I2C
852
853config SND_SOC_TAS5086
854	tristate "Texas Instruments TAS5086 speaker amplifier"
855	depends on I2C
856
857config SND_SOC_TAS571X
858	tristate "Texas Instruments TAS5711/TAS5717/TAS5719/TAS5721 power amplifiers"
859	depends on I2C
860
861config SND_SOC_TAS5720
862	tristate "Texas Instruments TAS5720 Mono Audio amplifier"
863	depends on I2C
864	help
865	  Enable support for Texas Instruments TAS5720L/M high-efficiency mono
866	  Class-D audio power amplifiers.
867
868config SND_SOC_TFA9879
869	tristate "NXP Semiconductors TFA9879 amplifier"
870	depends on I2C
871
872config SND_SOC_TLV320AIC23
873	tristate
874
875config SND_SOC_TLV320AIC23_I2C
876	tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
877	depends on I2C
878	select SND_SOC_TLV320AIC23
879
880config SND_SOC_TLV320AIC23_SPI
881	tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
882	depends on SPI_MASTER
883	select SND_SOC_TLV320AIC23
884
885config SND_SOC_TLV320AIC26
886	tristate
887	depends on SPI
888
889config SND_SOC_TLV320AIC31XX
890	tristate "Texas Instruments TLV320AIC31xx CODECs"
891	depends on I2C
892	select REGMAP_I2C
893
894config SND_SOC_TLV320AIC32X4
895	tristate
896
897config SND_SOC_TLV320AIC32X4_I2C
898	tristate
899	depends on I2C
900	select SND_SOC_TLV320AIC32X4
901
902config SND_SOC_TLV320AIC32X4_SPI
903	tristate
904	depends on SPI_MASTER
905	select SND_SOC_TLV320AIC32X4
906
907config SND_SOC_TLV320AIC3X
908	tristate "Texas Instruments TLV320AIC3x CODECs"
909	depends on I2C
910
911config SND_SOC_TLV320DAC33
912	tristate
913
914config SND_SOC_TS3A227E
915	tristate "TI Headset/Mic detect and keypress chip"
916	depends on I2C
917
918config SND_SOC_TWL4030
919	select MFD_TWL4030_AUDIO
920	tristate
921
922config SND_SOC_TWL6040
923	tristate
924
925config SND_SOC_UDA134X
926       tristate
927
928config SND_SOC_UDA1380
929        tristate
930	depends on I2C
931
932config SND_SOC_WL1273
933	tristate
934
935config SND_SOC_WM0010
936	tristate
937
938config SND_SOC_WM1250_EV1
939	tristate
940
941config SND_SOC_WM2000
942	tristate
943
944config SND_SOC_WM2200
945	tristate
946
947config SND_SOC_WM5100
948	tristate
949
950config SND_SOC_WM5102
951	tristate
952
953config SND_SOC_WM5110
954	tristate
955
956config SND_SOC_WM8350
957	tristate
958
959config SND_SOC_WM8400
960	tristate
961
962config SND_SOC_WM8510
963	tristate "Wolfson Microelectronics WM8510 CODEC"
964	depends on SND_SOC_I2C_AND_SPI
965
966config SND_SOC_WM8523
967	tristate "Wolfson Microelectronics WM8523 DAC"
968	depends on I2C
969
970config SND_SOC_WM8580
971	tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
972	depends on I2C
973
974config SND_SOC_WM8711
975	tristate "Wolfson Microelectronics WM8711 CODEC"
976	depends on SND_SOC_I2C_AND_SPI
977
978config SND_SOC_WM8727
979	tristate
980
981config SND_SOC_WM8728
982	tristate "Wolfson Microelectronics WM8728 DAC"
983	depends on SND_SOC_I2C_AND_SPI
984
985config SND_SOC_WM8731
986	tristate "Wolfson Microelectronics WM8731 CODEC"
987	depends on SND_SOC_I2C_AND_SPI
988
989config SND_SOC_WM8737
990	tristate "Wolfson Microelectronics WM8737 ADC"
991	depends on SND_SOC_I2C_AND_SPI
992
993config SND_SOC_WM8741
994	tristate "Wolfson Microelectronics WM8737 DAC"
995	depends on SND_SOC_I2C_AND_SPI
996
997config SND_SOC_WM8750
998	tristate "Wolfson Microelectronics WM8750 CODEC"
999	depends on SND_SOC_I2C_AND_SPI
1000
1001config SND_SOC_WM8753
1002	tristate "Wolfson Microelectronics WM8753 CODEC"
1003	depends on SND_SOC_I2C_AND_SPI
1004
1005config SND_SOC_WM8770
1006	tristate "Wolfson Microelectronics WM8770 CODEC"
1007	depends on SPI_MASTER
1008
1009config SND_SOC_WM8776
1010	tristate "Wolfson Microelectronics WM8776 CODEC"
1011	depends on SND_SOC_I2C_AND_SPI
1012
1013config SND_SOC_WM8782
1014	tristate
1015
1016config SND_SOC_WM8804
1017	tristate
1018
1019config SND_SOC_WM8804_I2C
1020	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1021	depends on I2C
1022	select SND_SOC_WM8804
1023	select REGMAP_I2C
1024
1025config SND_SOC_WM8804_SPI
1026	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1027	depends on SPI_MASTER
1028	select SND_SOC_WM8804
1029	select REGMAP_SPI
1030
1031config SND_SOC_WM8900
1032	tristate
1033
1034config SND_SOC_WM8903
1035	tristate "Wolfson Microelectronics WM8903 CODEC"
1036	depends on I2C
1037
1038config SND_SOC_WM8904
1039	tristate
1040
1041config SND_SOC_WM8940
1042        tristate
1043
1044config SND_SOC_WM8955
1045	tristate
1046
1047config SND_SOC_WM8960
1048	tristate "Wolfson Microelectronics WM8960 CODEC"
1049	depends on I2C
1050
1051config SND_SOC_WM8961
1052	tristate
1053
1054config SND_SOC_WM8962
1055	tristate "Wolfson Microelectronics WM8962 CODEC"
1056	depends on I2C && INPUT
1057
1058config SND_SOC_WM8971
1059	tristate
1060
1061config SND_SOC_WM8974
1062	tristate "Wolfson Microelectronics WM8974 codec"
1063	depends on I2C
1064
1065config SND_SOC_WM8978
1066	tristate "Wolfson Microelectronics WM8978 codec"
1067	depends on I2C
1068
1069config SND_SOC_WM8983
1070	tristate
1071
1072config SND_SOC_WM8985
1073	tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1074	depends on SND_SOC_I2C_AND_SPI
1075
1076config SND_SOC_WM8988
1077	tristate
1078
1079config SND_SOC_WM8990
1080	tristate
1081
1082config SND_SOC_WM8991
1083	tristate
1084
1085config SND_SOC_WM8993
1086	tristate
1087
1088config SND_SOC_WM8994
1089	tristate
1090
1091config SND_SOC_WM8995
1092	tristate
1093
1094config SND_SOC_WM8996
1095	tristate
1096
1097config SND_SOC_WM8997
1098	tristate
1099
1100config SND_SOC_WM8998
1101	tristate
1102
1103config SND_SOC_WM9081
1104	tristate
1105	depends on I2C
1106
1107config SND_SOC_WM9090
1108	tristate
1109
1110config SND_SOC_WM9705
1111	tristate
1112	select REGMAP_AC97
1113
1114config SND_SOC_WM9712
1115	tristate
1116	select REGMAP_AC97
1117
1118config SND_SOC_WM9713
1119	tristate
1120	select REGMAP_AC97
1121
1122config SND_SOC_ZX_AUD96P22
1123	tristate "ZTE ZX AUD96P22 CODEC"
1124	depends on I2C
1125	select REGMAP_I2C
1126
1127# Amp
1128config SND_SOC_LM4857
1129	tristate
1130
1131config SND_SOC_MAX9768
1132	tristate
1133
1134config SND_SOC_MAX9877
1135	tristate
1136
1137config SND_SOC_MC13783
1138	tristate
1139
1140config SND_SOC_ML26124
1141	tristate
1142
1143config SND_SOC_NAU8540
1144       tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1145       depends on I2C
1146
1147config SND_SOC_NAU8810
1148	tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1149	depends on I2C
1150
1151config SND_SOC_NAU8824
1152	tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1153	depends on I2C
1154
1155config SND_SOC_NAU8825
1156	tristate
1157
1158config SND_SOC_TPA6130A2
1159	tristate "Texas Instruments TPA6130A2 headphone amplifier"
1160	depends on I2C
1161
1162endmenu
1163