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_JZ4740_CODEC
101 select SND_SOC_JZ4725B_CODEC
102 select SND_SOC_LM4857 if I2C
103 select SND_SOC_LM49453 if I2C
104 select SND_SOC_LOCHNAGAR_SC if MFD_LOCHNAGAR
105 select SND_SOC_MAX98088 if I2C
106 select SND_SOC_MAX98090 if I2C
107 select SND_SOC_MAX98095 if I2C
108 select SND_SOC_MAX98357A if GPIOLIB
109 select SND_SOC_MAX98371 if I2C
110 select SND_SOC_MAX98504 if I2C
111 select SND_SOC_MAX9867 if I2C
112 select SND_SOC_MAX98925 if I2C
113 select SND_SOC_MAX98926 if I2C
114 select SND_SOC_MAX98927 if I2C
115 select SND_SOC_MAX98373 if I2C
116 select SND_SOC_MAX9850 if I2C
117 select SND_SOC_MAX9860 if I2C
118 select SND_SOC_MAX9759
119 select SND_SOC_MAX9768 if I2C
120 select SND_SOC_MAX9877 if I2C
121 select SND_SOC_MC13783 if MFD_MC13XXX
122 select SND_SOC_ML26124 if I2C
123 select SND_SOC_MT6351 if MTK_PMIC_WRAP
124 select SND_SOC_MT6358 if MTK_PMIC_WRAP
125 select SND_SOC_NAU8540 if I2C
126 select SND_SOC_NAU8810 if I2C
127 select SND_SOC_NAU8822 if I2C
128 select SND_SOC_NAU8824 if I2C
129 select SND_SOC_NAU8825 if I2C
130 select SND_SOC_HDMI_CODEC
131 select SND_SOC_PCM1681 if I2C
132 select SND_SOC_PCM1789_I2C if I2C
133 select SND_SOC_PCM179X_I2C if I2C
134 select SND_SOC_PCM179X_SPI if SPI_MASTER
135 select SND_SOC_PCM186X_I2C if I2C
136 select SND_SOC_PCM186X_SPI if SPI_MASTER
137 select SND_SOC_PCM3008
138 select SND_SOC_PCM3060_I2C if I2C
139 select SND_SOC_PCM3060_SPI if SPI_MASTER
140 select SND_SOC_PCM3168A_I2C if I2C
141 select SND_SOC_PCM3168A_SPI if SPI_MASTER
142 select SND_SOC_PCM5102A
143 select SND_SOC_PCM512x_I2C if I2C
144 select SND_SOC_PCM512x_SPI if SPI_MASTER
145 select SND_SOC_RK3328
146 select SND_SOC_RT274 if I2C
147 select SND_SOC_RT286 if I2C
148 select SND_SOC_RT298 if I2C
149 select SND_SOC_RT1011 if I2C
150 select SND_SOC_RT1305 if I2C
151 select SND_SOC_RT1308 if I2C
152 select SND_SOC_RT5514 if I2C
153 select SND_SOC_RT5616 if I2C
154 select SND_SOC_RT5631 if I2C
155 select SND_SOC_RT5640 if I2C
156 select SND_SOC_RT5645 if I2C
157 select SND_SOC_RT5651 if I2C
158 select SND_SOC_RT5659 if I2C
159 select SND_SOC_RT5660 if I2C
160 select SND_SOC_RT5663 if I2C
161 select SND_SOC_RT5665 if I2C
162 select SND_SOC_RT5668 if I2C
163 select SND_SOC_RT5670 if I2C
164 select SND_SOC_RT5677 if I2C && SPI_MASTER
165 select SND_SOC_RT5682 if I2C
166 select SND_SOC_SGTL5000 if I2C
167 select SND_SOC_SI476X if MFD_SI476X_CORE
168 select SND_SOC_SIMPLE_AMPLIFIER
169 select SND_SOC_SIRF_AUDIO_CODEC
171 select SND_SOC_SSM2305
172 select SND_SOC_SSM2518 if I2C
173 select SND_SOC_SSM2602_SPI if SPI_MASTER
174 select SND_SOC_SSM2602_I2C if I2C
175 select SND_SOC_SSM4567 if I2C
176 select SND_SOC_STA32X if I2C
177 select SND_SOC_STA350 if I2C
178 select SND_SOC_STA529 if I2C
179 select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
180 select SND_SOC_STI_SAS
181 select SND_SOC_TAS2552 if I2C
182 select SND_SOC_TAS5086 if I2C
183 select SND_SOC_TAS571X if I2C
184 select SND_SOC_TAS5720 if I2C
185 select SND_SOC_TAS6424 if I2C
186 select SND_SOC_TDA7419 if I2C
187 select SND_SOC_TFA9879 if I2C
188 select SND_SOC_TLV320AIC23_I2C if I2C
189 select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
190 select SND_SOC_TLV320AIC26 if SPI_MASTER
191 select SND_SOC_TLV320AIC31XX if I2C
192 select SND_SOC_TLV320AIC32X4_I2C if I2C && COMMON_CLK
193 select SND_SOC_TLV320AIC32X4_SPI if SPI_MASTER && COMMON_CLK
194 select SND_SOC_TLV320AIC3X if I2C
195 select SND_SOC_TPA6130A2 if I2C
196 select SND_SOC_TLV320DAC33 if I2C
197 select SND_SOC_TSCS42XX if I2C
198 select SND_SOC_TSCS454 if I2C
199 select SND_SOC_TS3A227E if I2C
200 select SND_SOC_TWL4030 if TWL4030_CORE
201 select SND_SOC_TWL6040 if TWL6040_CORE
202 select SND_SOC_UDA1334 if GPIOLIB
203 select SND_SOC_UDA134X
204 select SND_SOC_UDA1380 if I2C
205 select SND_SOC_WCD9335 if SLIMBUS
206 select SND_SOC_WL1273 if MFD_WL1273_CORE
207 select SND_SOC_WM0010 if SPI_MASTER
208 select SND_SOC_WM1250_EV1 if I2C
209 select SND_SOC_WM2000 if I2C
210 select SND_SOC_WM2200 if I2C
211 select SND_SOC_WM5100 if I2C
212 select SND_SOC_WM5102 if MFD_WM5102
213 select SND_SOC_WM5110 if MFD_WM5110
214 select SND_SOC_WM8350 if MFD_WM8350
215 select SND_SOC_WM8400 if MFD_WM8400
216 select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
217 select SND_SOC_WM8523 if I2C
218 select SND_SOC_WM8524 if GPIOLIB
219 select SND_SOC_WM8580 if I2C
220 select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
221 select SND_SOC_WM8727
222 select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
223 select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
224 select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
225 select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
226 select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
227 select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
228 select SND_SOC_WM8770 if SPI_MASTER
229 select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
230 select SND_SOC_WM8782
231 select SND_SOC_WM8804_I2C if I2C
232 select SND_SOC_WM8804_SPI if SPI_MASTER
233 select SND_SOC_WM8900 if I2C
234 select SND_SOC_WM8903 if I2C
235 select SND_SOC_WM8904 if I2C
236 select SND_SOC_WM8940 if I2C
237 select SND_SOC_WM8955 if I2C
238 select SND_SOC_WM8960 if I2C
239 select SND_SOC_WM8961 if I2C
240 select SND_SOC_WM8962 if I2C && INPUT
241 select SND_SOC_WM8971 if I2C
242 select SND_SOC_WM8974 if I2C
243 select SND_SOC_WM8978 if I2C
244 select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
245 select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
246 select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
247 select SND_SOC_WM8990 if I2C
248 select SND_SOC_WM8991 if I2C
249 select SND_SOC_WM8993 if I2C
250 select SND_SOC_WM8994 if MFD_WM8994
251 select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
252 select SND_SOC_WM8996 if I2C
253 select SND_SOC_WM8997 if MFD_WM8997
254 select SND_SOC_WM8998 if MFD_WM8998
255 select SND_SOC_WM9081 if I2C
256 select SND_SOC_WM9090 if I2C
257 select SND_SOC_WM9705 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
258 select SND_SOC_WM9712 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
259 select SND_SOC_WM9713 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
261 Normally ASoC codec drivers are only built if a machine driver which
262 uses them is also built since they are only usable with a machine
263 driver. Selecting this option will allow these drivers to be built
264 without an explicit machine driver for test and development purposes.
266 Support for the bus types used to access the codecs to be built must
267 be selected separately.
269 If unsure select "N".
271 config SND_SOC_88PM860X
274 config SND_SOC_ARIZONA
276 default y if SND_SOC_CS47L24=y
277 default y if SND_SOC_WM5102=y
278 default y if SND_SOC_WM5110=y
279 default y if SND_SOC_WM8997=y
280 default y if SND_SOC_WM8998=y
281 default m if SND_SOC_CS47L24=m
282 default m if SND_SOC_WM5102=m
283 default m if SND_SOC_WM5110=m
284 default m if SND_SOC_WM8997=m
285 default m if SND_SOC_WM8998=m
287 config SND_SOC_WM_HUBS
289 default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
290 default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
292 config SND_SOC_WM_ADSP
294 select SND_SOC_COMPRESS
295 default y if SND_SOC_MADERA=y
296 default y if SND_SOC_CS47L24=y
297 default y if SND_SOC_WM5102=y
298 default y if SND_SOC_WM5110=y
299 default y if SND_SOC_WM2200=y
300 default m if SND_SOC_MADERA=m
301 default m if SND_SOC_CS47L24=m
302 default m if SND_SOC_WM5102=m
303 default m if SND_SOC_WM5110=m
304 default m if SND_SOC_WM2200=m
306 config SND_SOC_AB8500_CODEC
309 config SND_SOC_AC97_CODEC
310 tristate "Build generic ASoC AC97 CODEC driver"
311 select SND_AC97_CODEC
312 select SND_SOC_AC97_BUS
314 config SND_SOC_AD1836
317 config SND_SOC_AD193X
320 config SND_SOC_AD193X_SPI
322 select SND_SOC_AD193X
324 config SND_SOC_AD193X_I2C
326 select SND_SOC_AD193X
328 config SND_SOC_AD1980
332 config SND_SOC_AD73311
335 config SND_SOC_ADAU_UTILS
338 config SND_SOC_ADAU1373
340 select SND_SOC_ADAU_UTILS
342 config SND_SOC_ADAU1701
343 tristate "Analog Devices ADAU1701 CODEC"
345 select SND_SOC_SIGMADSP_I2C
347 config SND_SOC_ADAU17X1
349 select SND_SOC_SIGMADSP_REGMAP
350 select SND_SOC_ADAU_UTILS
352 config SND_SOC_ADAU1761
354 select SND_SOC_ADAU17X1
356 config SND_SOC_ADAU1761_I2C
357 tristate "Analog Devices AU1761 CODEC - I2C"
359 select SND_SOC_ADAU1761
362 config SND_SOC_ADAU1761_SPI
363 tristate "Analog Devices AU1761 CODEC - SPI"
365 select SND_SOC_ADAU1761
368 config SND_SOC_ADAU1781
369 select SND_SOC_ADAU17X1
372 config SND_SOC_ADAU1781_I2C
374 select SND_SOC_ADAU1781
377 config SND_SOC_ADAU1781_SPI
379 select SND_SOC_ADAU1781
382 config SND_SOC_ADAU1977
385 config SND_SOC_ADAU1977_SPI
387 select SND_SOC_ADAU1977
390 config SND_SOC_ADAU1977_I2C
392 select SND_SOC_ADAU1977
395 config SND_SOC_ADAU7002
396 tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
398 config SND_SOC_ADAV80X
401 config SND_SOC_ADAV801
403 select SND_SOC_ADAV80X
405 config SND_SOC_ADAV803
407 select SND_SOC_ADAV80X
409 config SND_SOC_ADS117X
412 config SND_SOC_AK4104
413 tristate "AKM AK4104 CODEC"
414 depends on SPI_MASTER
416 config SND_SOC_AK4118
417 tristate "AKM AK4118 CODEC"
421 config SND_SOC_AK4458
422 tristate "AKM AK4458 CODEC"
426 config SND_SOC_AK4535
429 config SND_SOC_AK4554
430 tristate "AKM AK4554 CODEC"
432 config SND_SOC_AK4613
433 tristate "AKM AK4613 CODEC"
436 config SND_SOC_AK4641
439 config SND_SOC_AK4642
440 tristate "AKM AK4642 CODEC"
443 config SND_SOC_AK4671
446 config SND_SOC_AK5386
447 tristate "AKM AK5638 CODEC"
449 config SND_SOC_AK5558
450 tristate "AKM AK5558 CODEC"
454 config SND_SOC_ALC5623
455 tristate "Realtek ALC5623 CODEC"
458 config SND_SOC_ALC5632
461 config SND_SOC_BD28623
462 tristate "ROHM BD28623 CODEC"
464 Enable support for ROHM BD28623MUV Class D speaker amplifier.
465 This codec does not have any control buses such as I2C, it
466 detect format of I2S automatically.
468 config SND_SOC_BT_SCO
469 tristate "Dummy BT SCO codec driver"
472 tristate "Motorola CPCAP codec"
475 config SND_SOC_CQ0093VC
478 config SND_SOC_CROS_EC_CODEC
479 tristate "codec driver for ChromeOS EC"
482 If you say yes here you will get support for the
483 ChromeOS Embedded Controller's Audio Codec.
485 config SND_SOC_CS35L32
486 tristate "Cirrus Logic CS35L32 CODEC"
489 config SND_SOC_CS35L33
490 tristate "Cirrus Logic CS35L33 CODEC"
493 config SND_SOC_CS35L34
494 tristate "Cirrus Logic CS35L34 CODEC"
497 config SND_SOC_CS35L35
498 tristate "Cirrus Logic CS35L35 CODEC"
501 config SND_SOC_CS35L36
502 tristate "Cirrus Logic CS35L36 CODEC"
505 config SND_SOC_CS42L42
506 tristate "Cirrus Logic CS42L42 CODEC"
509 config SND_SOC_CS42L51
512 config SND_SOC_CS42L51_I2C
513 tristate "Cirrus Logic CS42L51 CODEC (I2C)"
515 select SND_SOC_CS42L51
517 config SND_SOC_CS42L52
518 tristate "Cirrus Logic CS42L52 CODEC"
519 depends on I2C && INPUT
521 config SND_SOC_CS42L56
522 tristate "Cirrus Logic CS42L56 CODEC"
523 depends on I2C && INPUT
525 config SND_SOC_CS42L73
526 tristate "Cirrus Logic CS42L73 CODEC"
529 config SND_SOC_CS4265
530 tristate "Cirrus Logic CS4265 CODEC"
534 # Cirrus Logic CS4270 Codec
535 config SND_SOC_CS4270
536 tristate "Cirrus Logic CS4270 CODEC"
539 # Cirrus Logic CS4270 Codec VD = 3.3V Errata
540 # Select if you are affected by the errata where the part will not function
541 # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
542 # not select any sample rates that require MCLK to be divided by 1.5.
543 config SND_SOC_CS4270_VD33_ERRATA
545 depends on SND_SOC_CS4270
547 config SND_SOC_CS4271
550 config SND_SOC_CS4271_I2C
551 tristate "Cirrus Logic CS4271 CODEC (I2C)"
553 select SND_SOC_CS4271
556 config SND_SOC_CS4271_SPI
557 tristate "Cirrus Logic CS4271 CODEC (SPI)"
558 depends on SPI_MASTER
559 select SND_SOC_CS4271
562 config SND_SOC_CS42XX8
565 config SND_SOC_CS42XX8_I2C
566 tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
568 select SND_SOC_CS42XX8
571 # Cirrus Logic CS43130 HiFi DAC
572 config SND_SOC_CS43130
573 tristate "Cirrus Logic CS43130 CODEC"
576 config SND_SOC_CS4341
577 tristate "Cirrus Logic CS4341 CODEC"
578 depends on SND_SOC_I2C_AND_SPI
579 select REGMAP_I2C if I2C
580 select REGMAP_SPI if SPI_MASTER
582 # Cirrus Logic CS4349 HiFi DAC
583 config SND_SOC_CS4349
584 tristate "Cirrus Logic CS4349 CODEC"
587 config SND_SOC_CS47L15
589 depends on MFD_CS47L15
591 config SND_SOC_CS47L24
594 config SND_SOC_CS47L35
596 depends on MFD_CS47L35
598 config SND_SOC_CS47L85
600 depends on MFD_CS47L85
602 config SND_SOC_CS47L90
604 depends on MFD_CS47L90
606 config SND_SOC_CS47L92
608 depends on MFD_CS47L92
610 # Cirrus Logic Quad-Channel ADC
611 config SND_SOC_CS53L30
612 tristate "Cirrus Logic CS53L30 CODEC"
615 config SND_SOC_CX20442
619 config SND_SOC_CX2072X
620 tristate "Conexant CX2072X CODEC"
623 Enable support for Conexant CX20721 and CX20723 codec chips.
625 config SND_SOC_JZ4740_CODEC
626 depends on MIPS || COMPILE_TEST
628 tristate "Ingenic JZ4740 internal CODEC"
630 Enable support for the internal CODEC found in the JZ4740 SoC
633 This driver can also be built as a module. If so, the module
634 will be called snd-soc-jz4740-codec.
636 config SND_SOC_JZ4725B_CODEC
637 depends on MIPS || COMPILE_TEST
639 tristate "Ingenic JZ4725B internal CODEC"
641 Enable support for the internal CODEC found in the JZ4725B SoC
644 This driver can also be built as a module. If so, the module
645 will be called snd-soc-jz4725b-codec.
650 config SND_SOC_DA7210
653 config SND_SOC_DA7213
656 config SND_SOC_DA7218
659 config SND_SOC_DA7219
662 config SND_SOC_DA732X
665 config SND_SOC_DA9055
669 tristate "Generic Digital Microphone CODEC"
672 Enable support for the Generic Digital Microphone CODEC.
673 Select this if your sound card has DMICs.
675 config SND_SOC_HDMI_CODEC
678 select SND_PCM_IEC958
681 config SND_SOC_ES7134
682 tristate "Everest Semi ES7134 CODEC"
684 config SND_SOC_ES7241
685 tristate "Everest Semi ES7241 CODEC"
687 config SND_SOC_ES8316
688 tristate "Everest Semi ES8316 CODEC"
691 config SND_SOC_ES8328
694 config SND_SOC_ES8328_I2C
695 tristate "Everest Semi ES8328 CODEC (I2C)"
697 select SND_SOC_ES8328
699 config SND_SOC_ES8328_SPI
700 tristate "Everest Semi ES8328 CODEC (SPI)"
701 depends on SPI_MASTER
702 select SND_SOC_ES8328
704 config SND_SOC_GTM601
705 tristate 'GTM601 UMTS modem audio codec'
707 config SND_SOC_HDAC_HDMI
709 select SND_HDA_EXT_CORE
713 config SND_SOC_HDAC_HDA
717 config SND_SOC_ICS43432
720 config SND_SOC_INNO_RK3036
721 tristate "Inno codec driver for RK3036 SoC"
724 config SND_SOC_ISABELLE
727 config SND_SOC_LM49453
730 config SND_SOC_LOCHNAGAR_SC
731 tristate "Lochnagar Sound Card"
732 depends on MFD_LOCHNAGAR
734 This driver support the sound card functionality of the Cirrus
735 Logic Lochnagar audio development board.
737 config SND_SOC_MADERA
739 default y if SND_SOC_CS47L15=y
740 default y if SND_SOC_CS47L35=y
741 default y if SND_SOC_CS47L85=y
742 default y if SND_SOC_CS47L90=y
743 default y if SND_SOC_CS47L92=y
744 default m if SND_SOC_CS47L15=m
745 default m if SND_SOC_CS47L35=m
746 default m if SND_SOC_CS47L85=m
747 default m if SND_SOC_CS47L90=m
748 default m if SND_SOC_CS47L92=m
750 config SND_SOC_MAX98088
751 tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
754 config SND_SOC_MAX98090
757 config SND_SOC_MAX98095
760 config SND_SOC_MAX98357A
761 tristate "Maxim MAX98357A CODEC"
763 config SND_SOC_MAX98371
766 config SND_SOC_MAX98504
767 tristate "Maxim MAX98504 speaker amplifier"
770 config SND_SOC_MAX9867
771 tristate "Maxim MAX9867 CODEC"
774 config SND_SOC_MAX98925
777 config SND_SOC_MAX98926
780 config SND_SOC_MAX98927
781 tristate "Maxim Integrated MAX98927 Speaker Amplifier"
784 config SND_SOC_MAX98373
785 tristate "Maxim Integrated MAX98373 Speaker Amplifier"
788 config SND_SOC_MAX9850
791 config SND_SOC_MAX9860
792 tristate "Maxim MAX9860 Mono Audio Voice Codec"
796 config SND_SOC_MSM8916_WCD_ANALOG
797 tristate "Qualcomm MSM8916 WCD Analog Codec"
798 depends on SPMI || COMPILE_TEST
800 config SND_SOC_MSM8916_WCD_DIGITAL
801 tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
804 config SND_SOC_PCM1681
805 tristate "Texas Instruments PCM1681 CODEC"
808 config SND_SOC_PCM1789
811 config SND_SOC_PCM1789_I2C
812 tristate "Texas Instruments PCM1789 CODEC (I2C)"
814 select SND_SOC_PCM1789
816 Enable support for Texas Instruments PCM1789 CODEC.
817 Select this if your PCM1789 is connected via an I2C bus.
819 config SND_SOC_PCM179X
822 config SND_SOC_PCM179X_I2C
823 tristate "Texas Instruments PCM179X CODEC (I2C)"
825 select SND_SOC_PCM179X
827 Enable support for Texas Instruments PCM179x CODEC.
828 Select this if your PCM179x is connected via an I2C bus.
830 config SND_SOC_PCM179X_SPI
831 tristate "Texas Instruments PCM179X CODEC (SPI)"
832 depends on SPI_MASTER
833 select SND_SOC_PCM179X
835 Enable support for Texas Instruments PCM179x CODEC.
836 Select this if your PCM179x is connected via an SPI bus.
838 config SND_SOC_PCM186X
841 config SND_SOC_PCM186X_I2C
842 tristate "Texas Instruments PCM186x CODECs - I2C"
844 select SND_SOC_PCM186X
847 config SND_SOC_PCM186X_SPI
848 tristate "Texas Instruments PCM186x CODECs - SPI"
849 depends on SPI_MASTER
850 select SND_SOC_PCM186X
853 config SND_SOC_PCM3008
856 config SND_SOC_PCM3060
859 config SND_SOC_PCM3060_I2C
860 tristate "Texas Instruments PCM3060 CODEC - I2C"
862 select SND_SOC_PCM3060
865 config SND_SOC_PCM3060_SPI
866 tristate "Texas Instruments PCM3060 CODEC - SPI"
867 depends on SPI_MASTER
868 select SND_SOC_PCM3060
871 config SND_SOC_PCM3168A
874 config SND_SOC_PCM3168A_I2C
875 tristate "Texas Instruments PCM3168A CODEC - I2C"
877 select SND_SOC_PCM3168A
880 config SND_SOC_PCM3168A_SPI
881 tristate "Texas Instruments PCM3168A CODEC - SPI"
882 depends on SPI_MASTER
883 select SND_SOC_PCM3168A
886 config SND_SOC_PCM5102A
889 config SND_SOC_PCM512x
892 config SND_SOC_PCM512x_I2C
893 tristate "Texas Instruments PCM512x CODECs - I2C"
895 select SND_SOC_PCM512x
898 config SND_SOC_PCM512x_SPI
899 tristate "Texas Instruments PCM512x CODECs - SPI"
900 depends on SPI_MASTER
901 select SND_SOC_PCM512x
904 config SND_SOC_RK3328
905 tristate "Rockchip RK3328 audio CODEC"
908 config SND_SOC_RL6231
910 default y if SND_SOC_RT5514=y
911 default y if SND_SOC_RT5616=y
912 default y if SND_SOC_RT5640=y
913 default y if SND_SOC_RT5645=y
914 default y if SND_SOC_RT5651=y
915 default y if SND_SOC_RT5659=y
916 default y if SND_SOC_RT5660=y
917 default y if SND_SOC_RT5663=y
918 default y if SND_SOC_RT5665=y
919 default y if SND_SOC_RT5668=y
920 default y if SND_SOC_RT5670=y
921 default y if SND_SOC_RT5677=y
922 default y if SND_SOC_RT5682=y
923 default y if SND_SOC_RT1011=y
924 default y if SND_SOC_RT1305=y
925 default y if SND_SOC_RT1308=y
926 default m if SND_SOC_RT5514=m
927 default m if SND_SOC_RT5616=m
928 default m if SND_SOC_RT5640=m
929 default m if SND_SOC_RT5645=m
930 default m if SND_SOC_RT5651=m
931 default m if SND_SOC_RT5659=m
932 default m if SND_SOC_RT5660=m
933 default m if SND_SOC_RT5663=m
934 default m if SND_SOC_RT5665=m
935 default m if SND_SOC_RT5668=m
936 default m if SND_SOC_RT5670=m
937 default m if SND_SOC_RT5677=m
938 default m if SND_SOC_RT5682=m
939 default m if SND_SOC_RT1011=m
940 default m if SND_SOC_RT1305=m
941 default m if SND_SOC_RT1308=m
943 config SND_SOC_RL6347A
945 default y if SND_SOC_RT274=y
946 default y if SND_SOC_RT286=y
947 default y if SND_SOC_RT298=y
948 default m if SND_SOC_RT274=m
949 default m if SND_SOC_RT286=m
950 default m if SND_SOC_RT298=m
964 config SND_SOC_RT1011
967 config SND_SOC_RT1305
970 config SND_SOC_RT1308
973 config SND_SOC_RT5514
976 config SND_SOC_RT5514_SPI
979 config SND_SOC_RT5514_SPI_BUILTIN
980 bool # force RT5514_SPI to be built-in to avoid link errors
981 default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
983 config SND_SOC_RT5616
984 tristate "Realtek RT5616 CODEC"
987 config SND_SOC_RT5631
988 tristate "Realtek ALC5631/RT5631 CODEC"
991 config SND_SOC_RT5640
994 config SND_SOC_RT5645
997 config SND_SOC_RT5651
1000 config SND_SOC_RT5659
1003 config SND_SOC_RT5660
1006 config SND_SOC_RT5663
1009 config SND_SOC_RT5665
1012 config SND_SOC_RT5668
1015 config SND_SOC_RT5670
1018 config SND_SOC_RT5677
1023 config SND_SOC_RT5677_SPI
1025 default SND_SOC_RT5677 && SPI
1027 config SND_SOC_RT5682
1030 #Freescale sgtl5000 codec
1031 config SND_SOC_SGTL5000
1032 tristate "Freescale SGTL5000 CODEC"
1035 config SND_SOC_SI476X
1038 config SND_SOC_SIGMADSP
1042 config SND_SOC_SIGMADSP_I2C
1044 select SND_SOC_SIGMADSP
1046 config SND_SOC_SIGMADSP_REGMAP
1048 select SND_SOC_SIGMADSP
1050 config SND_SOC_SIMPLE_AMPLIFIER
1051 tristate "Simple Audio Amplifier"
1054 config SND_SOC_SIRF_AUDIO_CODEC
1055 tristate "SiRF SoC internal audio codec"
1058 config SND_SOC_SPDIF
1059 tristate "S/PDIF CODEC"
1061 config SND_SOC_SSM2305
1062 tristate "Analog Devices SSM2305 Class-D Amplifier"
1064 Enable support for Analog Devices SSM2305 filterless
1065 high-efficiency mono Class-D audio power amplifiers.
1067 config SND_SOC_SSM2518
1070 config SND_SOC_SSM2602
1073 config SND_SOC_SSM2602_SPI
1074 tristate "Analog Devices SSM2602 CODEC - SPI"
1075 depends on SPI_MASTER
1076 select SND_SOC_SSM2602
1079 config SND_SOC_SSM2602_I2C
1080 tristate "Analog Devices SSM2602 CODEC - I2C"
1082 select SND_SOC_SSM2602
1085 config SND_SOC_SSM4567
1086 tristate "Analog Devices ssm4567 amplifier driver support"
1089 config SND_SOC_STA32X
1090 tristate "STA326, STA328 and STA329 speaker amplifier"
1094 config SND_SOC_STA350
1095 tristate "STA350 speaker amplifier"
1098 config SND_SOC_STA529
1101 config SND_SOC_STAC9766
1104 config SND_SOC_STI_SAS
1105 tristate "codec Audio support for STI SAS codec"
1107 config SND_SOC_TAS2552
1108 tristate "Texas Instruments TAS2552 Mono Audio amplifier"
1111 config SND_SOC_TAS5086
1112 tristate "Texas Instruments TAS5086 speaker amplifier"
1115 config SND_SOC_TAS571X
1116 tristate "Texas Instruments TAS571x power amplifiers"
1119 Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
1120 TAS5719 and TAS5721 power amplifiers
1122 config SND_SOC_TAS5720
1123 tristate "Texas Instruments TAS5720 Mono Audio amplifier"
1126 Enable support for Texas Instruments TAS5720L/M high-efficiency mono
1127 Class-D audio power amplifiers.
1129 config SND_SOC_TAS6424
1130 tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
1133 Enable support for Texas Instruments TAS6424 high-efficiency
1134 digital input quad-channel Class-D audio power amplifiers.
1136 config SND_SOC_TDA7419
1137 tristate "ST TDA7419 audio processor"
1141 config SND_SOC_TFA9879
1142 tristate "NXP Semiconductors TFA9879 amplifier"
1145 config SND_SOC_TLV320AIC23
1148 config SND_SOC_TLV320AIC23_I2C
1149 tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
1151 select SND_SOC_TLV320AIC23
1153 config SND_SOC_TLV320AIC23_SPI
1154 tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
1155 depends on SPI_MASTER
1156 select SND_SOC_TLV320AIC23
1158 config SND_SOC_TLV320AIC26
1162 config SND_SOC_TLV320AIC31XX
1163 tristate "Texas Instruments TLV320AIC31xx CODECs"
1167 config SND_SOC_TLV320AIC32X4
1169 depends on COMMON_CLK
1171 config SND_SOC_TLV320AIC32X4_I2C
1172 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
1174 depends on COMMON_CLK
1175 select SND_SOC_TLV320AIC32X4
1177 config SND_SOC_TLV320AIC32X4_SPI
1178 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
1179 depends on SPI_MASTER
1180 depends on COMMON_CLK
1181 select SND_SOC_TLV320AIC32X4
1183 config SND_SOC_TLV320AIC3X
1184 tristate "Texas Instruments TLV320AIC3x CODECs"
1187 config SND_SOC_TLV320DAC33
1190 config SND_SOC_TS3A227E
1191 tristate "TI Headset/Mic detect and keypress chip"
1194 config SND_SOC_TSCS42XX
1195 tristate "Tempo Semiconductor TSCS42xx CODEC"
1199 Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
1201 config SND_SOC_TSCS454
1202 tristate "Tempo Semiconductor TSCS454 CODEC"
1206 Add support for Tempo Semiconductor's TSCS454 audio CODEC.
1208 config SND_SOC_TWL4030
1209 select MFD_TWL4030_AUDIO
1212 config SND_SOC_TWL6040
1215 config SND_SOC_UDA1334
1216 tristate "NXP UDA1334 DAC"
1219 The UDA1334 is an NXP audio codec, supports the I2S-bus data format
1220 and has basic features such as de-emphasis (at 44.1 kHz sampling
1223 config SND_SOC_UDA134X
1226 config SND_SOC_UDA1380
1230 config SND_SOC_WCD9335
1231 tristate "WCD9335 Codec"
1233 select REGMAP_SLIMBUS
1236 The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
1237 Qualcomm Technologies, Inc. (QTI) multimedia solutions,
1238 including the MSM8996, MSM8976, and MSM8956 chipsets.
1240 config SND_SOC_WL1273
1243 config SND_SOC_WM0010
1246 config SND_SOC_WM1250_EV1
1249 config SND_SOC_WM2000
1252 config SND_SOC_WM2200
1255 config SND_SOC_WM5100
1258 config SND_SOC_WM5102
1261 config SND_SOC_WM5110
1264 config SND_SOC_WM8350
1267 config SND_SOC_WM8400
1270 config SND_SOC_WM8510
1271 tristate "Wolfson Microelectronics WM8510 CODEC"
1272 depends on SND_SOC_I2C_AND_SPI
1274 config SND_SOC_WM8523
1275 tristate "Wolfson Microelectronics WM8523 DAC"
1278 config SND_SOC_WM8524
1279 tristate "Wolfson Microelectronics WM8524 DAC"
1282 config SND_SOC_WM8580
1283 tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
1286 config SND_SOC_WM8711
1287 tristate "Wolfson Microelectronics WM8711 CODEC"
1288 depends on SND_SOC_I2C_AND_SPI
1290 config SND_SOC_WM8727
1293 config SND_SOC_WM8728
1294 tristate "Wolfson Microelectronics WM8728 DAC"
1295 depends on SND_SOC_I2C_AND_SPI
1297 config SND_SOC_WM8731
1298 tristate "Wolfson Microelectronics WM8731 CODEC"
1299 depends on SND_SOC_I2C_AND_SPI
1301 config SND_SOC_WM8737
1302 tristate "Wolfson Microelectronics WM8737 ADC"
1303 depends on SND_SOC_I2C_AND_SPI
1305 config SND_SOC_WM8741
1306 tristate "Wolfson Microelectronics WM8737 DAC"
1307 depends on SND_SOC_I2C_AND_SPI
1309 config SND_SOC_WM8750
1310 tristate "Wolfson Microelectronics WM8750 CODEC"
1311 depends on SND_SOC_I2C_AND_SPI
1313 config SND_SOC_WM8753
1314 tristate "Wolfson Microelectronics WM8753 CODEC"
1315 depends on SND_SOC_I2C_AND_SPI
1317 config SND_SOC_WM8770
1318 tristate "Wolfson Microelectronics WM8770 CODEC"
1319 depends on SPI_MASTER
1321 config SND_SOC_WM8776
1322 tristate "Wolfson Microelectronics WM8776 CODEC"
1323 depends on SND_SOC_I2C_AND_SPI
1325 config SND_SOC_WM8782
1326 tristate "Wolfson Microelectronics WM8782 ADC"
1328 config SND_SOC_WM8804
1331 config SND_SOC_WM8804_I2C
1332 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1334 select SND_SOC_WM8804
1337 config SND_SOC_WM8804_SPI
1338 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1339 depends on SPI_MASTER
1340 select SND_SOC_WM8804
1343 config SND_SOC_WM8900
1346 config SND_SOC_WM8903
1347 tristate "Wolfson Microelectronics WM8903 CODEC"
1350 config SND_SOC_WM8904
1351 tristate "Wolfson Microelectronics WM8904 CODEC"
1354 config SND_SOC_WM8940
1357 config SND_SOC_WM8955
1360 config SND_SOC_WM8960
1361 tristate "Wolfson Microelectronics WM8960 CODEC"
1364 config SND_SOC_WM8961
1367 config SND_SOC_WM8962
1368 tristate "Wolfson Microelectronics WM8962 CODEC"
1369 depends on I2C && INPUT
1371 config SND_SOC_WM8971
1374 config SND_SOC_WM8974
1375 tristate "Wolfson Microelectronics WM8974 codec"
1378 config SND_SOC_WM8978
1379 tristate "Wolfson Microelectronics WM8978 codec"
1382 config SND_SOC_WM8983
1385 config SND_SOC_WM8985
1386 tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1387 depends on SND_SOC_I2C_AND_SPI
1389 config SND_SOC_WM8988
1392 config SND_SOC_WM8990
1395 config SND_SOC_WM8991
1398 config SND_SOC_WM8993
1401 config SND_SOC_WM8994
1404 config SND_SOC_WM8995
1407 config SND_SOC_WM8996
1410 config SND_SOC_WM8997
1413 config SND_SOC_WM8998
1416 config SND_SOC_WM9081
1420 config SND_SOC_WM9090
1423 config SND_SOC_WM9705
1426 select AC97_BUS_COMPAT if AC97_BUS_NEW
1428 config SND_SOC_WM9712
1431 select AC97_BUS_COMPAT if AC97_BUS_NEW
1433 config SND_SOC_WM9713
1436 select AC97_BUS_COMPAT if AC97_BUS_NEW
1438 config SND_SOC_ZX_AUD96P22
1439 tristate "ZTE ZX AUD96P22 CODEC"
1444 config SND_SOC_LM4857
1447 config SND_SOC_MAX9759
1448 tristate "Maxim MAX9759 speaker Amplifier"
1451 config SND_SOC_MAX9768
1454 config SND_SOC_MAX9877
1457 config SND_SOC_MC13783
1460 config SND_SOC_ML26124
1463 config SND_SOC_MT6351
1464 tristate "MediaTek MT6351 Codec"
1466 config SND_SOC_MT6358
1467 tristate "MediaTek MT6358 Codec"
1469 Enable support for the platform which uses MT6358 as
1470 external codec device.
1472 config SND_SOC_NAU8540
1473 tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1476 config SND_SOC_NAU8810
1477 tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1480 config SND_SOC_NAU8822
1481 tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
1484 config SND_SOC_NAU8824
1485 tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1488 config SND_SOC_NAU8825
1491 config SND_SOC_TPA6130A2
1492 tristate "Texas Instruments TPA6130A2 headphone amplifier"