1 # SPDX-License-Identifier: GPL-2.0-only
2 # Helper to resolve issues with configs that have SPI enabled but I2C
3 # modular, meaning we can't build the codec driver in with I2C support.
4 # We use an ordered list of conditional defaults to pick the appropriate
5 # setting - SPI can't be modular so that case doesn't need to be covered.
6 config SND_SOC_I2C_AND_SPI
10 default y if SPI_MASTER=y
14 config SND_SOC_ALL_CODECS
15 tristate "Build all ASoC CODEC drivers"
16 depends on COMPILE_TEST
17 imply SND_SOC_88PM860X
19 imply SND_SOC_AB8500_CODEC
20 imply SND_SOC_AC97_CODEC
22 imply SND_SOC_AD193X_SPI
23 imply SND_SOC_AD193X_I2C
26 imply SND_SOC_ADAU1372_I2C
27 imply SND_SOC_ADAU1372_SPI
28 imply SND_SOC_ADAU1373
29 imply SND_SOC_ADAU1761_I2C
30 imply SND_SOC_ADAU1761_SPI
31 imply SND_SOC_ADAU1781_I2C
32 imply SND_SOC_ADAU1781_SPI
35 imply SND_SOC_ADAU1977_SPI
36 imply SND_SOC_ADAU1977_I2C
37 imply SND_SOC_ADAU1701
38 imply SND_SOC_ADAU7002
39 imply SND_SOC_ADAU7118_I2C
40 imply SND_SOC_ADAU7118_HW
57 imply SND_SOC_CQ0093VC
58 imply SND_SOC_CROS_EC_CODEC
65 imply SND_SOC_CS42L51_I2C
72 imply SND_SOC_CS4271_I2C
73 imply SND_SOC_CS4271_SPI
74 imply SND_SOC_CS42XX8_I2C
95 imply SND_SOC_ES8328_SPI
96 imply SND_SOC_ES8328_I2C
100 imply SND_SOC_HDAC_HDMI
101 imply SND_SOC_HDAC_HDA
102 imply SND_SOC_ICS43432
103 imply SND_SOC_INNO_RK3036
104 imply SND_SOC_ISABELLE
105 imply SND_SOC_JZ4740_CODEC
106 imply SND_SOC_JZ4725B_CODEC
107 imply SND_SOC_JZ4760_CODEC
108 imply SND_SOC_JZ4770_CODEC
110 imply SND_SOC_LM49453
111 imply SND_SOC_LOCHNAGAR_SC
112 imply SND_SOC_MAX98088
113 imply SND_SOC_MAX98090
114 imply SND_SOC_MAX98095
115 imply SND_SOC_MAX98357A
116 imply SND_SOC_MAX98371
117 imply SND_SOC_MAX98504
118 imply SND_SOC_MAX9867
119 imply SND_SOC_MAX98925
120 imply SND_SOC_MAX98926
121 imply SND_SOC_MAX98927
122 imply SND_SOC_MAX98373_I2C
123 imply SND_SOC_MAX98373_SDW
124 imply SND_SOC_MAX98390
125 imply SND_SOC_MAX9850
126 imply SND_SOC_MAX9860
127 imply SND_SOC_MAX9759
128 imply SND_SOC_MAX9768
129 imply SND_SOC_MAX9877
130 imply SND_SOC_MC13783
131 imply SND_SOC_ML26124
136 imply SND_SOC_NAU8315
137 imply SND_SOC_NAU8540
138 imply SND_SOC_NAU8810
139 imply SND_SOC_NAU8822
140 imply SND_SOC_NAU8824
141 imply SND_SOC_NAU8825
142 imply SND_SOC_HDMI_CODEC
143 imply SND_SOC_PCM1681
144 imply SND_SOC_PCM1789_I2C
145 imply SND_SOC_PCM179X_I2C
146 imply SND_SOC_PCM179X_SPI
147 imply SND_SOC_PCM186X_I2C
148 imply SND_SOC_PCM186X_SPI
149 imply SND_SOC_PCM3008
150 imply SND_SOC_PCM3060_I2C
151 imply SND_SOC_PCM3060_SPI
152 imply SND_SOC_PCM3168A_I2C
153 imply SND_SOC_PCM3168A_SPI
154 imply SND_SOC_PCM5102A
155 imply SND_SOC_PCM512x_I2C
156 imply SND_SOC_PCM512x_SPI
163 imply SND_SOC_RT1015P
180 imply SND_SOC_RT5682_I2C
181 imply SND_SOC_RT5682_SDW
182 imply SND_SOC_RT700_SDW
183 imply SND_SOC_RT711_SDW
184 imply SND_SOC_RT711_SDCA_SDW
185 imply SND_SOC_RT715_SDW
186 imply SND_SOC_RT715_SDCA_SDW
187 imply SND_SOC_RT1308_SDW
188 imply SND_SOC_RT1316_SDW
189 imply SND_SOC_SGTL5000
191 imply SND_SOC_SIMPLE_AMPLIFIER
192 imply SND_SOC_SIMPLE_MUX
194 imply SND_SOC_SSM2305
195 imply SND_SOC_SSM2518
196 imply SND_SOC_SSM2602_SPI
197 imply SND_SOC_SSM2602_I2C
198 imply SND_SOC_SSM4567
202 imply SND_SOC_STAC9766
203 imply SND_SOC_STI_SAS
204 imply SND_SOC_TAS2552
205 imply SND_SOC_TAS2562
206 imply SND_SOC_TAS2764
207 imply SND_SOC_TAS2770
208 imply SND_SOC_TAS5086
209 imply SND_SOC_TAS571X
210 imply SND_SOC_TAS5720
211 imply SND_SOC_TAS6424
212 imply SND_SOC_TDA7419
213 imply SND_SOC_TFA9879
214 imply SND_SOC_TLV320ADCX140
215 imply SND_SOC_TLV320AIC23_I2C
216 imply SND_SOC_TLV320AIC23_SPI
217 imply SND_SOC_TLV320AIC26
218 imply SND_SOC_TLV320AIC31XX
219 imply SND_SOC_TLV320AIC32X4_I2C
220 imply SND_SOC_TLV320AIC32X4_SPI
221 imply SND_SOC_TLV320AIC3X_I2C
222 imply SND_SOC_TLV320AIC3X_SPI
223 imply SND_SOC_TPA6130A2
224 imply SND_SOC_TLV320DAC33
225 imply SND_SOC_TSCS42XX
226 imply SND_SOC_TSCS454
227 imply SND_SOC_TS3A227E
228 imply SND_SOC_TWL4030
229 imply SND_SOC_TWL6040
230 imply SND_SOC_UDA1334
231 imply SND_SOC_UDA134X
232 imply SND_SOC_UDA1380
233 imply SND_SOC_WCD9335
234 imply SND_SOC_WCD934X
235 imply SND_SOC_LPASS_RX_MACRO
236 imply SND_SOC_LPASS_TX_MACRO
239 imply SND_SOC_WM1250_EV1
262 imply SND_SOC_WM8804_I2C
263 imply SND_SOC_WM8804_SPI
291 imply SND_SOC_WSA881X
292 imply SND_SOC_ZL38060
294 Normally ASoC codec drivers are only built if a machine driver which
295 uses them is also built since they are only usable with a machine
296 driver. Selecting this option will allow these drivers to be built
297 without an explicit machine driver for test and development purposes.
299 Support for the bus types used to access the codecs to be built must
300 be selected separately.
302 If unsure select "N".
304 config SND_SOC_88PM860X
306 depends on MFD_88PM860X
308 config SND_SOC_ARIZONA
310 default y if SND_SOC_CS47L24=y
311 default y if SND_SOC_WM5102=y
312 default y if SND_SOC_WM5110=y
313 default y if SND_SOC_WM8997=y
314 default y if SND_SOC_WM8998=y
315 default m if SND_SOC_CS47L24=m
316 default m if SND_SOC_WM5102=m
317 default m if SND_SOC_WM5110=m
318 default m if SND_SOC_WM8997=m
319 default m if SND_SOC_WM8998=m
321 config SND_SOC_WM_HUBS
323 default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
324 default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
326 config SND_SOC_WM_ADSP
328 select SND_SOC_COMPRESS
329 default y if SND_SOC_MADERA=y
330 default y if SND_SOC_CS47L24=y
331 default y if SND_SOC_WM5102=y
332 default y if SND_SOC_WM5110=y
333 default y if SND_SOC_WM2200=y
334 default m if SND_SOC_MADERA=m
335 default m if SND_SOC_CS47L24=m
336 default m if SND_SOC_WM5102=m
337 default m if SND_SOC_WM5110=m
338 default m if SND_SOC_WM2200=m
340 config SND_SOC_AB8500_CODEC
342 depends on ABX500_CORE
344 config SND_SOC_AC97_CODEC
345 tristate "Build generic ASoC AC97 CODEC driver"
346 select SND_AC97_CODEC
347 select SND_SOC_AC97_BUS
349 config SND_SOC_AD1836
351 depends on SPI_MASTER
353 config SND_SOC_AD193X
356 config SND_SOC_AD193X_SPI
358 depends on SPI_MASTER
359 select SND_SOC_AD193X
361 config SND_SOC_AD193X_I2C
364 select SND_SOC_AD193X
366 config SND_SOC_AD1980
368 depends on SND_SOC_AC97_BUS
371 config SND_SOC_AD73311
374 config SND_SOC_ADAU_UTILS
377 config SND_SOC_ADAU1372
379 select SND_SOC_ADAU_UTILS
381 config SND_SOC_ADAU1372_I2C
382 tristate "Analog Devices ADAU1372 CODEC (I2C)"
384 select SND_SOC_ADAU1372
387 config SND_SOC_ADAU1372_SPI
388 tristate "Analog Devices ADAU1372 CODEC (SPI)"
390 select SND_SOC_ADAU1372
393 config SND_SOC_ADAU1373
396 select SND_SOC_ADAU_UTILS
398 config SND_SOC_ADAU1701
399 tristate "Analog Devices ADAU1701 CODEC"
401 select SND_SOC_SIGMADSP_I2C
403 config SND_SOC_ADAU17X1
405 select SND_SOC_SIGMADSP_REGMAP
406 select SND_SOC_ADAU_UTILS
408 config SND_SOC_ADAU1761
410 select SND_SOC_ADAU17X1
412 config SND_SOC_ADAU1761_I2C
413 tristate "Analog Devices AU1761 CODEC - I2C"
415 select SND_SOC_ADAU1761
418 config SND_SOC_ADAU1761_SPI
419 tristate "Analog Devices AU1761 CODEC - SPI"
421 select SND_SOC_ADAU1761
424 config SND_SOC_ADAU1781
425 select SND_SOC_ADAU17X1
428 config SND_SOC_ADAU1781_I2C
431 select SND_SOC_ADAU1781
434 config SND_SOC_ADAU1781_SPI
436 depends on SPI_MASTER
437 select SND_SOC_ADAU1781
440 config SND_SOC_ADAU1977
443 config SND_SOC_ADAU1977_SPI
445 depends on SPI_MASTER
446 select SND_SOC_ADAU1977
449 config SND_SOC_ADAU1977_I2C
452 select SND_SOC_ADAU1977
455 config SND_SOC_ADAU7002
456 tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
458 config SND_SOC_ADAU7118
461 config SND_SOC_ADAU7118_HW
462 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode"
463 select SND_SOC_ADAU7118
465 Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
466 Converter. In this mode, the device works in standalone mode which
467 means that there is no bus to communicate with it. Stereo mode is not
468 supported in this mode.
470 To compile this driver as a module, choose M here: the module
471 will be called snd-soc-adau7118-hw.
473 config SND_SOC_ADAU7118_I2C
474 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C"
476 select SND_SOC_ADAU7118
479 Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
480 Converter over I2C. This gives full support over the device.
482 To compile this driver as a module, choose M here: the module
483 will be called snd-soc-adau7118-i2c.
485 config SND_SOC_ADAV80X
488 config SND_SOC_ADAV801
490 depends on SPI_MASTER
491 select SND_SOC_ADAV80X
493 config SND_SOC_ADAV803
496 select SND_SOC_ADAV80X
498 config SND_SOC_ADS117X
501 config SND_SOC_AK4104
502 tristate "AKM AK4104 CODEC"
503 depends on SPI_MASTER
505 config SND_SOC_AK4118
506 tristate "AKM AK4118 CODEC"
510 config SND_SOC_AK4458
511 tristate "AKM AK4458 CODEC"
515 config SND_SOC_AK4535
519 config SND_SOC_AK4554
520 tristate "AKM AK4554 CODEC"
522 config SND_SOC_AK4613
523 tristate "AKM AK4613 CODEC"
526 config SND_SOC_AK4641
530 config SND_SOC_AK4642
531 tristate "AKM AK4642 CODEC"
534 config SND_SOC_AK4671
538 config SND_SOC_AK5386
539 tristate "AKM AK5638 CODEC"
541 config SND_SOC_AK5558
542 tristate "AKM AK5558 CODEC"
546 config SND_SOC_ALC5623
547 tristate "Realtek ALC5623 CODEC"
550 config SND_SOC_ALC5632
554 config SND_SOC_BD28623
555 tristate "ROHM BD28623 CODEC"
557 Enable support for ROHM BD28623MUV Class D speaker amplifier.
558 This codec does not have any control buses such as I2C, it
559 detect format of I2S automatically.
561 config SND_SOC_BT_SCO
562 tristate "Dummy BT SCO codec driver"
565 tristate "Motorola CPCAP codec"
568 config SND_SOC_CQ0093VC
571 config SND_SOC_CROS_EC_CODEC
572 tristate "codec driver for ChromeOS EC"
575 select CRYPTO_LIB_SHA256
577 If you say yes here you will get support for the
578 ChromeOS Embedded Controller's Audio Codec.
580 config SND_SOC_CS35L32
581 tristate "Cirrus Logic CS35L32 CODEC"
584 config SND_SOC_CS35L33
585 tristate "Cirrus Logic CS35L33 CODEC"
588 config SND_SOC_CS35L34
589 tristate "Cirrus Logic CS35L34 CODEC"
592 config SND_SOC_CS35L35
593 tristate "Cirrus Logic CS35L35 CODEC"
596 config SND_SOC_CS35L36
597 tristate "Cirrus Logic CS35L36 CODEC"
600 config SND_SOC_CS42L42
601 tristate "Cirrus Logic CS42L42 CODEC"
604 config SND_SOC_CS42L51
607 config SND_SOC_CS42L51_I2C
608 tristate "Cirrus Logic CS42L51 CODEC (I2C)"
610 select SND_SOC_CS42L51
612 config SND_SOC_CS42L52
613 tristate "Cirrus Logic CS42L52 CODEC"
614 depends on I2C && INPUT
616 config SND_SOC_CS42L56
617 tristate "Cirrus Logic CS42L56 CODEC"
618 depends on I2C && INPUT
620 config SND_SOC_CS42L73
621 tristate "Cirrus Logic CS42L73 CODEC"
624 config SND_SOC_CS4234
625 tristate "Cirrus Logic CS4234 CODEC"
629 config SND_SOC_CS4265
630 tristate "Cirrus Logic CS4265 CODEC"
634 # Cirrus Logic CS4270 Codec
635 config SND_SOC_CS4270
636 tristate "Cirrus Logic CS4270 CODEC"
639 # Cirrus Logic CS4270 Codec VD = 3.3V Errata
640 # Select if you are affected by the errata where the part will not function
641 # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
642 # not select any sample rates that require MCLK to be divided by 1.5.
643 config SND_SOC_CS4270_VD33_ERRATA
645 depends on SND_SOC_CS4270
647 config SND_SOC_CS4271
650 config SND_SOC_CS4271_I2C
651 tristate "Cirrus Logic CS4271 CODEC (I2C)"
653 select SND_SOC_CS4271
656 config SND_SOC_CS4271_SPI
657 tristate "Cirrus Logic CS4271 CODEC (SPI)"
658 depends on SPI_MASTER
659 select SND_SOC_CS4271
662 config SND_SOC_CS42XX8
665 config SND_SOC_CS42XX8_I2C
666 tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
668 select SND_SOC_CS42XX8
671 # Cirrus Logic CS43130 HiFi DAC
672 config SND_SOC_CS43130
673 tristate "Cirrus Logic CS43130 CODEC"
676 config SND_SOC_CS4341
677 tristate "Cirrus Logic CS4341 CODEC"
678 depends on SND_SOC_I2C_AND_SPI
679 select REGMAP_I2C if I2C
680 select REGMAP_SPI if SPI_MASTER
682 # Cirrus Logic CS4349 HiFi DAC
683 config SND_SOC_CS4349
684 tristate "Cirrus Logic CS4349 CODEC"
687 config SND_SOC_CS47L15
690 config SND_SOC_CS47L24
692 depends on MFD_CS47L24
694 config SND_SOC_CS47L35
697 config SND_SOC_CS47L85
700 config SND_SOC_CS47L90
703 config SND_SOC_CS47L92
706 # Cirrus Logic Quad-Channel ADC
707 config SND_SOC_CS53L30
708 tristate "Cirrus Logic CS53L30 CODEC"
711 config SND_SOC_CX20442
715 config SND_SOC_CX2072X
716 tristate "Conexant CX2072X CODEC"
719 Enable support for Conexant CX20721 and CX20723 codec chips.
721 config SND_SOC_JZ4740_CODEC
722 depends on MACH_INGENIC || COMPILE_TEST
725 tristate "Ingenic JZ4740 internal CODEC"
727 Enable support for the internal CODEC found in the JZ4740 SoC
730 This driver can also be built as a module. If so, the module
731 will be called snd-soc-jz4740-codec.
733 config SND_SOC_JZ4725B_CODEC
734 depends on MACH_INGENIC || COMPILE_TEST
737 tristate "Ingenic JZ4725B internal CODEC"
739 Enable support for the internal CODEC found in the JZ4725B SoC
742 This driver can also be built as a module. If so, the module
743 will be called snd-soc-jz4725b-codec.
745 config SND_SOC_JZ4760_CODEC
746 depends on MACH_INGENIC || COMPILE_TEST
749 tristate "Ingenic JZ4760 internal CODEC"
751 Enable support for the internal CODEC found in the JZ4760 SoC
754 This driver can also be built as a module. If so, the module
755 will be called snd-soc-jz4760-codec.
757 config SND_SOC_JZ4770_CODEC
758 depends on MACH_INGENIC || COMPILE_TEST
761 tristate "Ingenic JZ4770 internal CODEC"
763 Enable support for the internal CODEC found in the JZ4770 SoC
766 This driver can also be built as a module. If so, the module
767 will be called snd-soc-jz4770-codec.
772 config SND_SOC_DA7210
774 depends on SND_SOC_I2C_AND_SPI
776 config SND_SOC_DA7213
777 tristate "Dialog DA7213 CODEC"
780 config SND_SOC_DA7218
784 config SND_SOC_DA7219
788 config SND_SOC_DA732X
792 config SND_SOC_DA9055
797 tristate "Generic Digital Microphone CODEC"
800 Enable support for the Generic Digital Microphone CODEC.
801 Select this if your sound card has DMICs.
803 config SND_SOC_HDMI_CODEC
806 select SND_PCM_IEC958
809 config SND_SOC_ES7134
810 tristate "Everest Semi ES7134 CODEC"
812 config SND_SOC_ES7241
813 tristate "Everest Semi ES7241 CODEC"
815 config SND_SOC_ES8316
816 tristate "Everest Semi ES8316 CODEC"
819 config SND_SOC_ES8328
822 config SND_SOC_ES8328_I2C
823 tristate "Everest Semi ES8328 CODEC (I2C)"
825 select SND_SOC_ES8328
827 config SND_SOC_ES8328_SPI
828 tristate "Everest Semi ES8328 CODEC (SPI)"
829 depends on SPI_MASTER
830 select SND_SOC_ES8328
832 config SND_SOC_GTM601
833 tristate 'GTM601 UMTS modem audio codec'
835 config SND_SOC_HDAC_HDMI
837 select SND_HDA_EXT_CORE
841 config SND_SOC_HDAC_HDA
845 config SND_SOC_ICS43432
848 config SND_SOC_INNO_RK3036
849 tristate "Inno codec driver for RK3036 SoC"
852 config SND_SOC_ISABELLE
856 config SND_SOC_LM49453
860 config SND_SOC_LOCHNAGAR_SC
861 tristate "Lochnagar Sound Card"
862 depends on MFD_LOCHNAGAR
864 This driver support the sound card functionality of the Cirrus
865 Logic Lochnagar audio development board.
867 config SND_SOC_MADERA
869 default y if SND_SOC_CS47L15=y
870 default y if SND_SOC_CS47L35=y
871 default y if SND_SOC_CS47L85=y
872 default y if SND_SOC_CS47L90=y
873 default y if SND_SOC_CS47L92=y
874 default m if SND_SOC_CS47L15=m
875 default m if SND_SOC_CS47L35=m
876 default m if SND_SOC_CS47L85=m
877 default m if SND_SOC_CS47L90=m
878 default m if SND_SOC_CS47L92=m
880 config SND_SOC_MAX98088
881 tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
884 config SND_SOC_MAX98090
888 config SND_SOC_MAX98095
892 config SND_SOC_MAX98357A
893 tristate "Maxim MAX98357A CODEC"
896 config SND_SOC_MAX98371
900 config SND_SOC_MAX98504
901 tristate "Maxim MAX98504 speaker amplifier"
904 config SND_SOC_MAX9867
905 tristate "Maxim MAX9867 CODEC"
908 config SND_SOC_MAX98925
912 config SND_SOC_MAX98926
916 config SND_SOC_MAX98927
917 tristate "Maxim Integrated MAX98927 Speaker Amplifier"
920 config SND_SOC_MAX98373
923 config SND_SOC_MAX98373_I2C
924 tristate "Maxim Integrated MAX98373 Speaker Amplifier"
926 select SND_SOC_MAX98373
928 config SND_SOC_MAX98373_SDW
929 tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW"
931 select SND_SOC_MAX98373
932 select REGMAP_SOUNDWIRE
934 Enable support for Maxim Integrated MAX98373 Soundwire
935 amplifier. MAX98373 supports either the MIPI SoundWire
936 compatible interface for audio and control data, or
937 the PCM interface for audio data and a standard I2C
938 interface for control data. Select this if MAX98373 is
939 connected via soundwire.
941 config SND_SOC_MAX98390
942 tristate "Maxim Integrated MAX98390 Speaker Amplifier"
945 config SND_SOC_MAX9850
949 config SND_SOC_MAX9860
950 tristate "Maxim MAX9860 Mono Audio Voice Codec"
954 config SND_SOC_MSM8916_WCD_ANALOG
955 tristate "Qualcomm MSM8916 WCD Analog Codec"
956 depends on SPMI || COMPILE_TEST
958 config SND_SOC_MSM8916_WCD_DIGITAL
959 tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
962 config SND_SOC_PCM1681
963 tristate "Texas Instruments PCM1681 CODEC"
966 config SND_SOC_PCM1789
969 config SND_SOC_PCM1789_I2C
970 tristate "Texas Instruments PCM1789 CODEC (I2C)"
972 select SND_SOC_PCM1789
974 Enable support for Texas Instruments PCM1789 CODEC.
975 Select this if your PCM1789 is connected via an I2C bus.
977 config SND_SOC_PCM179X
980 config SND_SOC_PCM179X_I2C
981 tristate "Texas Instruments PCM179X CODEC (I2C)"
983 select SND_SOC_PCM179X
985 Enable support for Texas Instruments PCM179x CODEC.
986 Select this if your PCM179x is connected via an I2C bus.
988 config SND_SOC_PCM179X_SPI
989 tristate "Texas Instruments PCM179X CODEC (SPI)"
990 depends on SPI_MASTER
991 select SND_SOC_PCM179X
993 Enable support for Texas Instruments PCM179x CODEC.
994 Select this if your PCM179x is connected via an SPI bus.
996 config SND_SOC_PCM186X
999 config SND_SOC_PCM186X_I2C
1000 tristate "Texas Instruments PCM186x CODECs - I2C"
1002 select SND_SOC_PCM186X
1005 config SND_SOC_PCM186X_SPI
1006 tristate "Texas Instruments PCM186x CODECs - SPI"
1007 depends on SPI_MASTER
1008 select SND_SOC_PCM186X
1011 config SND_SOC_PCM3008
1014 config SND_SOC_PCM3060
1017 config SND_SOC_PCM3060_I2C
1018 tristate "Texas Instruments PCM3060 CODEC - I2C"
1020 select SND_SOC_PCM3060
1023 config SND_SOC_PCM3060_SPI
1024 tristate "Texas Instruments PCM3060 CODEC - SPI"
1025 depends on SPI_MASTER
1026 select SND_SOC_PCM3060
1029 config SND_SOC_PCM3168A
1032 config SND_SOC_PCM3168A_I2C
1033 tristate "Texas Instruments PCM3168A CODEC - I2C"
1035 select SND_SOC_PCM3168A
1038 config SND_SOC_PCM3168A_SPI
1039 tristate "Texas Instruments PCM3168A CODEC - SPI"
1040 depends on SPI_MASTER
1041 select SND_SOC_PCM3168A
1044 config SND_SOC_PCM5102A
1045 tristate "Texas Instruments PCM5102A CODEC"
1047 config SND_SOC_PCM512x
1050 config SND_SOC_PCM512x_I2C
1051 tristate "Texas Instruments PCM512x CODECs - I2C"
1053 select SND_SOC_PCM512x
1056 config SND_SOC_PCM512x_SPI
1057 tristate "Texas Instruments PCM512x CODECs - SPI"
1058 depends on SPI_MASTER
1059 select SND_SOC_PCM512x
1062 config SND_SOC_RK3328
1063 tristate "Rockchip RK3328 audio CODEC"
1066 config SND_SOC_RL6231
1068 default y if SND_SOC_RT5514=y
1069 default y if SND_SOC_RT5616=y
1070 default y if SND_SOC_RT5640=y
1071 default y if SND_SOC_RT5645=y
1072 default y if SND_SOC_RT5651=y
1073 default y if SND_SOC_RT5659=y
1074 default y if SND_SOC_RT5660=y
1075 default y if SND_SOC_RT5663=y
1076 default y if SND_SOC_RT5665=y
1077 default y if SND_SOC_RT5668=y
1078 default y if SND_SOC_RT5670=y
1079 default y if SND_SOC_RT5677=y
1080 default y if SND_SOC_RT5682=y
1081 default y if SND_SOC_RT1011=y
1082 default y if SND_SOC_RT1015=y
1083 default y if SND_SOC_RT1015P=y
1084 default y if SND_SOC_RT1019=y
1085 default y if SND_SOC_RT1305=y
1086 default y if SND_SOC_RT1308=y
1087 default m if SND_SOC_RT5514=m
1088 default m if SND_SOC_RT5616=m
1089 default m if SND_SOC_RT5640=m
1090 default m if SND_SOC_RT5645=m
1091 default m if SND_SOC_RT5651=m
1092 default m if SND_SOC_RT5659=m
1093 default m if SND_SOC_RT5660=m
1094 default m if SND_SOC_RT5663=m
1095 default m if SND_SOC_RT5665=m
1096 default m if SND_SOC_RT5668=m
1097 default m if SND_SOC_RT5670=m
1098 default m if SND_SOC_RT5677=m
1099 default m if SND_SOC_RT5682=m
1100 default m if SND_SOC_RT1011=m
1101 default m if SND_SOC_RT1015=m
1102 default m if SND_SOC_RT1015P=m
1103 default m if SND_SOC_RT1019=m
1104 default m if SND_SOC_RT1305=m
1105 default m if SND_SOC_RT1308=m
1107 config SND_SOC_RL6347A
1109 default y if SND_SOC_RT274=y
1110 default y if SND_SOC_RT286=y
1111 default y if SND_SOC_RT298=y
1112 default m if SND_SOC_RT274=m
1113 default m if SND_SOC_RT286=m
1114 default m if SND_SOC_RT298=m
1116 config SND_SOC_RT274
1120 config SND_SOC_RT286
1124 config SND_SOC_RT298
1128 config SND_SOC_RT1011
1132 config SND_SOC_RT1015
1136 config SND_SOC_RT1015P
1140 config SND_SOC_RT1019
1144 config SND_SOC_RT1305
1148 config SND_SOC_RT1308
1152 config SND_SOC_RT1308_SDW
1153 tristate "Realtek RT1308 Codec - SDW"
1154 depends on I2C && SOUNDWIRE
1155 select REGMAP_SOUNDWIRE
1157 config SND_SOC_RT1316_SDW
1158 tristate "Realtek RT1316 Codec - SDW"
1159 depends on SOUNDWIRE
1160 select REGMAP_SOUNDWIRE
1162 config SND_SOC_RT5514
1166 config SND_SOC_RT5514_SPI
1168 depends on SPI_MASTER
1170 config SND_SOC_RT5514_SPI_BUILTIN
1171 bool # force RT5514_SPI to be built-in to avoid link errors
1172 default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
1174 config SND_SOC_RT5616
1175 tristate "Realtek RT5616 CODEC"
1178 config SND_SOC_RT5631
1179 tristate "Realtek ALC5631/RT5631 CODEC"
1182 config SND_SOC_RT5640
1186 config SND_SOC_RT5645
1190 config SND_SOC_RT5651
1194 config SND_SOC_RT5659
1195 tristate "Realtek RT5658/RT5659 Codec"
1198 config SND_SOC_RT5660
1202 config SND_SOC_RT5663
1206 config SND_SOC_RT5665
1210 config SND_SOC_RT5668
1214 config SND_SOC_RT5670
1218 config SND_SOC_RT5677
1224 config SND_SOC_RT5677_SPI
1226 default SND_SOC_RT5677 && SPI
1228 config SND_SOC_RT5682
1231 config SND_SOC_RT5682_I2C
1234 select SND_SOC_RT5682
1236 config SND_SOC_RT5682_SDW
1237 tristate "Realtek RT5682 Codec - SDW"
1238 depends on SOUNDWIRE
1239 select SND_SOC_RT5682
1240 select REGMAP_SOUNDWIRE
1242 config SND_SOC_RT700
1245 config SND_SOC_RT700_SDW
1246 tristate "Realtek RT700 Codec - SDW"
1247 depends on SOUNDWIRE
1248 select SND_SOC_RT700
1249 select REGMAP_SOUNDWIRE
1251 config SND_SOC_RT711
1254 config SND_SOC_RT711_SDW
1255 tristate "Realtek RT711 Codec - SDW"
1256 depends on SOUNDWIRE
1257 select SND_SOC_RT711
1258 select REGMAP_SOUNDWIRE
1260 config SND_SOC_RT711_SDCA_SDW
1261 tristate "Realtek RT711 SDCA Codec - SDW"
1262 depends on SOUNDWIRE
1263 select REGMAP_SOUNDWIRE
1264 select REGMAP_SOUNDWIRE_MBQ
1266 config SND_SOC_RT715
1269 config SND_SOC_RT715_SDW
1270 tristate "Realtek RT715 Codec - SDW"
1271 depends on SOUNDWIRE
1272 select SND_SOC_RT715
1273 select REGMAP_SOUNDWIRE
1275 config SND_SOC_RT715_SDCA_SDW
1276 tristate "Realtek RT715 SDCA Codec - SDW"
1277 depends on SOUNDWIRE
1278 select REGMAP_SOUNDWIRE
1279 select REGMAP_SOUNDWIRE_MBQ
1281 #Freescale sgtl5000 codec
1282 config SND_SOC_SGTL5000
1283 tristate "Freescale SGTL5000 CODEC"
1286 config SND_SOC_SI476X
1289 config SND_SOC_SIGMADSP
1293 config SND_SOC_SIGMADSP_I2C
1295 select SND_SOC_SIGMADSP
1297 config SND_SOC_SIGMADSP_REGMAP
1299 select SND_SOC_SIGMADSP
1301 config SND_SOC_SIMPLE_AMPLIFIER
1302 tristate "Simple Audio Amplifier"
1305 config SND_SOC_SIMPLE_MUX
1306 tristate "Simple Audio Mux"
1309 config SND_SOC_SPDIF
1310 tristate "S/PDIF CODEC"
1312 config SND_SOC_SSM2305
1313 tristate "Analog Devices SSM2305 Class-D Amplifier"
1315 Enable support for Analog Devices SSM2305 filterless
1316 high-efficiency mono Class-D audio power amplifiers.
1318 config SND_SOC_SSM2518
1322 config SND_SOC_SSM2602
1325 config SND_SOC_SSM2602_SPI
1326 tristate "Analog Devices SSM2602 CODEC - SPI"
1327 depends on SPI_MASTER
1328 select SND_SOC_SSM2602
1331 config SND_SOC_SSM2602_I2C
1332 tristate "Analog Devices SSM2602 CODEC - I2C"
1334 select SND_SOC_SSM2602
1337 config SND_SOC_SSM4567
1338 tristate "Analog Devices ssm4567 amplifier driver support"
1341 config SND_SOC_STA32X
1342 tristate "STA326, STA328 and STA329 speaker amplifier"
1346 config SND_SOC_STA350
1347 tristate "STA350 speaker amplifier"
1350 config SND_SOC_STA529
1354 config SND_SOC_STAC9766
1356 depends on SND_SOC_AC97_BUS
1358 config SND_SOC_STI_SAS
1359 tristate "codec Audio support for STI SAS codec"
1361 config SND_SOC_TAS2552
1362 tristate "Texas Instruments TAS2552 Mono Audio amplifier"
1365 config SND_SOC_TAS2562
1366 tristate "Texas Instruments TAS2562 Mono Audio amplifier"
1369 config SND_SOC_TAS2764
1370 tristate "Texas Instruments TAS2764 Mono Audio amplifier"
1373 config SND_SOC_TAS2770
1374 tristate "Texas Instruments TAS2770 speaker amplifier"
1377 config SND_SOC_TAS5086
1378 tristate "Texas Instruments TAS5086 speaker amplifier"
1381 config SND_SOC_TAS571X
1382 tristate "Texas Instruments TAS571x power amplifiers"
1385 Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
1386 TAS5719 and TAS5721 power amplifiers
1388 config SND_SOC_TAS5720
1389 tristate "Texas Instruments TAS5720 Mono Audio amplifier"
1392 Enable support for Texas Instruments TAS5720L/M high-efficiency mono
1393 Class-D audio power amplifiers.
1395 config SND_SOC_TAS6424
1396 tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
1399 Enable support for Texas Instruments TAS6424 high-efficiency
1400 digital input quad-channel Class-D audio power amplifiers.
1402 config SND_SOC_TDA7419
1403 tristate "ST TDA7419 audio processor"
1407 config SND_SOC_TFA9879
1408 tristate "NXP Semiconductors TFA9879 amplifier"
1411 config SND_SOC_TLV320AIC23
1414 config SND_SOC_TLV320AIC23_I2C
1415 tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
1417 select SND_SOC_TLV320AIC23
1419 config SND_SOC_TLV320AIC23_SPI
1420 tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
1421 depends on SPI_MASTER
1422 select SND_SOC_TLV320AIC23
1424 config SND_SOC_TLV320AIC26
1428 config SND_SOC_TLV320AIC31XX
1429 tristate "Texas Instruments TLV320AIC31xx CODECs"
1433 config SND_SOC_TLV320AIC32X4
1435 depends on COMMON_CLK
1437 config SND_SOC_TLV320AIC32X4_I2C
1438 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
1440 depends on COMMON_CLK
1441 select SND_SOC_TLV320AIC32X4
1443 config SND_SOC_TLV320AIC32X4_SPI
1444 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
1445 depends on SPI_MASTER
1446 depends on COMMON_CLK
1447 select SND_SOC_TLV320AIC32X4
1449 config SND_SOC_TLV320AIC3X
1452 config SND_SOC_TLV320AIC3X_I2C
1453 tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C"
1455 select SND_SOC_TLV320AIC3X
1458 config SND_SOC_TLV320AIC3X_SPI
1459 tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI"
1460 depends on SPI_MASTER
1461 select SND_SOC_TLV320AIC3X
1464 config SND_SOC_TLV320DAC33
1468 config SND_SOC_TLV320ADCX140
1469 tristate "Texas Instruments TLV320ADCX140 CODEC family"
1473 Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and
1474 tlv320adc6140 quad channel ADCs.
1476 config SND_SOC_TS3A227E
1477 tristate "TI Headset/Mic detect and keypress chip"
1480 config SND_SOC_TSCS42XX
1481 tristate "Tempo Semiconductor TSCS42xx CODEC"
1485 Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
1487 config SND_SOC_TSCS454
1488 tristate "Tempo Semiconductor TSCS454 CODEC"
1492 Add support for Tempo Semiconductor's TSCS454 audio CODEC.
1494 config SND_SOC_TWL4030
1496 depends on TWL4030_CORE
1497 select MFD_TWL4030_AUDIO
1499 config SND_SOC_TWL6040
1501 depends on TWL6040_CORE
1503 config SND_SOC_UDA1334
1504 tristate "NXP UDA1334 DAC"
1507 The UDA1334 is an NXP audio codec, supports the I2S-bus data format
1508 and has basic features such as de-emphasis (at 44.1 kHz sampling
1511 config SND_SOC_UDA134X
1514 config SND_SOC_UDA1380
1518 config SND_SOC_WCD9335
1519 tristate "WCD9335 Codec"
1521 select REGMAP_SLIMBUS
1524 The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
1525 Qualcomm Technologies, Inc. (QTI) multimedia solutions,
1526 including the MSM8996, MSM8976, and MSM8956 chipsets.
1528 config SND_SOC_WCD934X
1529 tristate "WCD9340/WCD9341 Codec"
1530 depends on COMMON_CLK
1531 depends on MFD_WCD934X
1533 The WCD9340/9341 is a audio codec IC Integrated in
1534 Qualcomm SoCs like SDM845.
1536 config SND_SOC_WL1273
1539 config SND_SOC_WM0010
1541 depends on SPI_MASTER
1543 config SND_SOC_WM1250_EV1
1547 config SND_SOC_WM2000
1551 config SND_SOC_WM2200
1555 config SND_SOC_WM5100
1559 config SND_SOC_WM5102
1561 depends on MFD_WM5102
1563 config SND_SOC_WM5110
1565 depends on MFD_WM5110
1567 config SND_SOC_WM8350
1569 depends on MFD_WM8350
1571 config SND_SOC_WM8400
1573 # FIXME nothing selects SND_SOC_WM8400??
1574 depends on MFD_WM8400
1576 config SND_SOC_WM8510
1577 tristate "Wolfson Microelectronics WM8510 CODEC"
1578 depends on SND_SOC_I2C_AND_SPI
1580 config SND_SOC_WM8523
1581 tristate "Wolfson Microelectronics WM8523 DAC"
1584 config SND_SOC_WM8524
1585 tristate "Wolfson Microelectronics WM8524 DAC"
1588 config SND_SOC_WM8580
1589 tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
1592 config SND_SOC_WM8711
1593 tristate "Wolfson Microelectronics WM8711 CODEC"
1594 depends on SND_SOC_I2C_AND_SPI
1596 config SND_SOC_WM8727
1599 config SND_SOC_WM8728
1600 tristate "Wolfson Microelectronics WM8728 DAC"
1601 depends on SND_SOC_I2C_AND_SPI
1603 config SND_SOC_WM8731
1604 tristate "Wolfson Microelectronics WM8731 CODEC"
1605 depends on SND_SOC_I2C_AND_SPI
1607 config SND_SOC_WM8737
1608 tristate "Wolfson Microelectronics WM8737 ADC"
1609 depends on SND_SOC_I2C_AND_SPI
1611 config SND_SOC_WM8741
1612 tristate "Wolfson Microelectronics WM8741 DAC"
1613 depends on SND_SOC_I2C_AND_SPI
1615 config SND_SOC_WM8750
1616 tristate "Wolfson Microelectronics WM8750 CODEC"
1617 depends on SND_SOC_I2C_AND_SPI
1619 config SND_SOC_WM8753
1620 tristate "Wolfson Microelectronics WM8753 CODEC"
1621 depends on SND_SOC_I2C_AND_SPI
1623 config SND_SOC_WM8770
1624 tristate "Wolfson Microelectronics WM8770 CODEC"
1625 depends on SPI_MASTER
1627 config SND_SOC_WM8776
1628 tristate "Wolfson Microelectronics WM8776 CODEC"
1629 depends on SND_SOC_I2C_AND_SPI
1631 config SND_SOC_WM8782
1632 tristate "Wolfson Microelectronics WM8782 ADC"
1634 config SND_SOC_WM8804
1637 config SND_SOC_WM8804_I2C
1638 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1640 select SND_SOC_WM8804
1643 config SND_SOC_WM8804_SPI
1644 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1645 depends on SPI_MASTER
1646 select SND_SOC_WM8804
1649 config SND_SOC_WM8900
1651 depends on SND_SOC_I2C_AND_SPI
1653 config SND_SOC_WM8903
1654 tristate "Wolfson Microelectronics WM8903 CODEC"
1657 config SND_SOC_WM8904
1658 tristate "Wolfson Microelectronics WM8904 CODEC"
1661 config SND_SOC_WM8940
1665 config SND_SOC_WM8955
1669 config SND_SOC_WM8960
1670 tristate "Wolfson Microelectronics WM8960 CODEC"
1673 config SND_SOC_WM8961
1677 config SND_SOC_WM8962
1678 tristate "Wolfson Microelectronics WM8962 CODEC"
1679 depends on I2C && INPUT
1681 config SND_SOC_WM8971
1685 config SND_SOC_WM8974
1686 tristate "Wolfson Microelectronics WM8974 codec"
1689 config SND_SOC_WM8978
1690 tristate "Wolfson Microelectronics WM8978 codec"
1693 config SND_SOC_WM8983
1695 depends on SND_SOC_I2C_AND_SPI
1697 config SND_SOC_WM8985
1698 tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1699 depends on SND_SOC_I2C_AND_SPI
1701 config SND_SOC_WM8988
1703 depends on SND_SOC_I2C_AND_SPI
1705 config SND_SOC_WM8990
1709 config SND_SOC_WM8991
1713 config SND_SOC_WM8993
1717 config SND_SOC_WM8994
1720 config SND_SOC_WM8995
1722 depends on SND_SOC_I2C_AND_SPI
1724 config SND_SOC_WM8996
1728 config SND_SOC_WM8997
1730 depends on MFD_WM8997
1732 config SND_SOC_WM8998
1734 depends on MFD_WM8998
1736 config SND_SOC_WM9081
1740 config SND_SOC_WM9090
1744 config SND_SOC_WM9705
1746 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1748 select AC97_BUS_COMPAT if AC97_BUS_NEW
1750 config SND_SOC_WM9712
1752 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1754 select AC97_BUS_COMPAT if AC97_BUS_NEW
1756 config SND_SOC_WM9713
1758 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1760 select AC97_BUS_COMPAT if AC97_BUS_NEW
1762 config SND_SOC_WSA881X
1763 tristate "WSA881X Codec"
1764 depends on SOUNDWIRE
1765 select REGMAP_SOUNDWIRE
1768 This enables support for Qualcomm WSA8810/WSA8815 Class-D
1769 Smart Speaker Amplifier.
1771 config SND_SOC_ZL38060
1772 tristate "Microsemi ZL38060 Connected Home Audio Processor"
1773 depends on SPI_MASTER
1777 Support for ZL38060 Connected Home Audio Processor from Microsemi,
1778 which consists of a Digital Signal Processor (DSP), several Digital
1779 Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs.
1781 config SND_SOC_ZX_AUD96P22
1782 tristate "ZTE ZX AUD96P22 CODEC"
1787 config SND_SOC_LM4857
1791 config SND_SOC_MAX9759
1792 tristate "Maxim MAX9759 speaker Amplifier"
1795 config SND_SOC_MAX9768
1799 config SND_SOC_MAX9877
1803 config SND_SOC_MC13783
1805 depends on MFD_MC13XXX
1807 config SND_SOC_ML26124
1811 config SND_SOC_MT6351
1812 tristate "MediaTek MT6351 Codec"
1814 config SND_SOC_MT6358
1815 tristate "MediaTek MT6358 Codec"
1817 Enable support for the platform which uses MT6358 as
1818 external codec device.
1820 config SND_SOC_MT6359
1821 tristate "MediaTek MT6359 Codec"
1822 depends on MTK_PMIC_WRAP
1824 Enable support for the platform which uses MT6359 as
1825 external codec device.
1827 config SND_SOC_MT6359_ACCDET
1828 tristate "MediaTek MT6359 ACCDET driver"
1829 depends on MTK_PMIC_WRAP
1831 ACCDET means Accessory Detection technology, MediaTek develop it
1832 for ASoC codec soc-jack detection mechanism.
1833 Select N if you don't have jack on board.
1835 config SND_SOC_MT6660
1836 tristate "Mediatek MT6660 Speaker Amplifier"
1839 MediaTek MT6660 is a smart power amplifier which contain
1840 speaker protection, multi-band DRC, equalizer functions.
1841 Select N if you don't have MT6660 on board.
1842 Select M to build this as module.
1844 config SND_SOC_NAU8315
1845 tristate "Nuvoton Technology Corporation NAU8315 CODEC"
1848 config SND_SOC_NAU8540
1849 tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1852 config SND_SOC_NAU8810
1853 tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1856 config SND_SOC_NAU8822
1857 tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
1860 config SND_SOC_NAU8824
1861 tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1864 config SND_SOC_NAU8825
1868 config SND_SOC_TPA6130A2
1869 tristate "Texas Instruments TPA6130A2 headphone amplifier"
1872 config SND_SOC_LPASS_WSA_MACRO
1873 depends on COMMON_CLK
1874 tristate "Qualcomm WSA Macro in LPASS(Low Power Audio SubSystem)"
1876 config SND_SOC_LPASS_VA_MACRO
1877 depends on COMMON_CLK
1878 tristate "Qualcomm VA Macro in LPASS(Low Power Audio SubSystem)"
1880 config SND_SOC_LPASS_RX_MACRO
1881 depends on COMMON_CLK
1882 tristate "Qualcomm RX Macro in LPASS(Low Power Audio SubSystem)"
1884 config SND_SOC_LPASS_TX_MACRO
1885 depends on COMMON_CLK
1886 tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)"