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