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_TFA989X
215 imply SND_SOC_TLV320ADCX140
216 imply SND_SOC_TLV320AIC23_I2C
217 imply SND_SOC_TLV320AIC23_SPI
218 imply SND_SOC_TLV320AIC26
219 imply SND_SOC_TLV320AIC31XX
220 imply SND_SOC_TLV320AIC32X4_I2C
221 imply SND_SOC_TLV320AIC32X4_SPI
222 imply SND_SOC_TLV320AIC3X_I2C
223 imply SND_SOC_TLV320AIC3X_SPI
224 imply SND_SOC_TPA6130A2
225 imply SND_SOC_TLV320DAC33
226 imply SND_SOC_TSCS42XX
227 imply SND_SOC_TSCS454
228 imply SND_SOC_TS3A227E
229 imply SND_SOC_TWL4030
230 imply SND_SOC_TWL6040
231 imply SND_SOC_UDA1334
232 imply SND_SOC_UDA134X
233 imply SND_SOC_UDA1380
234 imply SND_SOC_WCD9335
235 imply SND_SOC_WCD934X
236 imply SND_SOC_LPASS_RX_MACRO
237 imply SND_SOC_LPASS_TX_MACRO
240 imply SND_SOC_WM1250_EV1
263 imply SND_SOC_WM8804_I2C
264 imply SND_SOC_WM8804_SPI
292 imply SND_SOC_WSA881X
293 imply SND_SOC_ZL38060
295 Normally ASoC codec drivers are only built if a machine driver which
296 uses them is also built since they are only usable with a machine
297 driver. Selecting this option will allow these drivers to be built
298 without an explicit machine driver for test and development purposes.
300 Support for the bus types used to access the codecs to be built must
301 be selected separately.
303 If unsure select "N".
305 config SND_SOC_88PM860X
307 depends on MFD_88PM860X
309 config SND_SOC_ARIZONA
311 default y if SND_SOC_CS47L24=y
312 default y if SND_SOC_WM5102=y
313 default y if SND_SOC_WM5110=y
314 default y if SND_SOC_WM8997=y
315 default y if SND_SOC_WM8998=y
316 default m if SND_SOC_CS47L24=m
317 default m if SND_SOC_WM5102=m
318 default m if SND_SOC_WM5110=m
319 default m if SND_SOC_WM8997=m
320 default m if SND_SOC_WM8998=m
322 config SND_SOC_WM_HUBS
324 default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
325 default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
327 config SND_SOC_WM_ADSP
329 select SND_SOC_COMPRESS
330 default y if SND_SOC_MADERA=y
331 default y if SND_SOC_CS47L24=y
332 default y if SND_SOC_WM5102=y
333 default y if SND_SOC_WM5110=y
334 default y if SND_SOC_WM2200=y
335 default m if SND_SOC_MADERA=m
336 default m if SND_SOC_CS47L24=m
337 default m if SND_SOC_WM5102=m
338 default m if SND_SOC_WM5110=m
339 default m if SND_SOC_WM2200=m
341 config SND_SOC_AB8500_CODEC
343 depends on ABX500_CORE
345 config SND_SOC_AC97_CODEC
346 tristate "Build generic ASoC AC97 CODEC driver"
347 select SND_AC97_CODEC
348 select SND_SOC_AC97_BUS
350 config SND_SOC_AD1836
352 depends on SPI_MASTER
354 config SND_SOC_AD193X
357 config SND_SOC_AD193X_SPI
359 depends on SPI_MASTER
360 select SND_SOC_AD193X
362 config SND_SOC_AD193X_I2C
365 select SND_SOC_AD193X
367 config SND_SOC_AD1980
369 depends on SND_SOC_AC97_BUS
372 config SND_SOC_AD73311
375 config SND_SOC_ADAU_UTILS
378 config SND_SOC_ADAU1372
380 select SND_SOC_ADAU_UTILS
382 config SND_SOC_ADAU1372_I2C
383 tristate "Analog Devices ADAU1372 CODEC (I2C)"
385 select SND_SOC_ADAU1372
388 config SND_SOC_ADAU1372_SPI
389 tristate "Analog Devices ADAU1372 CODEC (SPI)"
391 select SND_SOC_ADAU1372
394 config SND_SOC_ADAU1373
397 select SND_SOC_ADAU_UTILS
399 config SND_SOC_ADAU1701
400 tristate "Analog Devices ADAU1701 CODEC"
402 select SND_SOC_SIGMADSP_I2C
404 config SND_SOC_ADAU17X1
406 select SND_SOC_SIGMADSP_REGMAP
407 select SND_SOC_ADAU_UTILS
409 config SND_SOC_ADAU1761
411 select SND_SOC_ADAU17X1
413 config SND_SOC_ADAU1761_I2C
414 tristate "Analog Devices AU1761 CODEC - I2C"
416 select SND_SOC_ADAU1761
419 config SND_SOC_ADAU1761_SPI
420 tristate "Analog Devices AU1761 CODEC - SPI"
422 select SND_SOC_ADAU1761
425 config SND_SOC_ADAU1781
426 select SND_SOC_ADAU17X1
429 config SND_SOC_ADAU1781_I2C
432 select SND_SOC_ADAU1781
435 config SND_SOC_ADAU1781_SPI
437 depends on SPI_MASTER
438 select SND_SOC_ADAU1781
441 config SND_SOC_ADAU1977
444 config SND_SOC_ADAU1977_SPI
446 depends on SPI_MASTER
447 select SND_SOC_ADAU1977
450 config SND_SOC_ADAU1977_I2C
453 select SND_SOC_ADAU1977
456 config SND_SOC_ADAU7002
457 tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
459 config SND_SOC_ADAU7118
462 config SND_SOC_ADAU7118_HW
463 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode"
464 select SND_SOC_ADAU7118
466 Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
467 Converter. In this mode, the device works in standalone mode which
468 means that there is no bus to communicate with it. Stereo mode is not
469 supported in this mode.
471 To compile this driver as a module, choose M here: the module
472 will be called snd-soc-adau7118-hw.
474 config SND_SOC_ADAU7118_I2C
475 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C"
477 select SND_SOC_ADAU7118
480 Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
481 Converter over I2C. This gives full support over the device.
483 To compile this driver as a module, choose M here: the module
484 will be called snd-soc-adau7118-i2c.
486 config SND_SOC_ADAV80X
489 config SND_SOC_ADAV801
491 depends on SPI_MASTER
492 select SND_SOC_ADAV80X
494 config SND_SOC_ADAV803
497 select SND_SOC_ADAV80X
499 config SND_SOC_ADS117X
502 config SND_SOC_AK4104
503 tristate "AKM AK4104 CODEC"
504 depends on SPI_MASTER
506 config SND_SOC_AK4118
507 tristate "AKM AK4118 CODEC"
511 config SND_SOC_AK4458
512 tristate "AKM AK4458 CODEC"
516 config SND_SOC_AK4535
520 config SND_SOC_AK4554
521 tristate "AKM AK4554 CODEC"
523 config SND_SOC_AK4613
524 tristate "AKM AK4613 CODEC"
527 config SND_SOC_AK4641
531 config SND_SOC_AK4642
532 tristate "AKM AK4642 CODEC"
535 config SND_SOC_AK4671
539 config SND_SOC_AK5386
540 tristate "AKM AK5638 CODEC"
542 config SND_SOC_AK5558
543 tristate "AKM AK5558 CODEC"
547 config SND_SOC_ALC5623
548 tristate "Realtek ALC5623 CODEC"
551 config SND_SOC_ALC5632
555 config SND_SOC_BD28623
556 tristate "ROHM BD28623 CODEC"
558 Enable support for ROHM BD28623MUV Class D speaker amplifier.
559 This codec does not have any control buses such as I2C, it
560 detect format of I2S automatically.
562 config SND_SOC_BT_SCO
563 tristate "Dummy BT SCO codec driver"
566 tristate "Motorola CPCAP codec"
569 config SND_SOC_CQ0093VC
572 config SND_SOC_CROS_EC_CODEC
573 tristate "codec driver for ChromeOS EC"
576 select CRYPTO_LIB_SHA256
578 If you say yes here you will get support for the
579 ChromeOS Embedded Controller's Audio Codec.
581 config SND_SOC_CS35L32
582 tristate "Cirrus Logic CS35L32 CODEC"
585 config SND_SOC_CS35L33
586 tristate "Cirrus Logic CS35L33 CODEC"
589 config SND_SOC_CS35L34
590 tristate "Cirrus Logic CS35L34 CODEC"
593 config SND_SOC_CS35L35
594 tristate "Cirrus Logic CS35L35 CODEC"
597 config SND_SOC_CS35L36
598 tristate "Cirrus Logic CS35L36 CODEC"
601 config SND_SOC_CS42L42
602 tristate "Cirrus Logic CS42L42 CODEC"
605 config SND_SOC_CS42L51
608 config SND_SOC_CS42L51_I2C
609 tristate "Cirrus Logic CS42L51 CODEC (I2C)"
611 select SND_SOC_CS42L51
613 config SND_SOC_CS42L52
614 tristate "Cirrus Logic CS42L52 CODEC"
615 depends on I2C && INPUT
617 config SND_SOC_CS42L56
618 tristate "Cirrus Logic CS42L56 CODEC"
619 depends on I2C && INPUT
621 config SND_SOC_CS42L73
622 tristate "Cirrus Logic CS42L73 CODEC"
625 config SND_SOC_CS4234
626 tristate "Cirrus Logic CS4234 CODEC"
630 config SND_SOC_CS4265
631 tristate "Cirrus Logic CS4265 CODEC"
635 # Cirrus Logic CS4270 Codec
636 config SND_SOC_CS4270
637 tristate "Cirrus Logic CS4270 CODEC"
640 # Cirrus Logic CS4270 Codec VD = 3.3V Errata
641 # Select if you are affected by the errata where the part will not function
642 # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
643 # not select any sample rates that require MCLK to be divided by 1.5.
644 config SND_SOC_CS4270_VD33_ERRATA
646 depends on SND_SOC_CS4270
648 config SND_SOC_CS4271
651 config SND_SOC_CS4271_I2C
652 tristate "Cirrus Logic CS4271 CODEC (I2C)"
654 select SND_SOC_CS4271
657 config SND_SOC_CS4271_SPI
658 tristate "Cirrus Logic CS4271 CODEC (SPI)"
659 depends on SPI_MASTER
660 select SND_SOC_CS4271
663 config SND_SOC_CS42XX8
666 config SND_SOC_CS42XX8_I2C
667 tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
669 select SND_SOC_CS42XX8
672 # Cirrus Logic CS43130 HiFi DAC
673 config SND_SOC_CS43130
674 tristate "Cirrus Logic CS43130 CODEC"
677 config SND_SOC_CS4341
678 tristate "Cirrus Logic CS4341 CODEC"
679 depends on SND_SOC_I2C_AND_SPI
680 select REGMAP_I2C if I2C
681 select REGMAP_SPI if SPI_MASTER
683 # Cirrus Logic CS4349 HiFi DAC
684 config SND_SOC_CS4349
685 tristate "Cirrus Logic CS4349 CODEC"
688 config SND_SOC_CS47L15
691 config SND_SOC_CS47L24
693 depends on MFD_CS47L24
695 config SND_SOC_CS47L35
698 config SND_SOC_CS47L85
701 config SND_SOC_CS47L90
704 config SND_SOC_CS47L92
707 # Cirrus Logic Quad-Channel ADC
708 config SND_SOC_CS53L30
709 tristate "Cirrus Logic CS53L30 CODEC"
712 config SND_SOC_CX20442
716 config SND_SOC_CX2072X
717 tristate "Conexant CX2072X CODEC"
720 Enable support for Conexant CX20721 and CX20723 codec chips.
722 config SND_SOC_JZ4740_CODEC
723 depends on MACH_INGENIC || COMPILE_TEST
726 tristate "Ingenic JZ4740 internal CODEC"
728 Enable support for the internal CODEC found in the JZ4740 SoC
731 This driver can also be built as a module. If so, the module
732 will be called snd-soc-jz4740-codec.
734 config SND_SOC_JZ4725B_CODEC
735 depends on MACH_INGENIC || COMPILE_TEST
738 tristate "Ingenic JZ4725B internal CODEC"
740 Enable support for the internal CODEC found in the JZ4725B SoC
743 This driver can also be built as a module. If so, the module
744 will be called snd-soc-jz4725b-codec.
746 config SND_SOC_JZ4760_CODEC
747 depends on MACH_INGENIC || COMPILE_TEST
750 tristate "Ingenic JZ4760 internal CODEC"
752 Enable support for the internal CODEC found in the JZ4760 SoC
755 This driver can also be built as a module. If so, the module
756 will be called snd-soc-jz4760-codec.
758 config SND_SOC_JZ4770_CODEC
759 depends on MACH_INGENIC || COMPILE_TEST
762 tristate "Ingenic JZ4770 internal CODEC"
764 Enable support for the internal CODEC found in the JZ4770 SoC
767 This driver can also be built as a module. If so, the module
768 will be called snd-soc-jz4770-codec.
773 config SND_SOC_DA7210
775 depends on SND_SOC_I2C_AND_SPI
777 config SND_SOC_DA7213
778 tristate "Dialog DA7213 CODEC"
781 config SND_SOC_DA7218
785 config SND_SOC_DA7219
789 config SND_SOC_DA732X
793 config SND_SOC_DA9055
798 tristate "Generic Digital Microphone CODEC"
801 Enable support for the Generic Digital Microphone CODEC.
802 Select this if your sound card has DMICs.
804 config SND_SOC_HDMI_CODEC
807 select SND_PCM_IEC958
810 config SND_SOC_ES7134
811 tristate "Everest Semi ES7134 CODEC"
813 config SND_SOC_ES7241
814 tristate "Everest Semi ES7241 CODEC"
816 config SND_SOC_ES8316
817 tristate "Everest Semi ES8316 CODEC"
820 config SND_SOC_ES8328
823 config SND_SOC_ES8328_I2C
824 tristate "Everest Semi ES8328 CODEC (I2C)"
826 select SND_SOC_ES8328
828 config SND_SOC_ES8328_SPI
829 tristate "Everest Semi ES8328 CODEC (SPI)"
830 depends on SPI_MASTER
831 select SND_SOC_ES8328
833 config SND_SOC_GTM601
834 tristate 'GTM601 UMTS modem audio codec'
836 config SND_SOC_HDAC_HDMI
838 select SND_HDA_EXT_CORE
842 config SND_SOC_HDAC_HDA
846 config SND_SOC_ICS43432
849 config SND_SOC_INNO_RK3036
850 tristate "Inno codec driver for RK3036 SoC"
853 config SND_SOC_ISABELLE
857 config SND_SOC_LM49453
861 config SND_SOC_LOCHNAGAR_SC
862 tristate "Lochnagar Sound Card"
863 depends on MFD_LOCHNAGAR
865 This driver support the sound card functionality of the Cirrus
866 Logic Lochnagar audio development board.
868 config SND_SOC_MADERA
870 default y if SND_SOC_CS47L15=y
871 default y if SND_SOC_CS47L35=y
872 default y if SND_SOC_CS47L85=y
873 default y if SND_SOC_CS47L90=y
874 default y if SND_SOC_CS47L92=y
875 default m if SND_SOC_CS47L15=m
876 default m if SND_SOC_CS47L35=m
877 default m if SND_SOC_CS47L85=m
878 default m if SND_SOC_CS47L90=m
879 default m if SND_SOC_CS47L92=m
881 config SND_SOC_MAX98088
882 tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
885 config SND_SOC_MAX98090
889 config SND_SOC_MAX98095
893 config SND_SOC_MAX98357A
894 tristate "Maxim MAX98357A CODEC"
897 config SND_SOC_MAX98371
901 config SND_SOC_MAX98504
902 tristate "Maxim MAX98504 speaker amplifier"
905 config SND_SOC_MAX9867
906 tristate "Maxim MAX9867 CODEC"
909 config SND_SOC_MAX98925
913 config SND_SOC_MAX98926
917 config SND_SOC_MAX98927
918 tristate "Maxim Integrated MAX98927 Speaker Amplifier"
921 config SND_SOC_MAX98373
924 config SND_SOC_MAX98373_I2C
925 tristate "Maxim Integrated MAX98373 Speaker Amplifier"
927 select SND_SOC_MAX98373
929 config SND_SOC_MAX98373_SDW
930 tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW"
932 select SND_SOC_MAX98373
933 select REGMAP_SOUNDWIRE
935 Enable support for Maxim Integrated MAX98373 Soundwire
936 amplifier. MAX98373 supports either the MIPI SoundWire
937 compatible interface for audio and control data, or
938 the PCM interface for audio data and a standard I2C
939 interface for control data. Select this if MAX98373 is
940 connected via soundwire.
942 config SND_SOC_MAX98390
943 tristate "Maxim Integrated MAX98390 Speaker Amplifier"
946 config SND_SOC_MAX9850
950 config SND_SOC_MAX9860
951 tristate "Maxim MAX9860 Mono Audio Voice Codec"
955 config SND_SOC_MSM8916_WCD_ANALOG
956 tristate "Qualcomm MSM8916 WCD Analog Codec"
957 depends on SPMI || COMPILE_TEST
959 config SND_SOC_MSM8916_WCD_DIGITAL
960 tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
963 config SND_SOC_PCM1681
964 tristate "Texas Instruments PCM1681 CODEC"
967 config SND_SOC_PCM1789
970 config SND_SOC_PCM1789_I2C
971 tristate "Texas Instruments PCM1789 CODEC (I2C)"
973 select SND_SOC_PCM1789
975 Enable support for Texas Instruments PCM1789 CODEC.
976 Select this if your PCM1789 is connected via an I2C bus.
978 config SND_SOC_PCM179X
981 config SND_SOC_PCM179X_I2C
982 tristate "Texas Instruments PCM179X CODEC (I2C)"
984 select SND_SOC_PCM179X
986 Enable support for Texas Instruments PCM179x CODEC.
987 Select this if your PCM179x is connected via an I2C bus.
989 config SND_SOC_PCM179X_SPI
990 tristate "Texas Instruments PCM179X CODEC (SPI)"
991 depends on SPI_MASTER
992 select SND_SOC_PCM179X
994 Enable support for Texas Instruments PCM179x CODEC.
995 Select this if your PCM179x is connected via an SPI bus.
997 config SND_SOC_PCM186X
1000 config SND_SOC_PCM186X_I2C
1001 tristate "Texas Instruments PCM186x CODECs - I2C"
1003 select SND_SOC_PCM186X
1006 config SND_SOC_PCM186X_SPI
1007 tristate "Texas Instruments PCM186x CODECs - SPI"
1008 depends on SPI_MASTER
1009 select SND_SOC_PCM186X
1012 config SND_SOC_PCM3008
1015 config SND_SOC_PCM3060
1018 config SND_SOC_PCM3060_I2C
1019 tristate "Texas Instruments PCM3060 CODEC - I2C"
1021 select SND_SOC_PCM3060
1024 config SND_SOC_PCM3060_SPI
1025 tristate "Texas Instruments PCM3060 CODEC - SPI"
1026 depends on SPI_MASTER
1027 select SND_SOC_PCM3060
1030 config SND_SOC_PCM3168A
1033 config SND_SOC_PCM3168A_I2C
1034 tristate "Texas Instruments PCM3168A CODEC - I2C"
1036 select SND_SOC_PCM3168A
1039 config SND_SOC_PCM3168A_SPI
1040 tristate "Texas Instruments PCM3168A CODEC - SPI"
1041 depends on SPI_MASTER
1042 select SND_SOC_PCM3168A
1045 config SND_SOC_PCM5102A
1046 tristate "Texas Instruments PCM5102A CODEC"
1048 config SND_SOC_PCM512x
1051 config SND_SOC_PCM512x_I2C
1052 tristate "Texas Instruments PCM512x CODECs - I2C"
1054 select SND_SOC_PCM512x
1057 config SND_SOC_PCM512x_SPI
1058 tristate "Texas Instruments PCM512x CODECs - SPI"
1059 depends on SPI_MASTER
1060 select SND_SOC_PCM512x
1063 config SND_SOC_RK3328
1064 tristate "Rockchip RK3328 audio CODEC"
1067 config SND_SOC_RL6231
1069 default y if SND_SOC_RT5514=y
1070 default y if SND_SOC_RT5616=y
1071 default y if SND_SOC_RT5640=y
1072 default y if SND_SOC_RT5645=y
1073 default y if SND_SOC_RT5651=y
1074 default y if SND_SOC_RT5659=y
1075 default y if SND_SOC_RT5660=y
1076 default y if SND_SOC_RT5663=y
1077 default y if SND_SOC_RT5665=y
1078 default y if SND_SOC_RT5668=y
1079 default y if SND_SOC_RT5670=y
1080 default y if SND_SOC_RT5677=y
1081 default y if SND_SOC_RT5682=y
1082 default y if SND_SOC_RT1011=y
1083 default y if SND_SOC_RT1015=y
1084 default y if SND_SOC_RT1015P=y
1085 default y if SND_SOC_RT1019=y
1086 default y if SND_SOC_RT1305=y
1087 default y if SND_SOC_RT1308=y
1088 default m if SND_SOC_RT5514=m
1089 default m if SND_SOC_RT5616=m
1090 default m if SND_SOC_RT5640=m
1091 default m if SND_SOC_RT5645=m
1092 default m if SND_SOC_RT5651=m
1093 default m if SND_SOC_RT5659=m
1094 default m if SND_SOC_RT5660=m
1095 default m if SND_SOC_RT5663=m
1096 default m if SND_SOC_RT5665=m
1097 default m if SND_SOC_RT5668=m
1098 default m if SND_SOC_RT5670=m
1099 default m if SND_SOC_RT5677=m
1100 default m if SND_SOC_RT5682=m
1101 default m if SND_SOC_RT1011=m
1102 default m if SND_SOC_RT1015=m
1103 default m if SND_SOC_RT1015P=m
1104 default m if SND_SOC_RT1019=m
1105 default m if SND_SOC_RT1305=m
1106 default m if SND_SOC_RT1308=m
1108 config SND_SOC_RL6347A
1110 default y if SND_SOC_RT274=y
1111 default y if SND_SOC_RT286=y
1112 default y if SND_SOC_RT298=y
1113 default m if SND_SOC_RT274=m
1114 default m if SND_SOC_RT286=m
1115 default m if SND_SOC_RT298=m
1117 config SND_SOC_RT274
1121 config SND_SOC_RT286
1125 config SND_SOC_RT298
1129 config SND_SOC_RT1011
1133 config SND_SOC_RT1015
1137 config SND_SOC_RT1015P
1141 config SND_SOC_RT1019
1145 config SND_SOC_RT1305
1149 config SND_SOC_RT1308
1153 config SND_SOC_RT1308_SDW
1154 tristate "Realtek RT1308 Codec - SDW"
1155 depends on I2C && SOUNDWIRE
1156 select REGMAP_SOUNDWIRE
1158 config SND_SOC_RT1316_SDW
1159 tristate "Realtek RT1316 Codec - SDW"
1160 depends on SOUNDWIRE
1161 select REGMAP_SOUNDWIRE
1163 config SND_SOC_RT5514
1167 config SND_SOC_RT5514_SPI
1169 depends on SPI_MASTER
1171 config SND_SOC_RT5514_SPI_BUILTIN
1172 bool # force RT5514_SPI to be built-in to avoid link errors
1173 default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
1175 config SND_SOC_RT5616
1176 tristate "Realtek RT5616 CODEC"
1179 config SND_SOC_RT5631
1180 tristate "Realtek ALC5631/RT5631 CODEC"
1183 config SND_SOC_RT5640
1187 config SND_SOC_RT5645
1191 config SND_SOC_RT5651
1195 config SND_SOC_RT5659
1196 tristate "Realtek RT5658/RT5659 Codec"
1199 config SND_SOC_RT5660
1203 config SND_SOC_RT5663
1207 config SND_SOC_RT5665
1211 config SND_SOC_RT5668
1215 config SND_SOC_RT5670
1219 config SND_SOC_RT5677
1225 config SND_SOC_RT5677_SPI
1227 default SND_SOC_RT5677 && SPI
1229 config SND_SOC_RT5682
1232 config SND_SOC_RT5682_I2C
1235 select SND_SOC_RT5682
1237 config SND_SOC_RT5682_SDW
1238 tristate "Realtek RT5682 Codec - SDW"
1239 depends on SOUNDWIRE
1240 select SND_SOC_RT5682
1241 select REGMAP_SOUNDWIRE
1243 config SND_SOC_RT700
1246 config SND_SOC_RT700_SDW
1247 tristate "Realtek RT700 Codec - SDW"
1248 depends on SOUNDWIRE
1249 select SND_SOC_RT700
1250 select REGMAP_SOUNDWIRE
1252 config SND_SOC_RT711
1255 config SND_SOC_RT711_SDW
1256 tristate "Realtek RT711 Codec - SDW"
1257 depends on SOUNDWIRE
1258 select SND_SOC_RT711
1259 select REGMAP_SOUNDWIRE
1261 config SND_SOC_RT711_SDCA_SDW
1262 tristate "Realtek RT711 SDCA Codec - SDW"
1263 depends on SOUNDWIRE
1264 select REGMAP_SOUNDWIRE
1265 select REGMAP_SOUNDWIRE_MBQ
1267 config SND_SOC_RT715
1270 config SND_SOC_RT715_SDW
1271 tristate "Realtek RT715 Codec - SDW"
1272 depends on SOUNDWIRE
1273 select SND_SOC_RT715
1274 select REGMAP_SOUNDWIRE
1276 config SND_SOC_RT715_SDCA_SDW
1277 tristate "Realtek RT715 SDCA Codec - SDW"
1278 depends on SOUNDWIRE
1279 select REGMAP_SOUNDWIRE
1280 select REGMAP_SOUNDWIRE_MBQ
1282 #Freescale sgtl5000 codec
1283 config SND_SOC_SGTL5000
1284 tristate "Freescale SGTL5000 CODEC"
1287 config SND_SOC_SI476X
1290 config SND_SOC_SIGMADSP
1294 config SND_SOC_SIGMADSP_I2C
1296 select SND_SOC_SIGMADSP
1298 config SND_SOC_SIGMADSP_REGMAP
1300 select SND_SOC_SIGMADSP
1302 config SND_SOC_SIMPLE_AMPLIFIER
1303 tristate "Simple Audio Amplifier"
1306 config SND_SOC_SIMPLE_MUX
1307 tristate "Simple Audio Mux"
1310 config SND_SOC_SPDIF
1311 tristate "S/PDIF CODEC"
1313 config SND_SOC_SSM2305
1314 tristate "Analog Devices SSM2305 Class-D Amplifier"
1316 Enable support for Analog Devices SSM2305 filterless
1317 high-efficiency mono Class-D audio power amplifiers.
1319 config SND_SOC_SSM2518
1323 config SND_SOC_SSM2602
1326 config SND_SOC_SSM2602_SPI
1327 tristate "Analog Devices SSM2602 CODEC - SPI"
1328 depends on SPI_MASTER
1329 select SND_SOC_SSM2602
1332 config SND_SOC_SSM2602_I2C
1333 tristate "Analog Devices SSM2602 CODEC - I2C"
1335 select SND_SOC_SSM2602
1338 config SND_SOC_SSM4567
1339 tristate "Analog Devices ssm4567 amplifier driver support"
1342 config SND_SOC_STA32X
1343 tristate "STA326, STA328 and STA329 speaker amplifier"
1347 config SND_SOC_STA350
1348 tristate "STA350 speaker amplifier"
1351 config SND_SOC_STA529
1355 config SND_SOC_STAC9766
1357 depends on SND_SOC_AC97_BUS
1359 config SND_SOC_STI_SAS
1360 tristate "codec Audio support for STI SAS codec"
1362 config SND_SOC_TAS2552
1363 tristate "Texas Instruments TAS2552 Mono Audio amplifier"
1366 config SND_SOC_TAS2562
1367 tristate "Texas Instruments TAS2562 Mono Audio amplifier"
1370 config SND_SOC_TAS2764
1371 tristate "Texas Instruments TAS2764 Mono Audio amplifier"
1374 config SND_SOC_TAS2770
1375 tristate "Texas Instruments TAS2770 speaker amplifier"
1378 config SND_SOC_TAS5086
1379 tristate "Texas Instruments TAS5086 speaker amplifier"
1382 config SND_SOC_TAS571X
1383 tristate "Texas Instruments TAS571x power amplifiers"
1386 Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
1387 TAS5719 and TAS5721 power amplifiers
1389 config SND_SOC_TAS5720
1390 tristate "Texas Instruments TAS5720 Mono Audio amplifier"
1393 Enable support for Texas Instruments TAS5720L/M high-efficiency mono
1394 Class-D audio power amplifiers.
1396 config SND_SOC_TAS6424
1397 tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
1400 Enable support for Texas Instruments TAS6424 high-efficiency
1401 digital input quad-channel Class-D audio power amplifiers.
1403 config SND_SOC_TDA7419
1404 tristate "ST TDA7419 audio processor"
1408 config SND_SOC_TFA9879
1409 tristate "NXP Semiconductors TFA9879 amplifier"
1412 config SND_SOC_TFA989X
1413 tristate "NXP/Goodix TFA989X (TFA1) amplifiers"
1417 Enable support for NXP (now Goodix) TFA989X (TFA1 family) speaker
1418 amplifiers, e.g. TFA9895.
1419 Note that the driver currently bypasses the built-in "CoolFlux DSP"
1420 and does not support (hardware) volume control.
1422 config SND_SOC_TLV320AIC23
1425 config SND_SOC_TLV320AIC23_I2C
1426 tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
1428 select SND_SOC_TLV320AIC23
1430 config SND_SOC_TLV320AIC23_SPI
1431 tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
1432 depends on SPI_MASTER
1433 select SND_SOC_TLV320AIC23
1435 config SND_SOC_TLV320AIC26
1439 config SND_SOC_TLV320AIC31XX
1440 tristate "Texas Instruments TLV320AIC31xx CODECs"
1444 config SND_SOC_TLV320AIC32X4
1446 depends on COMMON_CLK
1448 config SND_SOC_TLV320AIC32X4_I2C
1449 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
1451 depends on COMMON_CLK
1452 select SND_SOC_TLV320AIC32X4
1454 config SND_SOC_TLV320AIC32X4_SPI
1455 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
1456 depends on SPI_MASTER
1457 depends on COMMON_CLK
1458 select SND_SOC_TLV320AIC32X4
1460 config SND_SOC_TLV320AIC3X
1463 config SND_SOC_TLV320AIC3X_I2C
1464 tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C"
1466 select SND_SOC_TLV320AIC3X
1469 config SND_SOC_TLV320AIC3X_SPI
1470 tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI"
1471 depends on SPI_MASTER
1472 select SND_SOC_TLV320AIC3X
1475 config SND_SOC_TLV320DAC33
1479 config SND_SOC_TLV320ADCX140
1480 tristate "Texas Instruments TLV320ADCX140 CODEC family"
1484 Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and
1485 tlv320adc6140 quad channel ADCs.
1487 config SND_SOC_TS3A227E
1488 tristate "TI Headset/Mic detect and keypress chip"
1491 config SND_SOC_TSCS42XX
1492 tristate "Tempo Semiconductor TSCS42xx CODEC"
1496 Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
1498 config SND_SOC_TSCS454
1499 tristate "Tempo Semiconductor TSCS454 CODEC"
1503 Add support for Tempo Semiconductor's TSCS454 audio CODEC.
1505 config SND_SOC_TWL4030
1507 depends on TWL4030_CORE
1508 select MFD_TWL4030_AUDIO
1510 config SND_SOC_TWL6040
1512 depends on TWL6040_CORE
1514 config SND_SOC_UDA1334
1515 tristate "NXP UDA1334 DAC"
1518 The UDA1334 is an NXP audio codec, supports the I2S-bus data format
1519 and has basic features such as de-emphasis (at 44.1 kHz sampling
1522 config SND_SOC_UDA134X
1525 config SND_SOC_UDA1380
1529 config SND_SOC_WCD9335
1530 tristate "WCD9335 Codec"
1532 select REGMAP_SLIMBUS
1535 The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
1536 Qualcomm Technologies, Inc. (QTI) multimedia solutions,
1537 including the MSM8996, MSM8976, and MSM8956 chipsets.
1539 config SND_SOC_WCD934X
1540 tristate "WCD9340/WCD9341 Codec"
1541 depends on COMMON_CLK
1542 depends on MFD_WCD934X
1544 The WCD9340/9341 is a audio codec IC Integrated in
1545 Qualcomm SoCs like SDM845.
1547 config SND_SOC_WL1273
1550 config SND_SOC_WM0010
1552 depends on SPI_MASTER
1554 config SND_SOC_WM1250_EV1
1558 config SND_SOC_WM2000
1562 config SND_SOC_WM2200
1566 config SND_SOC_WM5100
1570 config SND_SOC_WM5102
1572 depends on MFD_WM5102
1574 config SND_SOC_WM5110
1576 depends on MFD_WM5110
1578 config SND_SOC_WM8350
1580 depends on MFD_WM8350
1582 config SND_SOC_WM8400
1584 # FIXME nothing selects SND_SOC_WM8400??
1585 depends on MFD_WM8400
1587 config SND_SOC_WM8510
1588 tristate "Wolfson Microelectronics WM8510 CODEC"
1589 depends on SND_SOC_I2C_AND_SPI
1591 config SND_SOC_WM8523
1592 tristate "Wolfson Microelectronics WM8523 DAC"
1595 config SND_SOC_WM8524
1596 tristate "Wolfson Microelectronics WM8524 DAC"
1599 config SND_SOC_WM8580
1600 tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
1603 config SND_SOC_WM8711
1604 tristate "Wolfson Microelectronics WM8711 CODEC"
1605 depends on SND_SOC_I2C_AND_SPI
1607 config SND_SOC_WM8727
1610 config SND_SOC_WM8728
1611 tristate "Wolfson Microelectronics WM8728 DAC"
1612 depends on SND_SOC_I2C_AND_SPI
1614 config SND_SOC_WM8731
1615 tristate "Wolfson Microelectronics WM8731 CODEC"
1616 depends on SND_SOC_I2C_AND_SPI
1618 config SND_SOC_WM8737
1619 tristate "Wolfson Microelectronics WM8737 ADC"
1620 depends on SND_SOC_I2C_AND_SPI
1622 config SND_SOC_WM8741
1623 tristate "Wolfson Microelectronics WM8741 DAC"
1624 depends on SND_SOC_I2C_AND_SPI
1626 config SND_SOC_WM8750
1627 tristate "Wolfson Microelectronics WM8750 CODEC"
1628 depends on SND_SOC_I2C_AND_SPI
1630 config SND_SOC_WM8753
1631 tristate "Wolfson Microelectronics WM8753 CODEC"
1632 depends on SND_SOC_I2C_AND_SPI
1634 config SND_SOC_WM8770
1635 tristate "Wolfson Microelectronics WM8770 CODEC"
1636 depends on SPI_MASTER
1638 config SND_SOC_WM8776
1639 tristate "Wolfson Microelectronics WM8776 CODEC"
1640 depends on SND_SOC_I2C_AND_SPI
1642 config SND_SOC_WM8782
1643 tristate "Wolfson Microelectronics WM8782 ADC"
1645 config SND_SOC_WM8804
1648 config SND_SOC_WM8804_I2C
1649 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1651 select SND_SOC_WM8804
1654 config SND_SOC_WM8804_SPI
1655 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1656 depends on SPI_MASTER
1657 select SND_SOC_WM8804
1660 config SND_SOC_WM8900
1662 depends on SND_SOC_I2C_AND_SPI
1664 config SND_SOC_WM8903
1665 tristate "Wolfson Microelectronics WM8903 CODEC"
1668 config SND_SOC_WM8904
1669 tristate "Wolfson Microelectronics WM8904 CODEC"
1672 config SND_SOC_WM8940
1676 config SND_SOC_WM8955
1680 config SND_SOC_WM8960
1681 tristate "Wolfson Microelectronics WM8960 CODEC"
1684 config SND_SOC_WM8961
1688 config SND_SOC_WM8962
1689 tristate "Wolfson Microelectronics WM8962 CODEC"
1690 depends on I2C && INPUT
1692 config SND_SOC_WM8971
1696 config SND_SOC_WM8974
1697 tristate "Wolfson Microelectronics WM8974 codec"
1700 config SND_SOC_WM8978
1701 tristate "Wolfson Microelectronics WM8978 codec"
1704 config SND_SOC_WM8983
1706 depends on SND_SOC_I2C_AND_SPI
1708 config SND_SOC_WM8985
1709 tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1710 depends on SND_SOC_I2C_AND_SPI
1712 config SND_SOC_WM8988
1714 depends on SND_SOC_I2C_AND_SPI
1716 config SND_SOC_WM8990
1720 config SND_SOC_WM8991
1724 config SND_SOC_WM8993
1728 config SND_SOC_WM8994
1731 config SND_SOC_WM8995
1733 depends on SND_SOC_I2C_AND_SPI
1735 config SND_SOC_WM8996
1739 config SND_SOC_WM8997
1741 depends on MFD_WM8997
1743 config SND_SOC_WM8998
1745 depends on MFD_WM8998
1747 config SND_SOC_WM9081
1751 config SND_SOC_WM9090
1755 config SND_SOC_WM9705
1757 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1759 select AC97_BUS_COMPAT if AC97_BUS_NEW
1761 config SND_SOC_WM9712
1763 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1765 select AC97_BUS_COMPAT if AC97_BUS_NEW
1767 config SND_SOC_WM9713
1769 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
1771 select AC97_BUS_COMPAT if AC97_BUS_NEW
1773 config SND_SOC_WSA881X
1774 tristate "WSA881X Codec"
1775 depends on SOUNDWIRE
1776 select REGMAP_SOUNDWIRE
1779 This enables support for Qualcomm WSA8810/WSA8815 Class-D
1780 Smart Speaker Amplifier.
1782 config SND_SOC_ZL38060
1783 tristate "Microsemi ZL38060 Connected Home Audio Processor"
1784 depends on SPI_MASTER
1788 Support for ZL38060 Connected Home Audio Processor from Microsemi,
1789 which consists of a Digital Signal Processor (DSP), several Digital
1790 Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs.
1792 config SND_SOC_ZX_AUD96P22
1793 tristate "ZTE ZX AUD96P22 CODEC"
1798 config SND_SOC_LM4857
1802 config SND_SOC_MAX9759
1803 tristate "Maxim MAX9759 speaker Amplifier"
1806 config SND_SOC_MAX9768
1810 config SND_SOC_MAX9877
1814 config SND_SOC_MC13783
1816 depends on MFD_MC13XXX
1818 config SND_SOC_ML26124
1822 config SND_SOC_MT6351
1823 tristate "MediaTek MT6351 Codec"
1825 config SND_SOC_MT6358
1826 tristate "MediaTek MT6358 Codec"
1828 Enable support for the platform which uses MT6358 as
1829 external codec device.
1831 config SND_SOC_MT6359
1832 tristate "MediaTek MT6359 Codec"
1833 depends on MTK_PMIC_WRAP
1835 Enable support for the platform which uses MT6359 as
1836 external codec device.
1838 config SND_SOC_MT6359_ACCDET
1839 tristate "MediaTek MT6359 ACCDET driver"
1840 depends on MTK_PMIC_WRAP
1842 ACCDET means Accessory Detection technology, MediaTek develop it
1843 for ASoC codec soc-jack detection mechanism.
1844 Select N if you don't have jack on board.
1846 config SND_SOC_MT6660
1847 tristate "Mediatek MT6660 Speaker Amplifier"
1850 MediaTek MT6660 is a smart power amplifier which contain
1851 speaker protection, multi-band DRC, equalizer functions.
1852 Select N if you don't have MT6660 on board.
1853 Select M to build this as module.
1855 config SND_SOC_NAU8315
1856 tristate "Nuvoton Technology Corporation NAU8315 CODEC"
1859 config SND_SOC_NAU8540
1860 tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1863 config SND_SOC_NAU8810
1864 tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1867 config SND_SOC_NAU8822
1868 tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
1871 config SND_SOC_NAU8824
1872 tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1875 config SND_SOC_NAU8825
1879 config SND_SOC_TPA6130A2
1880 tristate "Texas Instruments TPA6130A2 headphone amplifier"
1883 config SND_SOC_LPASS_WSA_MACRO
1884 depends on COMMON_CLK
1885 tristate "Qualcomm WSA Macro in LPASS(Low Power Audio SubSystem)"
1887 config SND_SOC_LPASS_VA_MACRO
1888 depends on COMMON_CLK
1889 tristate "Qualcomm VA Macro in LPASS(Low Power Audio SubSystem)"
1891 config SND_SOC_LPASS_RX_MACRO
1892 depends on COMMON_CLK
1893 tristate "Qualcomm RX Macro in LPASS(Low Power Audio SubSystem)"
1895 config SND_SOC_LPASS_TX_MACRO
1896 depends on COMMON_CLK
1897 tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)"