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.
6 config SND_SOC_I2C_AND_SPI
10 default y if SPI_MASTER=y
14 config SND_SOC_ALL_CODECS
15 tristate "Build all ASoC CODEC drivers"
16 depends on COMPILE_TEST
17 select SND_SOC_88PM860X if MFD_88PM860X
19 select SND_SOC_AB8500_CODEC if ABX500_CORE
20 select SND_SOC_AC97_CODEC
21 select SND_SOC_AD1836 if SPI_MASTER
22 select SND_SOC_AD193X_SPI if SPI_MASTER
23 select SND_SOC_AD193X_I2C if I2C
24 select SND_SOC_AD1980 if SND_SOC_AC97_BUS
25 select SND_SOC_AD73311
26 select SND_SOC_ADAU1373 if I2C
27 select SND_SOC_ADAU1761_I2C if I2C
28 select SND_SOC_ADAU1761_SPI if SPI
29 select SND_SOC_ADAU1781_I2C if I2C
30 select SND_SOC_ADAU1781_SPI if SPI
31 select SND_SOC_ADAV801 if SPI_MASTER
32 select SND_SOC_ADAV803 if I2C
33 select SND_SOC_ADAU1977_SPI if SPI_MASTER
34 select SND_SOC_ADAU1977_I2C if I2C
35 select SND_SOC_ADAU1701 if I2C
36 select SND_SOC_ADAU7002
37 select SND_SOC_ADS117X
38 select SND_SOC_AK4104 if SPI_MASTER
39 select SND_SOC_AK4118 if I2C
40 select SND_SOC_AK4458 if I2C
41 select SND_SOC_AK4535 if I2C
43 select SND_SOC_AK4613 if I2C
44 select SND_SOC_AK4641 if I2C
45 select SND_SOC_AK4642 if I2C
46 select SND_SOC_AK4671 if I2C
48 select SND_SOC_AK5558 if I2C
49 select SND_SOC_ALC5623 if I2C
50 select SND_SOC_ALC5632 if I2C
52 select SND_SOC_BD28623
53 select SND_SOC_CQ0093VC
54 select SND_SOC_CROS_EC_CODEC if CROS_EC
55 select SND_SOC_CS35L32 if I2C
56 select SND_SOC_CS35L33 if I2C
57 select SND_SOC_CS35L34 if I2C
58 select SND_SOC_CS35L35 if I2C
59 select SND_SOC_CS35L36 if I2C
60 select SND_SOC_CS42L42 if I2C
61 select SND_SOC_CS42L51_I2C if I2C
62 select SND_SOC_CS42L52 if I2C && INPUT
63 select SND_SOC_CS42L56 if I2C && INPUT
64 select SND_SOC_CS42L73 if I2C
65 select SND_SOC_CS4265 if I2C
66 select SND_SOC_CS4270 if I2C
67 select SND_SOC_CS4271_I2C if I2C
68 select SND_SOC_CS4271_SPI if SPI_MASTER
69 select SND_SOC_CS42XX8_I2C if I2C
70 select SND_SOC_CS43130 if I2C
71 select SND_SOC_CS4341 if SND_SOC_I2C_AND_SPI
72 select SND_SOC_CS4349 if I2C
73 select SND_SOC_CS47L15 if MFD_CS47L15
74 select SND_SOC_CS47L24 if MFD_CS47L24
75 select SND_SOC_CS47L35 if MFD_CS47L35
76 select SND_SOC_CS47L85 if MFD_CS47L85
77 select SND_SOC_CS47L90 if MFD_CS47L90
78 select SND_SOC_CS47L92 if MFD_CS47L92
79 select SND_SOC_CS53L30 if I2C
80 select SND_SOC_CX20442 if TTY
81 select SND_SOC_CX2072X if I2C
82 select SND_SOC_DA7210 if SND_SOC_I2C_AND_SPI
83 select SND_SOC_DA7213 if I2C
84 select SND_SOC_DA7218 if I2C
85 select SND_SOC_DA7219 if I2C
86 select SND_SOC_DA732X if I2C
87 select SND_SOC_DA9055 if I2C
88 select SND_SOC_DMIC if GPIOLIB
89 select SND_SOC_ES8316 if I2C
90 select SND_SOC_ES8328_SPI if SPI_MASTER
91 select SND_SOC_ES8328_I2C if I2C
95 select SND_SOC_HDAC_HDMI
96 select SND_SOC_HDAC_HDA
97 select SND_SOC_ICS43432
98 select SND_SOC_INNO_RK3036
99 select SND_SOC_ISABELLE if I2C
100 select SND_SOC_I_SABRE_CODEC if I2C
101 select SND_SOC_JZ4740_CODEC
102 select SND_SOC_JZ4725B_CODEC
103 select SND_SOC_LM4857 if I2C
104 select SND_SOC_LM49453 if I2C
105 select SND_SOC_LOCHNAGAR_SC if MFD_LOCHNAGAR
106 select SND_SOC_MA120X0P if I2C
107 select SND_SOC_MAX98088 if I2C
108 select SND_SOC_MAX98090 if I2C
109 select SND_SOC_MAX98095 if I2C
110 select SND_SOC_MAX98357A if GPIOLIB
111 select SND_SOC_MAX98371 if I2C
112 select SND_SOC_MAX98504 if I2C
113 select SND_SOC_MAX9867 if I2C
114 select SND_SOC_MAX98925 if I2C
115 select SND_SOC_MAX98926 if I2C
116 select SND_SOC_MAX98927 if I2C
117 select SND_SOC_MAX98373 if I2C
118 select SND_SOC_MAX9850 if I2C
119 select SND_SOC_MAX9860 if I2C
120 select SND_SOC_MAX9759
121 select SND_SOC_MAX9768 if I2C
122 select SND_SOC_MAX9877 if I2C
123 select SND_SOC_MC13783 if MFD_MC13XXX
124 select SND_SOC_ML26124 if I2C
125 select SND_SOC_MT6351 if MTK_PMIC_WRAP
126 select SND_SOC_MT6358 if MTK_PMIC_WRAP
127 select SND_SOC_NAU8540 if I2C
128 select SND_SOC_NAU8810 if I2C
129 select SND_SOC_NAU8822 if I2C
130 select SND_SOC_NAU8824 if I2C
131 select SND_SOC_NAU8825 if I2C
132 select SND_SOC_HDMI_CODEC
133 select SND_SOC_PCM1681 if I2C
134 select SND_SOC_PCM1789_I2C if I2C
135 select SND_SOC_PCM179X_I2C if I2C
136 select SND_SOC_PCM179X_SPI if SPI_MASTER
137 select SND_SOC_PCM186X_I2C if I2C
138 select SND_SOC_PCM186X_SPI if SPI_MASTER
139 select SND_SOC_PCM1794A if I2C
140 select SND_SOC_PCM3008
141 select SND_SOC_PCM3060_I2C if I2C
142 select SND_SOC_PCM3060_SPI if SPI_MASTER
143 select SND_SOC_PCM3168A_I2C if I2C
144 select SND_SOC_PCM3168A_SPI if SPI_MASTER
145 select SND_SOC_PCM5102A
146 select SND_SOC_PCM512x_I2C if I2C
147 select SND_SOC_PCM512x_SPI if SPI_MASTER
148 select SND_SOC_RK3328
149 select SND_SOC_RT274 if I2C
150 select SND_SOC_RT286 if I2C
151 select SND_SOC_RT298 if I2C
152 select SND_SOC_RT1011 if I2C
153 select SND_SOC_RT1305 if I2C
154 select SND_SOC_RT1308 if I2C
155 select SND_SOC_RT5514 if I2C
156 select SND_SOC_RT5616 if I2C
157 select SND_SOC_RT5631 if I2C
158 select SND_SOC_RT5640 if I2C
159 select SND_SOC_RT5645 if I2C
160 select SND_SOC_RT5651 if I2C
161 select SND_SOC_RT5659 if I2C
162 select SND_SOC_RT5660 if I2C
163 select SND_SOC_RT5663 if I2C
164 select SND_SOC_RT5665 if I2C
165 select SND_SOC_RT5668 if I2C
166 select SND_SOC_RT5670 if I2C
167 select SND_SOC_RT5677 if I2C && SPI_MASTER
168 select SND_SOC_RT5682 if I2C
169 select SND_SOC_SGTL5000 if I2C
170 select SND_SOC_SI476X if MFD_SI476X_CORE
171 select SND_SOC_SIMPLE_AMPLIFIER
172 select SND_SOC_SIRF_AUDIO_CODEC
174 select SND_SOC_SSM2305
175 select SND_SOC_SSM2518 if I2C
176 select SND_SOC_SSM2602_SPI if SPI_MASTER
177 select SND_SOC_SSM2602_I2C if I2C
178 select SND_SOC_SSM4567 if I2C
179 select SND_SOC_STA32X if I2C
180 select SND_SOC_STA350 if I2C
181 select SND_SOC_STA529 if I2C
182 select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
183 select SND_SOC_STI_SAS
184 select SND_SOC_TAS2552 if I2C
185 select SND_SOC_TAS5086 if I2C
186 select SND_SOC_TAS571X if I2C
187 select SND_SOC_TAS5720 if I2C
188 select SND_SOC_TAS6424 if I2C
189 select SND_SOC_TDA7419 if I2C
190 select SND_SOC_TFA9879 if I2C
191 select SND_SOC_TLV320AIC23_I2C if I2C
192 select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
193 select SND_SOC_TAS5713 if I2C
194 select SND_SOC_TLV320AIC26 if SPI_MASTER
195 select SND_SOC_TLV320AIC31XX if I2C
196 select SND_SOC_TLV320AIC32X4_I2C if I2C && COMMON_CLK
197 select SND_SOC_TLV320AIC32X4_SPI if SPI_MASTER && COMMON_CLK
198 select SND_SOC_TLV320AIC3X if I2C
199 select SND_SOC_TPA6130A2 if I2C
200 select SND_SOC_TLV320DAC33 if I2C
201 select SND_SOC_TSCS42XX if I2C
202 select SND_SOC_TSCS454 if I2C
203 select SND_SOC_TS3A227E if I2C
204 select SND_SOC_TWL4030 if TWL4030_CORE
205 select SND_SOC_TWL6040 if TWL6040_CORE
206 select SND_SOC_UDA1334 if GPIOLIB
207 select SND_SOC_UDA134X
208 select SND_SOC_UDA1380 if I2C
209 select SND_SOC_WCD9335 if SLIMBUS
210 select SND_SOC_WL1273 if MFD_WL1273_CORE
211 select SND_SOC_WM0010 if SPI_MASTER
212 select SND_SOC_WM1250_EV1 if I2C
213 select SND_SOC_WM2000 if I2C
214 select SND_SOC_WM2200 if I2C
215 select SND_SOC_WM5100 if I2C
216 select SND_SOC_WM5102 if MFD_WM5102
217 select SND_SOC_WM5110 if MFD_WM5110
218 select SND_SOC_WM8350 if MFD_WM8350
219 select SND_SOC_WM8400 if MFD_WM8400
220 select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
221 select SND_SOC_WM8523 if I2C
222 select SND_SOC_WM8524 if GPIOLIB
223 select SND_SOC_WM8580 if I2C
224 select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
225 select SND_SOC_WM8727
226 select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
227 select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
228 select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
229 select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
230 select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
231 select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
232 select SND_SOC_WM8770 if SPI_MASTER
233 select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
234 select SND_SOC_WM8782
235 select SND_SOC_WM8804_I2C if I2C
236 select SND_SOC_WM8804_SPI if SPI_MASTER
237 select SND_SOC_WM8900 if I2C
238 select SND_SOC_WM8903 if I2C
239 select SND_SOC_WM8904 if I2C
240 select SND_SOC_WM8940 if I2C
241 select SND_SOC_WM8955 if I2C
242 select SND_SOC_WM8960 if I2C
243 select SND_SOC_WM8961 if I2C
244 select SND_SOC_WM8962 if I2C && INPUT
245 select SND_SOC_WM8971 if I2C
246 select SND_SOC_WM8974 if I2C
247 select SND_SOC_WM8978 if I2C
248 select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
249 select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
250 select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
251 select SND_SOC_WM8990 if I2C
252 select SND_SOC_WM8991 if I2C
253 select SND_SOC_WM8993 if I2C
254 select SND_SOC_WM8994 if MFD_WM8994
255 select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
256 select SND_SOC_WM8996 if I2C
257 select SND_SOC_WM8997 if MFD_WM8997
258 select SND_SOC_WM8998 if MFD_WM8998
259 select SND_SOC_WM9081 if I2C
260 select SND_SOC_WM9090 if I2C
261 select SND_SOC_WM9705 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
262 select SND_SOC_WM9712 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
263 select SND_SOC_WM9713 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
265 Normally ASoC codec drivers are only built if a machine driver which
266 uses them is also built since they are only usable with a machine
267 driver. Selecting this option will allow these drivers to be built
268 without an explicit machine driver for test and development purposes.
270 Support for the bus types used to access the codecs to be built must
271 be selected separately.
273 If unsure select "N".
275 config SND_SOC_88PM860X
278 config SND_SOC_ARIZONA
280 default y if SND_SOC_CS47L24=y
281 default y if SND_SOC_WM5102=y
282 default y if SND_SOC_WM5110=y
283 default y if SND_SOC_WM8997=y
284 default y if SND_SOC_WM8998=y
285 default m if SND_SOC_CS47L24=m
286 default m if SND_SOC_WM5102=m
287 default m if SND_SOC_WM5110=m
288 default m if SND_SOC_WM8997=m
289 default m if SND_SOC_WM8998=m
291 config SND_SOC_WM_HUBS
293 default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
294 default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
296 config SND_SOC_WM_ADSP
298 select SND_SOC_COMPRESS
299 default y if SND_SOC_MADERA=y
300 default y if SND_SOC_CS47L24=y
301 default y if SND_SOC_WM5102=y
302 default y if SND_SOC_WM5110=y
303 default y if SND_SOC_WM2200=y
304 default m if SND_SOC_MADERA=m
305 default m if SND_SOC_CS47L24=m
306 default m if SND_SOC_WM5102=m
307 default m if SND_SOC_WM5110=m
308 default m if SND_SOC_WM2200=m
310 config SND_SOC_AB8500_CODEC
313 config SND_SOC_AC101_CODEC
314 tristate "Build AC101 codec driver"
318 config SND_SOC_AC108_CODEC
319 tristate "Build AC108 codec driver"
322 select SND_SOC_AC101_CODEC
324 config SND_SOC_AC97_CODEC
325 tristate "Build generic ASoC AC97 CODEC driver"
326 select SND_AC97_CODEC
327 select SND_SOC_AC97_BUS
329 config SND_SOC_AD1836
332 config SND_SOC_AD193X
335 config SND_SOC_AD193X_SPI
336 tristate "Analog Devices AU193X CODEC - SPI"
337 select SND_SOC_AD193X
339 config SND_SOC_AD193X_I2C
340 tristate "Analog Devices AU193X CODEC - I2C"
341 select SND_SOC_AD193X
343 config SND_SOC_AD1980
347 config SND_SOC_AD73311
350 config SND_SOC_ADAU_UTILS
353 config SND_SOC_ADAU1373
355 select SND_SOC_ADAU_UTILS
357 config SND_SOC_ADAU1701
358 tristate "Analog Devices ADAU1701 CODEC"
360 select SND_SOC_SIGMADSP_I2C
362 config SND_SOC_ADAU17X1
364 select SND_SOC_SIGMADSP_REGMAP
365 select SND_SOC_ADAU_UTILS
367 config SND_SOC_ADAU1761
369 select SND_SOC_ADAU17X1
371 config SND_SOC_ADAU1761_I2C
372 tristate "Analog Devices AU1761 CODEC - I2C"
374 select SND_SOC_ADAU1761
377 config SND_SOC_ADAU1761_SPI
378 tristate "Analog Devices AU1761 CODEC - SPI"
380 select SND_SOC_ADAU1761
383 config SND_SOC_ADAU1781
384 select SND_SOC_ADAU17X1
387 config SND_SOC_ADAU1781_I2C
389 select SND_SOC_ADAU1781
392 config SND_SOC_ADAU1781_SPI
394 select SND_SOC_ADAU1781
397 config SND_SOC_ADAU1977
400 config SND_SOC_ADAU1977_SPI
402 select SND_SOC_ADAU1977
405 config SND_SOC_ADAU1977_I2C
407 select SND_SOC_ADAU1977
410 config SND_SOC_ADAU7002
411 tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
413 config SND_SOC_ADAV80X
416 config SND_SOC_ADAV801
418 select SND_SOC_ADAV80X
420 config SND_SOC_ADAV803
422 select SND_SOC_ADAV80X
424 config SND_SOC_ADS117X
427 config SND_SOC_AK4104
428 tristate "AKM AK4104 CODEC"
429 depends on SPI_MASTER
431 config SND_SOC_AK4118
432 tristate "AKM AK4118 CODEC"
436 config SND_SOC_AK4458
437 tristate "AKM AK4458 CODEC"
441 config SND_SOC_AK4535
444 config SND_SOC_AK4554
445 tristate "AKM AK4554 CODEC"
447 config SND_SOC_AK4613
448 tristate "AKM AK4613 CODEC"
451 config SND_SOC_AK4641
454 config SND_SOC_AK4642
455 tristate "AKM AK4642 CODEC"
458 config SND_SOC_AK4671
461 config SND_SOC_AK5386
462 tristate "AKM AK5638 CODEC"
464 config SND_SOC_AK5558
465 tristate "AKM AK5558 CODEC"
469 config SND_SOC_ALC5623
470 tristate "Realtek ALC5623 CODEC"
473 config SND_SOC_ALC5632
476 config SND_SOC_BD28623
477 tristate "ROHM BD28623 CODEC"
479 Enable support for ROHM BD28623MUV Class D speaker amplifier.
480 This codec does not have any control buses such as I2C, it
481 detect format of I2S automatically.
483 config SND_SOC_BT_SCO
484 tristate "Dummy BT SCO codec driver"
487 tristate "Motorola CPCAP codec"
490 config SND_SOC_CQ0093VC
493 config SND_SOC_CROS_EC_CODEC
494 tristate "codec driver for ChromeOS EC"
497 If you say yes here you will get support for the
498 ChromeOS Embedded Controller's Audio Codec.
500 config SND_SOC_CS35L32
501 tristate "Cirrus Logic CS35L32 CODEC"
504 config SND_SOC_CS35L33
505 tristate "Cirrus Logic CS35L33 CODEC"
508 config SND_SOC_CS35L34
509 tristate "Cirrus Logic CS35L34 CODEC"
512 config SND_SOC_CS35L35
513 tristate "Cirrus Logic CS35L35 CODEC"
516 config SND_SOC_CS35L36
517 tristate "Cirrus Logic CS35L36 CODEC"
520 config SND_SOC_CS42L42
521 tristate "Cirrus Logic CS42L42 CODEC"
524 config SND_SOC_CS42L51
527 config SND_SOC_CS42L51_I2C
528 tristate "Cirrus Logic CS42L51 CODEC (I2C)"
530 select SND_SOC_CS42L51
532 config SND_SOC_CS42L52
533 tristate "Cirrus Logic CS42L52 CODEC"
534 depends on I2C && INPUT
536 config SND_SOC_CS42L56
537 tristate "Cirrus Logic CS42L56 CODEC"
538 depends on I2C && INPUT
540 config SND_SOC_CS42L73
541 tristate "Cirrus Logic CS42L73 CODEC"
544 config SND_SOC_CS4265
545 tristate "Cirrus Logic CS4265 CODEC"
549 # Cirrus Logic CS4270 Codec
550 config SND_SOC_CS4270
551 tristate "Cirrus Logic CS4270 CODEC"
554 # Cirrus Logic CS4270 Codec VD = 3.3V Errata
555 # Select if you are affected by the errata where the part will not function
556 # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
557 # not select any sample rates that require MCLK to be divided by 1.5.
558 config SND_SOC_CS4270_VD33_ERRATA
560 depends on SND_SOC_CS4270
562 config SND_SOC_CS4271
565 config SND_SOC_CS4271_I2C
566 tristate "Cirrus Logic CS4271 CODEC (I2C)"
568 select SND_SOC_CS4271
571 config SND_SOC_CS4271_SPI
572 tristate "Cirrus Logic CS4271 CODEC (SPI)"
573 depends on SPI_MASTER
574 select SND_SOC_CS4271
577 config SND_SOC_CS42XX8
580 config SND_SOC_CS42XX8_I2C
581 tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
583 select SND_SOC_CS42XX8
586 # Cirrus Logic CS43130 HiFi DAC
587 config SND_SOC_CS43130
588 tristate "Cirrus Logic CS43130 CODEC"
591 config SND_SOC_CS4341
592 tristate "Cirrus Logic CS4341 CODEC"
593 depends on SND_SOC_I2C_AND_SPI
594 select REGMAP_I2C if I2C
595 select REGMAP_SPI if SPI_MASTER
597 # Cirrus Logic CS4349 HiFi DAC
598 config SND_SOC_CS4349
599 tristate "Cirrus Logic CS4349 CODEC"
602 config SND_SOC_CS47L15
605 config SND_SOC_CS47L24
608 config SND_SOC_CS47L35
611 config SND_SOC_CS47L85
614 config SND_SOC_CS47L90
617 config SND_SOC_CS47L92
620 # Cirrus Logic Quad-Channel ADC
621 config SND_SOC_CS53L30
622 tristate "Cirrus Logic CS53L30 CODEC"
625 config SND_SOC_CX20442
629 config SND_SOC_CX2072X
630 tristate "Conexant CX2072X CODEC"
633 Enable support for Conexant CX20721 and CX20723 codec chips.
635 config SND_SOC_JZ4740_CODEC
636 depends on MIPS || COMPILE_TEST
638 tristate "Ingenic JZ4740 internal CODEC"
640 Enable support for the internal CODEC found in the JZ4740 SoC
643 This driver can also be built as a module. If so, the module
644 will be called snd-soc-jz4740-codec.
646 config SND_SOC_JZ4725B_CODEC
647 depends on MIPS || COMPILE_TEST
649 tristate "Ingenic JZ4725B internal CODEC"
651 Enable support for the internal CODEC found in the JZ4725B SoC
654 This driver can also be built as a module. If so, the module
655 will be called snd-soc-jz4725b-codec.
660 config SND_SOC_DA7210
663 config SND_SOC_DA7213
666 config SND_SOC_DA7218
669 config SND_SOC_DA7219
672 config SND_SOC_DA732X
675 config SND_SOC_DA9055
679 tristate "Generic Digital Microphone CODEC"
682 Enable support for the Generic Digital Microphone CODEC.
683 Select this if your sound card has DMICs.
685 config SND_SOC_HDMI_CODEC
688 select SND_PCM_IEC958
691 config SND_SOC_ES7134
692 tristate "Everest Semi ES7134 CODEC"
694 config SND_SOC_ES7241
695 tristate "Everest Semi ES7241 CODEC"
697 config SND_SOC_ES8316
698 tristate "Everest Semi ES8316 CODEC"
701 config SND_SOC_ES8328
704 config SND_SOC_ES8328_I2C
705 tristate "Everest Semi ES8328 CODEC (I2C)"
707 select SND_SOC_ES8328
709 config SND_SOC_ES8328_SPI
710 tristate "Everest Semi ES8328 CODEC (SPI)"
711 depends on SPI_MASTER
712 select SND_SOC_ES8328
714 config SND_SOC_GTM601
715 tristate 'GTM601 UMTS modem audio codec'
717 config SND_SOC_HDAC_HDMI
719 select SND_HDA_EXT_CORE
723 config SND_SOC_HDAC_HDA
727 config SND_SOC_ICS43432
728 tristate "InvenSense ICS43432 I2S microphone codec"
730 config SND_SOC_INNO_RK3036
731 tristate "Inno codec driver for RK3036 SoC"
734 config SND_SOC_ISABELLE
737 config SND_SOC_LM49453
740 config SND_SOC_LOCHNAGAR_SC
741 tristate "Lochnagar Sound Card"
742 depends on MFD_LOCHNAGAR
744 This driver support the sound card functionality of the Cirrus
745 Logic Lochnagar audio development board.
747 config SND_SOC_MA120X0P
748 tristate "Infineon Merus(TM) MA120X0P Multilevel Class-D Audio amplifiers"
751 Enable support for Infineon MA120X0P Multilevel Class-D audio power
754 config SND_SOC_MADERA
756 default y if SND_SOC_CS47L15=y
757 default y if SND_SOC_CS47L35=y
758 default y if SND_SOC_CS47L85=y
759 default y if SND_SOC_CS47L90=y
760 default y if SND_SOC_CS47L92=y
761 default m if SND_SOC_CS47L15=m
762 default m if SND_SOC_CS47L35=m
763 default m if SND_SOC_CS47L85=m
764 default m if SND_SOC_CS47L90=m
765 default m if SND_SOC_CS47L92=m
767 config SND_SOC_MAX98088
768 tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
771 config SND_SOC_MAX98090
774 config SND_SOC_MAX98095
777 config SND_SOC_MAX98357A
778 tristate "Maxim MAX98357A CODEC"
781 config SND_SOC_MAX98371
784 config SND_SOC_MAX98504
785 tristate "Maxim MAX98504 speaker amplifier"
788 config SND_SOC_MAX9867
789 tristate "Maxim MAX9867 CODEC"
792 config SND_SOC_MAX98925
795 config SND_SOC_MAX98926
798 config SND_SOC_MAX98927
799 tristate "Maxim Integrated MAX98927 Speaker Amplifier"
802 config SND_SOC_MAX98373
803 tristate "Maxim Integrated MAX98373 Speaker Amplifier"
806 config SND_SOC_MAX9850
809 config SND_SOC_MAX9860
810 tristate "Maxim MAX9860 Mono Audio Voice Codec"
814 config SND_SOC_MSM8916_WCD_ANALOG
815 tristate "Qualcomm MSM8916 WCD Analog Codec"
816 depends on SPMI || COMPILE_TEST
818 config SND_SOC_MSM8916_WCD_DIGITAL
819 tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
822 config SND_SOC_PCM1681
823 tristate "Texas Instruments PCM1681 CODEC"
826 config SND_SOC_PCM1789
829 config SND_SOC_PCM1789_I2C
830 tristate "Texas Instruments PCM1789 CODEC (I2C)"
832 select SND_SOC_PCM1789
834 Enable support for Texas Instruments PCM1789 CODEC.
835 Select this if your PCM1789 is connected via an I2C bus.
837 config SND_SOC_PCM179X
840 config SND_SOC_PCM179X_I2C
841 tristate "Texas Instruments PCM179X CODEC (I2C)"
843 select SND_SOC_PCM179X
845 Enable support for Texas Instruments PCM179x CODEC.
846 Select this if your PCM179x is connected via an I2C bus.
848 config SND_SOC_PCM179X_SPI
849 tristate "Texas Instruments PCM179X CODEC (SPI)"
850 depends on SPI_MASTER
851 select SND_SOC_PCM179X
853 Enable support for Texas Instruments PCM179x CODEC.
854 Select this if your PCM179x is connected via an SPI bus.
856 config SND_SOC_PCM186X
859 config SND_SOC_PCM186X_I2C
860 tristate "Texas Instruments PCM186x CODECs - I2C"
862 select SND_SOC_PCM186X
865 config SND_SOC_PCM186X_SPI
866 tristate "Texas Instruments PCM186x CODECs - SPI"
867 depends on SPI_MASTER
868 select SND_SOC_PCM186X
871 config SND_SOC_PCM3008
874 config SND_SOC_PCM3060
877 config SND_SOC_PCM3060_I2C
878 tristate "Texas Instruments PCM3060 CODEC - I2C"
880 select SND_SOC_PCM3060
883 config SND_SOC_PCM3060_SPI
884 tristate "Texas Instruments PCM3060 CODEC - SPI"
885 depends on SPI_MASTER
886 select SND_SOC_PCM3060
889 config SND_SOC_PCM3168A
892 config SND_SOC_PCM3168A_I2C
893 tristate "Texas Instruments PCM3168A CODEC - I2C"
895 select SND_SOC_PCM3168A
898 config SND_SOC_PCM3168A_SPI
899 tristate "Texas Instruments PCM3168A CODEC - SPI"
900 depends on SPI_MASTER
901 select SND_SOC_PCM3168A
904 config SND_SOC_PCM5102A
907 config SND_SOC_PCM512x
910 config SND_SOC_PCM512x_I2C
911 tristate "Texas Instruments PCM512x CODECs - I2C"
913 select SND_SOC_PCM512x
916 config SND_SOC_PCM512x_SPI
917 tristate "Texas Instruments PCM512x CODECs - SPI"
918 depends on SPI_MASTER
919 select SND_SOC_PCM512x
922 config SND_SOC_RK3328
923 tristate "Rockchip RK3328 audio CODEC"
926 config SND_SOC_RL6231
928 default y if SND_SOC_RT5514=y
929 default y if SND_SOC_RT5616=y
930 default y if SND_SOC_RT5640=y
931 default y if SND_SOC_RT5645=y
932 default y if SND_SOC_RT5651=y
933 default y if SND_SOC_RT5659=y
934 default y if SND_SOC_RT5660=y
935 default y if SND_SOC_RT5663=y
936 default y if SND_SOC_RT5665=y
937 default y if SND_SOC_RT5668=y
938 default y if SND_SOC_RT5670=y
939 default y if SND_SOC_RT5677=y
940 default y if SND_SOC_RT5682=y
941 default y if SND_SOC_RT1011=y
942 default y if SND_SOC_RT1305=y
943 default y if SND_SOC_RT1308=y
944 default m if SND_SOC_RT5514=m
945 default m if SND_SOC_RT5616=m
946 default m if SND_SOC_RT5640=m
947 default m if SND_SOC_RT5645=m
948 default m if SND_SOC_RT5651=m
949 default m if SND_SOC_RT5659=m
950 default m if SND_SOC_RT5660=m
951 default m if SND_SOC_RT5663=m
952 default m if SND_SOC_RT5665=m
953 default m if SND_SOC_RT5668=m
954 default m if SND_SOC_RT5670=m
955 default m if SND_SOC_RT5677=m
956 default m if SND_SOC_RT5682=m
957 default m if SND_SOC_RT1011=m
958 default m if SND_SOC_RT1305=m
959 default m if SND_SOC_RT1308=m
961 config SND_SOC_RL6347A
963 default y if SND_SOC_RT274=y
964 default y if SND_SOC_RT286=y
965 default y if SND_SOC_RT298=y
966 default m if SND_SOC_RT274=m
967 default m if SND_SOC_RT286=m
968 default m if SND_SOC_RT298=m
982 config SND_SOC_RT1011
985 config SND_SOC_RT1305
988 config SND_SOC_RT1308
991 config SND_SOC_RT5514
994 config SND_SOC_RT5514_SPI
997 config SND_SOC_RT5514_SPI_BUILTIN
998 bool # force RT5514_SPI to be built-in to avoid link errors
999 default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
1001 config SND_SOC_RT5616
1002 tristate "Realtek RT5616 CODEC"
1005 config SND_SOC_PCM1794A
1009 config SND_SOC_RT5631
1010 tristate "Realtek ALC5631/RT5631 CODEC"
1013 config SND_SOC_RT5640
1016 config SND_SOC_RT5645
1019 config SND_SOC_RT5651
1022 config SND_SOC_RT5659
1025 config SND_SOC_RT5660
1028 config SND_SOC_RT5663
1031 config SND_SOC_RT5665
1034 config SND_SOC_RT5668
1037 config SND_SOC_RT5670
1040 config SND_SOC_RT5677
1045 config SND_SOC_RT5677_SPI
1047 default SND_SOC_RT5677 && SPI
1049 config SND_SOC_RT5682
1052 #Freescale sgtl5000 codec
1053 config SND_SOC_SGTL5000
1054 tristate "Freescale SGTL5000 CODEC"
1057 config SND_SOC_SI476X
1060 config SND_SOC_SIGMADSP
1064 config SND_SOC_SIGMADSP_I2C
1066 select SND_SOC_SIGMADSP
1068 config SND_SOC_SIGMADSP_REGMAP
1070 select SND_SOC_SIGMADSP
1072 config SND_SOC_SIMPLE_AMPLIFIER
1073 tristate "Simple Audio Amplifier"
1076 config SND_SOC_SIRF_AUDIO_CODEC
1077 tristate "SiRF SoC internal audio codec"
1080 config SND_SOC_SPDIF
1081 tristate "S/PDIF CODEC"
1083 config SND_SOC_SSM2305
1084 tristate "Analog Devices SSM2305 Class-D Amplifier"
1086 Enable support for Analog Devices SSM2305 filterless
1087 high-efficiency mono Class-D audio power amplifiers.
1089 config SND_SOC_SSM2518
1092 config SND_SOC_SSM2602
1095 config SND_SOC_SSM2602_SPI
1096 tristate "Analog Devices SSM2602 CODEC - SPI"
1097 depends on SPI_MASTER
1098 select SND_SOC_SSM2602
1101 config SND_SOC_SSM2602_I2C
1102 tristate "Analog Devices SSM2602 CODEC - I2C"
1104 select SND_SOC_SSM2602
1107 config SND_SOC_SSM4567
1108 tristate "Analog Devices ssm4567 amplifier driver support"
1111 config SND_SOC_STA32X
1112 tristate "STA326, STA328 and STA329 speaker amplifier"
1116 config SND_SOC_STA350
1117 tristate "STA350 speaker amplifier"
1120 config SND_SOC_STA529
1123 config SND_SOC_STAC9766
1126 config SND_SOC_STI_SAS
1127 tristate "codec Audio support for STI SAS codec"
1129 config SND_SOC_TAS2552
1130 tristate "Texas Instruments TAS2552 Mono Audio amplifier"
1133 config SND_SOC_TAS5086
1134 tristate "Texas Instruments TAS5086 speaker amplifier"
1137 config SND_SOC_TAS571X
1138 tristate "Texas Instruments TAS571x power amplifiers"
1141 Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
1142 TAS5719 and TAS5721 power amplifiers
1144 config SND_SOC_TAS5720
1145 tristate "Texas Instruments TAS5720 Mono Audio amplifier"
1148 Enable support for Texas Instruments TAS5720L/M high-efficiency mono
1149 Class-D audio power amplifiers.
1151 config SND_SOC_TAS6424
1152 tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
1155 Enable support for Texas Instruments TAS6424 high-efficiency
1156 digital input quad-channel Class-D audio power amplifiers.
1158 config SND_SOC_TDA7419
1159 tristate "ST TDA7419 audio processor"
1163 config SND_SOC_TFA9879
1164 tristate "NXP Semiconductors TFA9879 amplifier"
1167 config SND_SOC_TAS5713
1170 config SND_SOC_TLV320AIC23
1173 config SND_SOC_TLV320AIC23_I2C
1174 tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
1176 select SND_SOC_TLV320AIC23
1178 config SND_SOC_TLV320AIC23_SPI
1179 tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
1180 depends on SPI_MASTER
1181 select SND_SOC_TLV320AIC23
1183 config SND_SOC_TLV320AIC26
1187 config SND_SOC_TLV320AIC31XX
1188 tristate "Texas Instruments TLV320AIC31xx CODECs"
1192 config SND_SOC_TLV320AIC32X4
1194 depends on COMMON_CLK
1196 config SND_SOC_TLV320AIC32X4_I2C
1197 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
1199 depends on COMMON_CLK
1200 select SND_SOC_TLV320AIC32X4
1202 config SND_SOC_TLV320AIC32X4_SPI
1203 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
1204 depends on SPI_MASTER
1205 depends on COMMON_CLK
1206 select SND_SOC_TLV320AIC32X4
1208 config SND_SOC_TLV320AIC3X
1209 tristate "Texas Instruments TLV320AIC3x CODECs"
1212 config SND_SOC_TLV320DAC33
1215 config SND_SOC_TS3A227E
1216 tristate "TI Headset/Mic detect and keypress chip"
1219 config SND_SOC_TSCS42XX
1220 tristate "Tempo Semiconductor TSCS42xx CODEC"
1224 Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
1226 config SND_SOC_TSCS454
1227 tristate "Tempo Semiconductor TSCS454 CODEC"
1231 Add support for Tempo Semiconductor's TSCS454 audio CODEC.
1233 config SND_SOC_TWL4030
1234 select MFD_TWL4030_AUDIO
1237 config SND_SOC_TWL6040
1240 config SND_SOC_UDA1334
1241 tristate "NXP UDA1334 DAC"
1244 The UDA1334 is an NXP audio codec, supports the I2S-bus data format
1245 and has basic features such as de-emphasis (at 44.1 kHz sampling
1248 config SND_SOC_UDA134X
1251 config SND_SOC_UDA1380
1255 config SND_SOC_WCD9335
1256 tristate "WCD9335 Codec"
1258 select REGMAP_SLIMBUS
1261 The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
1262 Qualcomm Technologies, Inc. (QTI) multimedia solutions,
1263 including the MSM8996, MSM8976, and MSM8956 chipsets.
1265 config SND_SOC_WL1273
1268 config SND_SOC_WM0010
1271 config SND_SOC_WM1250_EV1
1274 config SND_SOC_WM2000
1277 config SND_SOC_WM2200
1280 config SND_SOC_WM5100
1283 config SND_SOC_WM5102
1286 config SND_SOC_WM5110
1289 config SND_SOC_WM8350
1292 config SND_SOC_WM8400
1295 config SND_SOC_WM8510
1296 tristate "Wolfson Microelectronics WM8510 CODEC"
1297 depends on SND_SOC_I2C_AND_SPI
1299 config SND_SOC_WM8523
1300 tristate "Wolfson Microelectronics WM8523 DAC"
1303 config SND_SOC_WM8524
1304 tristate "Wolfson Microelectronics WM8524 DAC"
1307 config SND_SOC_WM8580
1308 tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
1311 config SND_SOC_WM8711
1312 tristate "Wolfson Microelectronics WM8711 CODEC"
1313 depends on SND_SOC_I2C_AND_SPI
1315 config SND_SOC_WM8727
1318 config SND_SOC_WM8728
1319 tristate "Wolfson Microelectronics WM8728 DAC"
1320 depends on SND_SOC_I2C_AND_SPI
1322 config SND_SOC_WM8731
1323 tristate "Wolfson Microelectronics WM8731 CODEC"
1324 depends on SND_SOC_I2C_AND_SPI
1326 config SND_SOC_WM8737
1327 tristate "Wolfson Microelectronics WM8737 ADC"
1328 depends on SND_SOC_I2C_AND_SPI
1330 config SND_SOC_WM8741
1331 tristate "Wolfson Microelectronics WM8737 DAC"
1332 depends on SND_SOC_I2C_AND_SPI
1334 config SND_SOC_WM8750
1335 tristate "Wolfson Microelectronics WM8750 CODEC"
1336 depends on SND_SOC_I2C_AND_SPI
1338 config SND_SOC_WM8753
1339 tristate "Wolfson Microelectronics WM8753 CODEC"
1340 depends on SND_SOC_I2C_AND_SPI
1342 config SND_SOC_WM8770
1343 tristate "Wolfson Microelectronics WM8770 CODEC"
1344 depends on SPI_MASTER
1346 config SND_SOC_WM8776
1347 tristate "Wolfson Microelectronics WM8776 CODEC"
1348 depends on SND_SOC_I2C_AND_SPI
1350 config SND_SOC_WM8782
1351 tristate "Wolfson Microelectronics WM8782 ADC"
1353 config SND_SOC_WM8804
1356 config SND_SOC_WM8804_I2C
1357 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1359 select SND_SOC_WM8804
1362 config SND_SOC_WM8804_SPI
1363 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1364 depends on SPI_MASTER
1365 select SND_SOC_WM8804
1368 config SND_SOC_WM8900
1371 config SND_SOC_WM8903
1372 tristate "Wolfson Microelectronics WM8903 CODEC"
1375 config SND_SOC_WM8904
1376 tristate "Wolfson Microelectronics WM8904 CODEC"
1379 config SND_SOC_WM8940
1382 config SND_SOC_WM8955
1385 config SND_SOC_WM8960
1386 tristate "Wolfson Microelectronics WM8960 CODEC"
1389 config SND_SOC_WM8961
1392 config SND_SOC_WM8962
1393 tristate "Wolfson Microelectronics WM8962 CODEC"
1394 depends on I2C && INPUT
1396 config SND_SOC_WM8971
1399 config SND_SOC_WM8974
1400 tristate "Wolfson Microelectronics WM8974 codec"
1403 config SND_SOC_WM8978
1404 tristate "Wolfson Microelectronics WM8978 codec"
1407 config SND_SOC_WM8983
1410 config SND_SOC_WM8985
1411 tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1412 depends on SND_SOC_I2C_AND_SPI
1414 config SND_SOC_WM8988
1417 config SND_SOC_WM8990
1420 config SND_SOC_WM8991
1423 config SND_SOC_WM8993
1426 config SND_SOC_WM8994
1429 config SND_SOC_WM8995
1432 config SND_SOC_WM8996
1435 config SND_SOC_WM8997
1438 config SND_SOC_WM8998
1441 config SND_SOC_WM9081
1445 config SND_SOC_WM9090
1448 config SND_SOC_WM9705
1451 select AC97_BUS_COMPAT if AC97_BUS_NEW
1453 config SND_SOC_WM9712
1456 select AC97_BUS_COMPAT if AC97_BUS_NEW
1458 config SND_SOC_WM9713
1461 select AC97_BUS_COMPAT if AC97_BUS_NEW
1463 config SND_SOC_ZX_AUD96P22
1464 tristate "ZTE ZX AUD96P22 CODEC"
1469 config SND_SOC_LM4857
1472 config SND_SOC_MAX9759
1473 tristate "Maxim MAX9759 speaker Amplifier"
1476 config SND_SOC_MAX9768
1479 config SND_SOC_MAX9877
1482 config SND_SOC_MC13783
1485 config SND_SOC_ML26124
1488 config SND_SOC_MT6351
1489 tristate "MediaTek MT6351 Codec"
1491 config SND_SOC_MT6358
1492 tristate "MediaTek MT6358 Codec"
1494 Enable support for the platform which uses MT6358 as
1495 external codec device.
1497 config SND_SOC_NAU8540
1498 tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1501 config SND_SOC_NAU8810
1502 tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1505 config SND_SOC_NAU8822
1506 tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
1509 config SND_SOC_NAU8824
1510 tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1513 config SND_SOC_NAU8825
1516 config SND_SOC_TPA6130A2
1517 tristate "Texas Instruments TPA6130A2 headphone amplifier"
1520 config SND_SOC_I_SABRE_CODEC
1521 tristate "Audiophonics I-SABRE Codec"