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