xref: /linux-6.15/sound/soc/codecs/Kconfig (revision 514b044c)
1227b4dc6SMark Brown# Helper to resolve issues with configs that have SPI enabled but I2C
2227b4dc6SMark Brown# modular, meaning we can't build the codec driver in with I2C support.
3227b4dc6SMark Brown# We use an ordered list of conditional defaults to pick the appropriate
4227b4dc6SMark Brown# setting - SPI can't be modular so that case doesn't need to be covered.
5227b4dc6SMark Brownconfig SND_SOC_I2C_AND_SPI
6227b4dc6SMark Brown	tristate
7227b4dc6SMark Brown	default m if I2C=m
8227b4dc6SMark Brown	default y if I2C=y
9227b4dc6SMark Brown	default y if SPI_MASTER=y
10227b4dc6SMark Brown
114d1a7722SMark Brownmenu "CODEC drivers"
124d1a7722SMark Brown
130c941615SMark Brownconfig SND_SOC_ALL_CODECS
140c941615SMark Brown	tristate "Build all ASoC CODEC drivers"
1564b0c282SMark Brown	depends on COMPILE_TEST
16f213f4b5SHaojian Zhuang	select SND_SOC_88PM860X if MFD_88PM860X
17070504adSMark Brown	select SND_SOC_L3
18679d7abdSOla Lilja	select SND_SOC_AB8500_CODEC if ABX500_CORE
19a60abdf9SMaciej S. Szmigiero	select SND_SOC_AC97_CODEC
20e9ade7f9SMark Brown	select SND_SOC_AD1836 if SPI_MASTER
216c3d713eSLars-Peter Clausen	select SND_SOC_AD193X_SPI if SPI_MASTER
226c3d713eSLars-Peter Clausen	select SND_SOC_AD193X_I2C if I2C
23ca53fb24SMark Brown	select SND_SOC_AD1980 if SND_SOC_AC97_BUS
245683dc7aSScott Jiang	select SND_SOC_AD73311
25ddd7a260SLars-Peter Clausen	select SND_SOC_ADAU1373 if I2C
26dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761_I2C if I2C
27dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761_SPI if SPI
282923af02SLars-Peter Clausen	select SND_SOC_ADAU1781_I2C if I2C
292923af02SLars-Peter Clausen	select SND_SOC_ADAU1781_SPI if SPI
300c2d6964SLars-Peter Clausen	select SND_SOC_ADAV801 if SPI_MASTER
310c2d6964SLars-Peter Clausen	select SND_SOC_ADAV803 if I2C
32603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977_SPI if SPI_MASTER
33603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977_I2C if I2C
34af2d8b5dSLars-Peter Clausen	select SND_SOC_ADAU1701 if I2C
35a0d3546cSLars-Peter Clausen	select SND_SOC_ADAU7002
36754dec6bSMike Frysinger	select SND_SOC_ADS117X
37a381934eSDaniel Mack	select SND_SOC_AK4104 if SPI_MASTER
38bf897b44SAdrien Charruel	select SND_SOC_AK4118 if I2C
3908660086SCosmin-Gabriel Samoila	select SND_SOC_AK4458 if I2C
40ca53fb24SMark Brown	select SND_SOC_AK4535 if I2C
410d724f8aSMark Brown	select SND_SOC_AK4554
42b0757062SKuninori Morimoto	select SND_SOC_AK4613 if I2C
4300d27010SDmitry Artamonow	select SND_SOC_AK4641 if I2C
44a3a83d9aSKuninori Morimoto	select SND_SOC_AK4642 if I2C
452312fd8fSJoonyoung Shim	select SND_SOC_AK4671 if I2C
46cc289be8SDaniel Mack	select SND_SOC_AK5386
4792088477SDaniel Baluta	select SND_SOC_AK5558 if I2C
48473f89ffSJarkko Nikula	select SND_SOC_ALC5623 if I2C
4994d5f7c0SLeon Romanovsky	select SND_SOC_ALC5632 if I2C
5054aba08fSKuninori Morimoto	select SND_SOC_BT_SCO
51f6d4b052SKatsuhiro Suzuki	select SND_SOC_BD28623
5231489c0bSKuninori Morimoto	select SND_SOC_CQ0093VC
53b291f42aSCheng-Yi Chiang	select SND_SOC_CROS_EC_CODEC if MFD_CROS_EC
54eef5bb24SBrian Austin	select SND_SOC_CS35L32 if I2C
553333cb71SPaul Handrigan	select SND_SOC_CS35L33 if I2C
56c1124c09SPaul Handrigan	select SND_SOC_CS35L34 if I2C
576387f866SBrian Austin	select SND_SOC_CS35L35 if I2C
586ba9dd6cSJames Schulman	select SND_SOC_CS35L36 if I2C
592c394ca7SJames Schulman	select SND_SOC_CS42L42 if I2C
60a1253ef6SBrian Austin	select SND_SOC_CS42L51_I2C if I2C
61a2915d4fSArnd Bergmann	select SND_SOC_CS42L52 if I2C && INPUT
62272b5eddSBrian Austin	select SND_SOC_CS42L56 if I2C && INPUT
636d10c914SBrian Austin	select SND_SOC_CS42L73 if I2C
64fb6f8069SPaul Handrigan	select SND_SOC_CS4265 if I2C
65ca53fb24SMark Brown	select SND_SOC_CS4270 if I2C
66c973b8a7SAxel Lin	select SND_SOC_CS4271_I2C if I2C
67c973b8a7SAxel Lin	select SND_SOC_CS4271_SPI if SPI_MASTER
680c516b4fSNicolin Chen	select SND_SOC_CS42XX8_I2C if I2C
698f1e5bf9SLi Xu	select SND_SOC_CS43130 if I2C
700f68c396SAlexander Shiyan	select SND_SOC_CS4341 if SND_SOC_I2C_AND_SPI
71e40da86aSTim Howe	select SND_SOC_CS4349 if I2C
726610550cSRichard Fitzgerald	select SND_SOC_CS47L24 if MFD_CS47L24
73de9b1214SNicolin Chen	select SND_SOC_CS53L30 if I2C
744f73bc4dSJoe Millenbach	select SND_SOC_CX20442 if TTY
75c682363cSAxel Lin	select SND_SOC_DA7210 if SND_SOC_I2C_AND_SPI
76ef5c2ebaSAdam Thomson	select SND_SOC_DA7213 if I2C
774d50934aSAdam Thomson	select SND_SOC_DA7218 if I2C
786d817c0eSAdam Thomson	select SND_SOC_DA7219 if I2C
7948e27874SAdam Thomson	select SND_SOC_DA732X if I2C
809911f7f7SAshish Chavan	select SND_SOC_DA9055 if I2C
8123c7159aShuang lin	select SND_SOC_DMIC if GPIOLIB
82b8b88b70SDaniel Drake	select SND_SOC_ES8316 if I2C
83567e4f98SSean Cross	select SND_SOC_ES8328_SPI if SPI_MASTER
84567e4f98SSean Cross	select SND_SOC_ES8328_I2C if I2C
859000b59dSJerome Brunet	select SND_SOC_ES7134
865f7bdc46SJerome Brunet	select SND_SOC_ES7241
87efc4720dSMarek Belisko	select SND_SOC_GTM601
8818382eadSSubhransu S. Prusty	select SND_SOC_HDAC_HDMI
896bae5ea9SRakesh Ughreja	select SND_SOC_HDAC_HDA
903b7ce997SRicard Wanderlof	select SND_SOC_ICS43432
91decbc00eSZhengShunQian	select SND_SOC_INNO_RK3036
922f989f7eSM R Swami Reddy	select SND_SOC_ISABELLE if I2C
93f8f626f5SAxel Lin	select SND_SOC_JZ4740_CODEC
94e9d97b05SPaul Cercueil	select SND_SOC_JZ4725B_CODEC
959b74c7d6SMark Brown	select SND_SOC_LM4857 if I2C
96dbf7a733SM R Swami Reddy	select SND_SOC_LM49453 if I2C
9716123412SPiotr Stankiewicz	select SND_SOC_LOCHNAGAR_SC
98e86e1244SMark Brown	select SND_SOC_MAX98088 if I2C
9983f7cbc4SKuninori Morimoto	select SND_SOC_MAX98090 if I2C
10082a5a936SPeter Hsiang	select SND_SOC_MAX98095 if I2C
101ffa04757SGuenter Roeck	select SND_SOC_MAX98357A if GPIOLIB
102ca2cd6bcSanish kumar	select SND_SOC_MAX98371 if I2C
103fa80b4ecSKuninori Morimoto	select SND_SOC_MAX98504 if I2C
104805d132dSanish kumar	select SND_SOC_MAX9867 if I2C
1051ff27651SAnish Kumar	select SND_SOC_MAX98925 if I2C
106a2e2876aSanish kumar	select SND_SOC_MAX98926 if I2C
1077c0c2000SRyan Lee	select SND_SOC_MAX98927 if I2C
1082f3d24a1SRyan Lee	select SND_SOC_MAX98373 if I2C
1090e45cab6SChristian Glindkamp	select SND_SOC_MAX9850 if I2C
1103b2af7f7SPeter Rosin	select SND_SOC_MAX9860 if I2C
111fa8d9151SNeil Armstrong	select SND_SOC_MAX9759
112394d2bbaSWolfram Sang	select SND_SOC_MAX9768 if I2C
113b4541665SMark Brown	select SND_SOC_MAX9877 if I2C
1148b908b86SPhilippe Rétornaz	select SND_SOC_MC13783 if MFD_MC13XXX
115d808fe9fSTomoya MORINAGA	select SND_SOC_ML26124 if I2C
116a74d51baSKai Chieh Chuang	select SND_SOC_MT6351 if MTK_PMIC_WRAP
1176a8d4198SShunli Wang	select SND_SOC_MT6358 if MTK_PMIC_WRAP
118c1644e3dSJohn Hsu	select SND_SOC_NAU8540 if I2C
119b6970b48SJohn Hsu	select SND_SOC_NAU8810 if I2C
1201e3cb6c3SDavid Lin	select SND_SOC_NAU8822 if I2C
121dfeabdedSJohn Hsu	select SND_SOC_NAU8824 if I2C
12234ca27f3SAnatol Pomozov	select SND_SOC_NAU8825 if I2C
12309184118SJyri Sarha	select SND_SOC_HDMI_CODEC
12495169d08SMarek Belisko	select SND_SOC_PCM1681 if I2C
1254ae340d1SMylène Josserand	select SND_SOC_PCM1789_I2C if I2C
12670e3e56eSJacob Siverskog	select SND_SOC_PCM179X_I2C if I2C
1271b347b68SJacob Siverskog	select SND_SOC_PCM179X_SPI if SPI_MASTER
128993a3450SAndreas Dannenberg	select SND_SOC_PCM186X_I2C if I2C
129993a3450SAndreas Dannenberg	select SND_SOC_PCM186X_SPI if SPI_MASTER
1301c0090c2SHugo Villeneuve	select SND_SOC_PCM3008
1316ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060_I2C if I2C
1326ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060_SPI if SPI_MASTER
133a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A_I2C if I2C
134a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A_SPI if SPI_MASTER
13597d3ddd7SFlorian Meier	select SND_SOC_PCM5102A
13622066226SMark Brown	select SND_SOC_PCM512x_I2C if I2C
13722066226SMark Brown	select SND_SOC_PCM512x_SPI if SPI_MASTER
138c3275903SKatsuhiro Suzuki	select SND_SOC_RK3328
139c7e79b2bSBard Liao	select SND_SOC_RT274 if I2C
14007cf7cbaSBard Liao	select SND_SOC_RT286 if I2C
1416adcafaeSBard Liao	select SND_SOC_RT298 if I2C
14229bc643dSShuming Fan	select SND_SOC_RT1305 if I2C
1434a6180eaSOder Chiou	select SND_SOC_RT5514 if I2C
144b1d15059SBard Liao	select SND_SOC_RT5616 if I2C
145689b956eSAxel Lin	select SND_SOC_RT5631 if I2C
146997b0520SBard Liao	select SND_SOC_RT5640 if I2C
1471319b2f6SOder Chiou	select SND_SOC_RT5645 if I2C
14840bc18a2SBard Liao	select SND_SOC_RT5651 if I2C
149d3cb2de2SBard Liao	select SND_SOC_RT5659 if I2C
1502b26dd4cSOder Chiou	select SND_SOC_RT5660 if I2C
151df7c5216SBard Liao	select SND_SOC_RT5663 if I2C
152c7f87f96SAxel Lin	select SND_SOC_RT5665 if I2C
153d59fb285SBard Liao	select SND_SOC_RT5668 if I2C
1545e8351deSBard Liao	select SND_SOC_RT5670 if I2C
155ac884fc4SAnatol Pomozov	select SND_SOC_RT5677 if I2C && SPI_MASTER
1560ddce71cSBard Liao	select SND_SOC_RT5682 if I2C
1579b34e6ccSZeng Zhaoming	select SND_SOC_SGTL5000 if I2C
158330345ebSAndrey Smirnov	select SND_SOC_SI476X if MFD_SI476X_CORE
1598d881bb6SJerome Brunet	select SND_SOC_SIMPLE_AMPLIFIER
160f516e368SRongjun Ying	select SND_SOC_SIRF_AUDIO_CODEC
161be461ba8SChaithrika U S	select SND_SOC_SPDIF
16274f24d87SMarco Felsch	select SND_SOC_SSM2305
163b6b5e76bSLars-Peter Clausen	select SND_SOC_SSM2518 if I2C
164c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602_SPI if SPI_MASTER
165c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602_I2C if I2C
1661ee44ce0SAnatol Pomozov	select SND_SOC_SSM4567 if I2C
167c034abf6SJohannes Stezenbach	select SND_SOC_STA32X if I2C
1682439ea1fSSven Brandau	select SND_SOC_STA350 if I2C
1693be58dbbSRajeev Kumar	select SND_SOC_STA529 if I2C
1703c166c7fSJon Smirl	select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
17132a726b2SArnaud Pouliquen	select SND_SOC_STI_SAS
1725df7f71dSDan Murphy	select SND_SOC_TAS2552 if I2C
1734fa89346SDaniel Mack	select SND_SOC_TAS5086 if I2C
1743fd6e7d9SKevin Cernekee	select SND_SOC_TAS571X if I2C
175bd023adaSAndreas Dannenberg	select SND_SOC_TAS5720 if I2C
176157b68baSAndreas Dannenberg	select SND_SOC_TAS6424 if I2C
1773d3db943SMatt Porter	select SND_SOC_TDA7419 if I2C
178fbace43eSPeter Rosin	select SND_SOC_TFA9879 if I2C
179b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23_I2C if I2C
180b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
181ca53fb24SMark Brown	select SND_SOC_TLV320AIC26 if SPI_MASTER
182e00447faSJyri Sarha	select SND_SOC_TLV320AIC31XX if I2C
1833bcfd222SJeremy McDermond	select SND_SOC_TLV320AIC32X4_I2C if I2C
184125bc681SJeremy McDermond	select SND_SOC_TLV320AIC32X4_SPI if SPI_MASTER
185ca53fb24SMark Brown	select SND_SOC_TLV320AIC3X if I2C
186493b67efSPeter Ujfalusi	select SND_SOC_TPA6130A2 if I2C
187c8bf93f0SPeter Ujfalusi	select SND_SOC_TLV320DAC33 if I2C
188ba6c2959SSteven Eckhoff	select SND_SOC_TSCS42XX if I2C
1890e725b48SSteven Eckhoff	select SND_SOC_TSCS454 if I2C
1902880fc87SDylan Reid	select SND_SOC_TS3A227E if I2C
191cc17557eSSteve Sakoman	select SND_SOC_TWL4030 if TWL4030_CORE
1928eaeb939SPeter Ujfalusi	select SND_SOC_TWL6040 if TWL6040_CORE
1931cad1de1SChristian Pellegrin	select SND_SOC_UDA134X
194ca53fb24SMark Brown	select SND_SOC_UDA1380 if I2C
19520aedafdSSrinivas Kandagatla	select SND_SOC_WCD9335 if SLIMBUS
19640285f83SMatti Aaltonen	select SND_SOC_WL1273 if MFD_WL1273_CORE
197e3523e01SDimitris Papastamos	select SND_SOC_WM0010 if SPI_MASTER
1984bb3f43cSMark Brown	select SND_SOC_WM1250_EV1 if I2C
1993a66d387SMark Brown	select SND_SOC_WM2000 if I2C
200d5315a23SMark Brown	select SND_SOC_WM2200 if I2C
2016d4baf08SMark Brown	select SND_SOC_WM5100 if I2C
20293e8791dSMark Brown	select SND_SOC_WM5102 if MFD_WM5102
2035c6af635SMark Brown	select SND_SOC_WM5110 if MFD_WM5110
20440aa4a30SMark Brown	select SND_SOC_WM8350 if MFD_WM8350
205aaf1e176SMark Brown	select SND_SOC_WM8400 if MFD_WM8400
206227b4dc6SMark Brown	select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
2071dcf98ffSMark Brown	select SND_SOC_WM8523 if I2C
208007b6a54SMihai Serban	select SND_SOC_WM8524 if GPIOLIB
209ca53fb24SMark Brown	select SND_SOC_WM8580 if I2C
21008aff8cdSMark Brown	select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
21189933deeSNeil Jones	select SND_SOC_WM8727
212227b4dc6SMark Brown	select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
213227b4dc6SMark Brown	select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
2142a9ae13aSMark Brown	select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
215992bee40SIan Lartey	select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
216227b4dc6SMark Brown	select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
217227b4dc6SMark Brown	select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
218c046fd4dSDimitris Papastamos	select SND_SOC_WM8770 if SPI_MASTER
219924914eeSMark Brown	select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
220ec3ea54cSJohannes Stezenbach	select SND_SOC_WM8782
221bbed297dSCharles Keepax	select SND_SOC_WM8804_I2C if I2C
222bbed297dSCharles Keepax	select SND_SOC_WM8804_SPI if SPI_MASTER
223ca53fb24SMark Brown	select SND_SOC_WM8900 if I2C
2240244ad00SMartin Schwidefsky	select SND_SOC_WM8903 if I2C
225a91eb199SMark Brown	select SND_SOC_WM8904 if I2C
2260b5e92c5SJonathan Cameron	select SND_SOC_WM8940 if I2C
227b35a28afSMark Brown	select SND_SOC_WM8955 if I2C
228f2644a2cSMark Brown	select SND_SOC_WM8960 if I2C
22974dc55edSMark Brown	select SND_SOC_WM8961 if I2C
230a2915d4fSArnd Bergmann	select SND_SOC_WM8962 if I2C && INPUT
231ca53fb24SMark Brown	select SND_SOC_WM8971 if I2C
2320a1bf553SMark Brown	select SND_SOC_WM8974 if I2C
2330d34e915SGuennadi Liakhovetski	select SND_SOC_WM8978 if I2C
2346b3860b0SDimitris Papastamos	select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
2356d6f8b83SDimitris Papastamos	select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
2365409fb4eSMark Brown	select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
237ca53fb24SMark Brown	select SND_SOC_WM8990 if I2C
238203db220SDimitris Papastamos	select SND_SOC_WM8991 if I2C
239942c435bSMark Brown	select SND_SOC_WM8993 if I2C
240fead215dSMark Brown	select SND_SOC_WM8994 if MFD_WM8994
2416a504a75SDimitris Papastamos	select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
242a9ba6151SMark Brown	select SND_SOC_WM8996 if I2C
24340843aeaSCharles Keepax	select SND_SOC_WM8997 if MFD_WM8997
2446ebbce0aSRichard Fitzgerald	select SND_SOC_WM8998 if MFD_WM8998
24586ed3669SMark Brown	select SND_SOC_WM9081 if I2C
24639b8eab7SMark Brown	select SND_SOC_WM9090 if I2C
247aaafcfedSRobert Jarzmik	select SND_SOC_WM9705 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
2482ed1a8e0SRobert Jarzmik	select SND_SOC_WM9712 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
2499bd400caSRobert Jarzmik	select SND_SOC_WM9713 if (SND_SOC_AC97_BUS || SND_SOC_AC97_BUS_NEW)
2500c941615SMark Brown        help
2510c941615SMark Brown          Normally ASoC codec drivers are only built if a machine driver which
2520c941615SMark Brown          uses them is also built since they are only usable with a machine
2530c941615SMark Brown          driver.  Selecting this option will allow these drivers to be built
2540c941615SMark Brown          without an explicit machine driver for test and development purposes.
2550c941615SMark Brown
256ca53fb24SMark Brown	  Support for the bus types used to access the codecs to be built must
257ca53fb24SMark Brown	  be selected separately.
258ca53fb24SMark Brown
2590c941615SMark Brown          If unsure select "N".
2600c941615SMark Brown
261f213f4b5SHaojian Zhuangconfig SND_SOC_88PM860X
262f213f4b5SHaojian Zhuang	tristate
263f213f4b5SHaojian Zhuang
26407ed873eSMark Brownconfig SND_SOC_ARIZONA
26507ed873eSMark Brown	tristate
2666610550cSRichard Fitzgerald	default y if SND_SOC_CS47L24=y
26707ed873eSMark Brown	default y if SND_SOC_WM5102=y
2685c6af635SMark Brown	default y if SND_SOC_WM5110=y
26940843aeaSCharles Keepax	default y if SND_SOC_WM8997=y
2706ebbce0aSRichard Fitzgerald	default y if SND_SOC_WM8998=y
2716610550cSRichard Fitzgerald	default m if SND_SOC_CS47L24=m
27207ed873eSMark Brown	default m if SND_SOC_WM5102=m
2735c6af635SMark Brown	default m if SND_SOC_WM5110=m
27440843aeaSCharles Keepax	default m if SND_SOC_WM8997=m
2756ebbce0aSRichard Fitzgerald	default m if SND_SOC_WM8998=m
27607ed873eSMark Brown
277a2342ae3SMark Brownconfig SND_SOC_WM_HUBS
278a2342ae3SMark Brown	tristate
27941f9a314SChanwoo Choi	default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
28041f9a314SChanwoo Choi	default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
2810c941615SMark Brown
2822159ad93SMark Brownconfig SND_SOC_WM_ADSP
2832159ad93SMark Brown	tristate
2841d981e0aSCharles Keepax	select SND_SOC_COMPRESS
2856610550cSRichard Fitzgerald	default y if SND_SOC_CS47L24=y
286804f5ba7SMark Brown	default y if SND_SOC_WM5102=y
2879a3e1b8cSMark Brown	default y if SND_SOC_WM5110=y
2882159ad93SMark Brown	default y if SND_SOC_WM2200=y
2896610550cSRichard Fitzgerald	default m if SND_SOC_CS47L24=m
290804f5ba7SMark Brown	default m if SND_SOC_WM5102=m
2919a3e1b8cSMark Brown	default m if SND_SOC_WM5110=m
2922159ad93SMark Brown	default m if SND_SOC_WM2200=m
2932159ad93SMark Brown
294679d7abdSOla Liljaconfig SND_SOC_AB8500_CODEC
295679d7abdSOla Lilja	tristate
296679d7abdSOla Lilja
2977f137ab6SRichard Purdieconfig SND_SOC_AC97_CODEC
298a60abdf9SMaciej S. Szmigiero	tristate "Build generic ASoC AC97 CODEC driver"
29989fe5117STakashi Iwai	select SND_AC97_CODEC
300a60abdf9SMaciej S. Szmigiero	select SND_SOC_AC97_BUS
3017f137ab6SRichard Purdie
3027eaae41eSBarry Songconfig SND_SOC_AD1836
3037eaae41eSBarry Song	tristate
3047eaae41eSBarry Song
305a1533d94SBarry Songconfig SND_SOC_AD193X
3061274738dSBarry Song	tristate
3071274738dSBarry Song
3086c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_SPI
3096c3d713eSLars-Peter Clausen	tristate
3106c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
3116c3d713eSLars-Peter Clausen
3126c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_I2C
3136c3d713eSLars-Peter Clausen	tristate
3146c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
3156c3d713eSLars-Peter Clausen
3165f57dc8bSCliff Caiconfig SND_SOC_AD1980
31782d14636SLars-Peter Clausen	select REGMAP_AC97
3185f57dc8bSCliff Cai	tristate
3195f57dc8bSCliff Cai
3200e77e784SCliff Caiconfig SND_SOC_AD73311
3210e77e784SCliff Cai	tristate
3220e77e784SCliff Cai
3230eadaa9cSLars-Peter Clausenconfig SND_SOC_ADAU_UTILS
3240eadaa9cSLars-Peter Clausen	tristate
3250eadaa9cSLars-Peter Clausen
3264101866cSLars-Peter Clausenconfig SND_SOC_ADAU1373
3274101866cSLars-Peter Clausen	tristate
3280eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
3294101866cSLars-Peter Clausen
330631ed8a2SLars-Peter Clausenconfig SND_SOC_ADAU1701
3311291e141SMark Brown	tristate "Analog Devices ADAU1701 CODEC"
3321291e141SMark Brown	depends on I2C
3336b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_I2C
334631ed8a2SLars-Peter Clausen
3354101866cSLars-Peter Clausenconfig SND_SOC_ADAU17X1
336ddd7a260SLars-Peter Clausen	tristate
3376b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_REGMAP
3380eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
339ddd7a260SLars-Peter Clausen
340dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761
341dab464b6SLars-Peter Clausen	tristate
342dab464b6SLars-Peter Clausen	select SND_SOC_ADAU17X1
343dab464b6SLars-Peter Clausen
344dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_I2C
345e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - I2C"
346e54fde61SBryce Ferguson	depends on I2C
347dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
348dab464b6SLars-Peter Clausen	select REGMAP_I2C
349dab464b6SLars-Peter Clausen
350dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_SPI
351e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - SPI"
352e54fde61SBryce Ferguson	depends on SPI
353dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
354dab464b6SLars-Peter Clausen	select REGMAP_SPI
355dab464b6SLars-Peter Clausen
3562923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781
3572923af02SLars-Peter Clausen	select SND_SOC_ADAU17X1
3582923af02SLars-Peter Clausen	tristate
3592923af02SLars-Peter Clausen
3602923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_I2C
3612923af02SLars-Peter Clausen	tristate
3622923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
3632923af02SLars-Peter Clausen	select REGMAP_I2C
3642923af02SLars-Peter Clausen
3652923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_SPI
3662923af02SLars-Peter Clausen	tristate
3672923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
3682923af02SLars-Peter Clausen	select REGMAP_SPI
3692dcf9fb9SGraeme Gregory
370603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977
371603597c9SLars-Peter Clausen	tristate
372603597c9SLars-Peter Clausen
373603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_SPI
374603597c9SLars-Peter Clausen	tristate
375603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
376603597c9SLars-Peter Clausen	select REGMAP_SPI
377603597c9SLars-Peter Clausen
378603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_I2C
379603597c9SLars-Peter Clausen	tristate
380603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
381603597c9SLars-Peter Clausen	select REGMAP_I2C
382603597c9SLars-Peter Clausen
383a0d3546cSLars-Peter Clausenconfig SND_SOC_ADAU7002
384a0d3546cSLars-Peter Clausen	tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
385a0d3546cSLars-Peter Clausen
3862dcf9fb9SGraeme Gregoryconfig SND_SOC_ADAV80X
3872dcf9fb9SGraeme Gregory	tristate
388a381934eSDaniel Mack
3890c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV801
3900c2d6964SLars-Peter Clausen	tristate
3910c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
3920c2d6964SLars-Peter Clausen
3930c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV803
3940c2d6964SLars-Peter Clausen	tristate
3950c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
3960c2d6964SLars-Peter Clausen
397a381934eSDaniel Mackconfig SND_SOC_ADS117X
398a381934eSDaniel Mack	tristate
399796d2ca8SRichard Purdie
400796d2ca8SRichard Purdieconfig SND_SOC_AK4104
4011291e141SMark Brown	tristate "AKM AK4104 CODEC"
4021291e141SMark Brown	depends on SPI_MASTER
4033e860846SMark Brown
404bf897b44SAdrien Charruelconfig SND_SOC_AK4118
405bf897b44SAdrien Charruel	tristate "AKM AK4118 CODEC"
406bf897b44SAdrien Charruel	depends on I2C
407bf897b44SAdrien Charruel	select REGMAP_I2C
408bf897b44SAdrien Charruel
40908660086SCosmin-Gabriel Samoilaconfig SND_SOC_AK4458
41008660086SCosmin-Gabriel Samoila	tristate "AKM AK4458 CODEC"
41108660086SCosmin-Gabriel Samoila	depends on I2C
41208660086SCosmin-Gabriel Samoila	select REGMAP_I2C
41308660086SCosmin-Gabriel Samoila
414796d2ca8SRichard Purdieconfig SND_SOC_AK4535
415796d2ca8SRichard Purdie	tristate
416796d2ca8SRichard Purdie
417a2911cdbSKuninori Morimotoconfig SND_SOC_AK4554
4181291e141SMark Brown	tristate "AKM AK4554 CODEC"
419a2911cdbSKuninori Morimoto
420b0757062SKuninori Morimotoconfig SND_SOC_AK4613
421b0757062SKuninori Morimoto	tristate "AKM AK4613 CODEC"
422b0757062SKuninori Morimoto	depends on I2C
423b0757062SKuninori Morimoto
42400d27010SDmitry Artamonowconfig SND_SOC_AK4641
42500d27010SDmitry Artamonow	tristate
42600d27010SDmitry Artamonow
427a3a83d9aSKuninori Morimotoconfig SND_SOC_AK4642
4281291e141SMark Brown	tristate "AKM AK4642 CODEC"
4291291e141SMark Brown	depends on I2C
430a3a83d9aSKuninori Morimoto
4312312fd8fSJoonyoung Shimconfig SND_SOC_AK4671
4322312fd8fSJoonyoung Shim	tristate
4332312fd8fSJoonyoung Shim
434cc289be8SDaniel Mackconfig SND_SOC_AK5386
4351291e141SMark Brown	tristate "AKM AK5638 CODEC"
436cc289be8SDaniel Mack
43792088477SDaniel Balutaconfig SND_SOC_AK5558
43892088477SDaniel Baluta	tristate "AKM AK5558 CODEC"
43992088477SDaniel Baluta	depends on I2C
44092088477SDaniel Baluta	select REGMAP_I2C
44192088477SDaniel Baluta
4426f4bc952SArnaud Patard (Rtp)config SND_SOC_ALC5623
4437d6d478fSAndrew Lunn       tristate "Realtek ALC5623 CODEC"
4445dc04f51STakashi Iwai	depends on I2C
4451291e141SMark Brown
44694d5f7c0SLeon Romanovskyconfig SND_SOC_ALC5632
44794d5f7c0SLeon Romanovsky	tristate
4486f4bc952SArnaud Patard (Rtp)
449f6d4b052SKatsuhiro Suzukiconfig SND_SOC_BD28623
450f6d4b052SKatsuhiro Suzuki	tristate "ROHM BD28623 CODEC"
451f6d4b052SKatsuhiro Suzuki	help
452f6d4b052SKatsuhiro Suzuki	  Enable support for ROHM BD28623MUV Class D speaker amplifier.
453f6d4b052SKatsuhiro Suzuki	  This codec does not have any control buses such as I2C, it
454f6d4b052SKatsuhiro Suzuki	  detect format of I2S automatically.
455f6d4b052SKatsuhiro Suzuki
45654aba08fSKuninori Morimotoconfig SND_SOC_BT_SCO
4578b0b50d8SGarlic Tseng	tristate "Dummy BT SCO codec driver"
45854aba08fSKuninori Morimoto
459f6cdf2d3SSebastian Reichelconfig SND_SOC_CPCAP
460f6cdf2d3SSebastian Reichel	tristate "Motorola CPCAP codec"
461f6cdf2d3SSebastian Reichel	depends on MFD_CPCAP
462f6cdf2d3SSebastian Reichel
463b56e972bSMiguel Aguilarconfig SND_SOC_CQ0093VC
464b56e972bSMiguel Aguilar	tristate
465b56e972bSMiguel Aguilar
466b291f42aSCheng-Yi Chiangconfig SND_SOC_CROS_EC_CODEC
467b291f42aSCheng-Yi Chiang	tristate "codec driver for ChromeOS EC"
468b291f42aSCheng-Yi Chiang	depends on MFD_CROS_EC
469b291f42aSCheng-Yi Chiang	help
470b291f42aSCheng-Yi Chiang	  If you say yes here you will get support for the
471b291f42aSCheng-Yi Chiang	  ChromeOS Embedded Controller's Audio Codec.
472b291f42aSCheng-Yi Chiang
473eef5bb24SBrian Austinconfig SND_SOC_CS35L32
474eef5bb24SBrian Austin	tristate "Cirrus Logic CS35L32 CODEC"
475eef5bb24SBrian Austin	depends on I2C
476eef5bb24SBrian Austin
4773333cb71SPaul Handriganconfig SND_SOC_CS35L33
4783333cb71SPaul Handrigan	tristate "Cirrus Logic CS35L33 CODEC"
4793333cb71SPaul Handrigan	depends on I2C
4803333cb71SPaul Handrigan
481c1124c09SPaul Handriganconfig SND_SOC_CS35L34
482c1124c09SPaul Handrigan	tristate "Cirrus Logic CS35L34 CODEC"
483c1124c09SPaul Handrigan	depends on I2C
484c1124c09SPaul Handrigan
4856387f866SBrian Austinconfig SND_SOC_CS35L35
4866387f866SBrian Austin	tristate "Cirrus Logic CS35L35 CODEC"
4876387f866SBrian Austin	depends on I2C
4886387f866SBrian Austin
4896ba9dd6cSJames Schulmanconfig SND_SOC_CS35L36
4906ba9dd6cSJames Schulman	tristate "Cirrus Logic CS35L36 CODEC"
4916ba9dd6cSJames Schulman	depends on I2C
4926ba9dd6cSJames Schulman
4932c394ca7SJames Schulmanconfig SND_SOC_CS42L42
4942c394ca7SJames Schulman	tristate "Cirrus Logic CS42L42 CODEC"
4952c394ca7SJames Schulman	depends on I2C
4962c394ca7SJames Schulman
49772ed5a8cS[email protected]config SND_SOC_CS42L51
49872ed5a8cS[email protected]	tristate
49972ed5a8cS[email protected]
500a1253ef6SBrian Austinconfig SND_SOC_CS42L51_I2C
5014e449238SThomas Petazzoni	tristate "Cirrus Logic CS42L51 CODEC (I2C)"
502e894beb8SRandy Dunlap	depends on I2C
503a1253ef6SBrian Austin	select SND_SOC_CS42L51
504a1253ef6SBrian Austin
505dfe0f98bSBrian Austinconfig SND_SOC_CS42L52
5061291e141SMark Brown	tristate "Cirrus Logic CS42L52 CODEC"
507a2915d4fSArnd Bergmann	depends on I2C && INPUT
508dfe0f98bSBrian Austin
509272b5eddSBrian Austinconfig SND_SOC_CS42L56
510272b5eddSBrian Austin	tristate "Cirrus Logic CS42L56 CODEC"
511272b5eddSBrian Austin	depends on I2C && INPUT
5123e860846SMark Brown
5133e860846SMark Brownconfig SND_SOC_CS42L73
5141291e141SMark Brown	tristate "Cirrus Logic CS42L73 CODEC"
5151291e141SMark Brown	depends on I2C
5163e860846SMark Brown
517fb6f8069SPaul Handriganconfig SND_SOC_CS4265
518fb6f8069SPaul Handrigan	tristate "Cirrus Logic CS4265 CODEC"
519fb6f8069SPaul Handrigan	depends on I2C
520fb6f8069SPaul Handrigan	select REGMAP_I2C
521fb6f8069SPaul Handrigan
5223e860846SMark Brown# Cirrus Logic CS4270 Codec
5233e860846SMark Brownconfig SND_SOC_CS4270
5241291e141SMark Brown	tristate "Cirrus Logic CS4270 CODEC"
5251291e141SMark Brown	depends on I2C
5263e860846SMark Brown
5273e860846SMark Brown# Cirrus Logic CS4270 Codec VD = 3.3V Errata
5283e860846SMark Brown# Select if you are affected by the errata where the part will not function
5293e860846SMark Brown# if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
5303e860846SMark Brown# not select any sample rates that require MCLK to be divided by 1.5.
5313e860846SMark Brownconfig SND_SOC_CS4270_VD33_ERRATA
5323e860846SMark Brown	bool
5333e860846SMark Brown	depends on SND_SOC_CS4270
5343e860846SMark Brown
53567b22517SAlexander Sverdlinconfig SND_SOC_CS4271
536c973b8a7SAxel Lin	tristate
537c973b8a7SAxel Lin
538c973b8a7SAxel Linconfig SND_SOC_CS4271_I2C
539c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (I2C)"
540c973b8a7SAxel Lin	depends on I2C
541c973b8a7SAxel Lin	select SND_SOC_CS4271
542c973b8a7SAxel Lin	select REGMAP_I2C
543c973b8a7SAxel Lin
544c973b8a7SAxel Linconfig SND_SOC_CS4271_SPI
545c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (SPI)"
546c973b8a7SAxel Lin	depends on SPI_MASTER
547c973b8a7SAxel Lin	select SND_SOC_CS4271
548c973b8a7SAxel Lin	select REGMAP_SPI
54967b22517SAlexander Sverdlin
5500c516b4fSNicolin Chenconfig SND_SOC_CS42XX8
5510c516b4fSNicolin Chen	tristate
5520c516b4fSNicolin Chen
5530c516b4fSNicolin Chenconfig SND_SOC_CS42XX8_I2C
5540c516b4fSNicolin Chen	tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
5550c516b4fSNicolin Chen	depends on I2C
5560c516b4fSNicolin Chen	select SND_SOC_CS42XX8
5570c516b4fSNicolin Chen	select REGMAP_I2C
5580c516b4fSNicolin Chen
5598f1e5bf9SLi Xu# Cirrus Logic CS43130 HiFi DAC
5608f1e5bf9SLi Xuconfig SND_SOC_CS43130
5618f1e5bf9SLi Xu        tristate "Cirrus Logic CS43130 CODEC"
5628f1e5bf9SLi Xu        depends on I2C
5638f1e5bf9SLi Xu
5640f68c396SAlexander Shiyanconfig SND_SOC_CS4341
5650f68c396SAlexander Shiyan	tristate "Cirrus Logic CS4341 CODEC"
5663e8c45f5SAnders Roxell	depends on SND_SOC_I2C_AND_SPI
5670f68c396SAlexander Shiyan	select REGMAP_I2C if I2C
5680f68c396SAlexander Shiyan	select REGMAP_SPI if SPI_MASTER
5690f68c396SAlexander Shiyan
570e40da86aSTim Howe# Cirrus Logic CS4349 HiFi DAC
571e40da86aSTim Howeconfig SND_SOC_CS4349
572e40da86aSTim Howe	tristate "Cirrus Logic CS4349 CODEC"
573e40da86aSTim Howe	depends on I2C
574e40da86aSTim Howe
5756610550cSRichard Fitzgeraldconfig SND_SOC_CS47L24
5766610550cSRichard Fitzgerald	tristate
5776610550cSRichard Fitzgerald
578de9b1214SNicolin Chen# Cirrus Logic Quad-Channel ADC
579de9b1214SNicolin Chenconfig SND_SOC_CS53L30
580de9b1214SNicolin Chen	tristate "Cirrus Logic CS53L30 CODEC"
581de9b1214SNicolin Chen	depends on I2C
582de9b1214SNicolin Chen
583459dc352SJanusz Krzysztofikconfig SND_SOC_CX20442
584459dc352SJanusz Krzysztofik	tristate
5854f73bc4dSJoe Millenbach	depends on TTY
586459dc352SJanusz Krzysztofik
5873b097d64SLars-Peter Clausenconfig SND_SOC_JZ4740_CODEC
588edcd3ed1SPaul Cercueil	depends on MIPS || COMPILE_TEST
589dd1b18abSLars-Peter Clausen	select REGMAP_MMIO
590edcd3ed1SPaul Cercueil	tristate "Ingenic JZ4740 internal CODEC"
591edcd3ed1SPaul Cercueil	help
592edcd3ed1SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4740 SoC
593edcd3ed1SPaul Cercueil	  from Ingenic.
594edcd3ed1SPaul Cercueil
595edcd3ed1SPaul Cercueil	  This driver can also be built as a module. If so, the module
596edcd3ed1SPaul Cercueil	  will be called snd-soc-jz4740-codec.
5973b097d64SLars-Peter Clausen
598e9d97b05SPaul Cercueilconfig SND_SOC_JZ4725B_CODEC
599e9d97b05SPaul Cercueil	depends on MIPS || COMPILE_TEST
600e9d97b05SPaul Cercueil	select REGMAP
601e9d97b05SPaul Cercueil	tristate "Ingenic JZ4725B internal CODEC"
602e9d97b05SPaul Cercueil	help
603e9d97b05SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4725B SoC
604e9d97b05SPaul Cercueil	  from Ingenic.
605e9d97b05SPaul Cercueil
606e9d97b05SPaul Cercueil	  This driver can also be built as a module. If so, the module
607e9d97b05SPaul Cercueil	  will be called snd-soc-jz4725b-codec.
608e9d97b05SPaul Cercueil
6091cad1de1SChristian Pellegrinconfig SND_SOC_L3
6101cad1de1SChristian Pellegrin       tristate
6111cad1de1SChristian Pellegrin
612b4541665SMark Brownconfig SND_SOC_DA7210
613b4541665SMark Brown        tristate
614b4541665SMark Brown
615ef5c2ebaSAdam Thomsonconfig SND_SOC_DA7213
616ef5c2ebaSAdam Thomson        tristate
617ef5c2ebaSAdam Thomson
6184d50934aSAdam Thomsonconfig SND_SOC_DA7218
6194d50934aSAdam Thomson	tristate
6204d50934aSAdam Thomson
6216d817c0eSAdam Thomsonconfig SND_SOC_DA7219
6226d817c0eSAdam Thomson        tristate
6236d817c0eSAdam Thomson
62448e27874SAdam Thomsonconfig SND_SOC_DA732X
62548e27874SAdam Thomson        tristate
62648e27874SAdam Thomson
6279911f7f7SAshish Chavanconfig SND_SOC_DA9055
6289911f7f7SAshish Chavan	tristate
6299911f7f7SAshish Chavan
630a710770eSDavid Lambertconfig SND_SOC_DMIC
63126bcf1c3SJerome Brunet	tristate "Generic Digital Microphone CODEC"
63226bcf1c3SJerome Brunet	depends on GPIOLIB
63326bcf1c3SJerome Brunet	help
63426bcf1c3SJerome Brunet	  Enable support for the Generic Digital Microphone CODEC.
63526bcf1c3SJerome Brunet	  Select this if your sound card has DMICs.
636a710770eSDavid Lambert
63709184118SJyri Sarhaconfig SND_SOC_HDMI_CODEC
63809184118SJyri Sarha	tristate
63909184118SJyri Sarha	select SND_PCM_ELD
64009184118SJyri Sarha	select SND_PCM_IEC958
6416de7df8dSArnd Bergmann	select HDMI
64209184118SJyri Sarha
6439000b59dSJerome Brunetconfig SND_SOC_ES7134
6449000b59dSJerome Brunet       tristate "Everest Semi ES7134 CODEC"
6459000b59dSJerome Brunet
6465f7bdc46SJerome Brunetconfig SND_SOC_ES7241
6475f7bdc46SJerome Brunet       tristate "Everest Semi ES7241 CODEC"
6485f7bdc46SJerome Brunet
649b8b88b70SDaniel Drakeconfig SND_SOC_ES8316
650b8b88b70SDaniel Drake	tristate "Everest Semi ES8316 CODEC"
651664d00d1SArnd Bergmann	depends on I2C
652b8b88b70SDaniel Drake
653567e4f98SSean Crossconfig SND_SOC_ES8328
654245c5c7bSArnd Bergmann	tristate
655567e4f98SSean Cross
656567e4f98SSean Crossconfig SND_SOC_ES8328_I2C
657245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (I2C)"
658245c5c7bSArnd Bergmann	depends on I2C
659567e4f98SSean Cross	select SND_SOC_ES8328
660567e4f98SSean Cross
661567e4f98SSean Crossconfig SND_SOC_ES8328_SPI
662245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (SPI)"
663245c5c7bSArnd Bergmann	depends on SPI_MASTER
664567e4f98SSean Cross	select SND_SOC_ES8328
665567e4f98SSean Cross
666efc4720dSMarek Beliskoconfig SND_SOC_GTM601
667efc4720dSMarek Belisko	tristate 'GTM601 UMTS modem audio codec'
668efc4720dSMarek Belisko
6699049a48aSMark Brownconfig SND_SOC_HDAC_HDMI
6709049a48aSMark Brown	tristate
6719049a48aSMark Brown	select SND_HDA_EXT_CORE
6722428bca3SSubhransu S. Prusty	select SND_PCM_ELD
6739049a48aSMark Brown	select HDMI
6749049a48aSMark Brown
6756bae5ea9SRakesh Ughrejaconfig SND_SOC_HDAC_HDA
6766bae5ea9SRakesh Ughreja	tristate
6776bae5ea9SRakesh Ughreja	select SND_HDA
6786bae5ea9SRakesh Ughreja
6793b7ce997SRicard Wanderlofconfig SND_SOC_ICS43432
6803b7ce997SRicard Wanderlof	tristate
6813b7ce997SRicard Wanderlof
682decbc00eSZhengShunQianconfig SND_SOC_INNO_RK3036
683decbc00eSZhengShunQian	tristate "Inno codec driver for RK3036 SoC"
6847315917fSAntonio Ospite	select REGMAP_MMIO
685decbc00eSZhengShunQian
6862f989f7eSM R Swami Reddyconfig SND_SOC_ISABELLE
6872f989f7eSM R Swami Reddy        tristate
6882f989f7eSM R Swami Reddy
689dbf7a733SM R Swami Reddyconfig SND_SOC_LM49453
690dbf7a733SM R Swami Reddy	tristate
691dbf7a733SM R Swami Reddy
69216123412SPiotr Stankiewiczconfig SND_SOC_LOCHNAGAR_SC
69316123412SPiotr Stankiewicz	tristate "Lochnagar Sound Card"
69416123412SPiotr Stankiewicz	depends on MFD_LOCHNAGAR
69516123412SPiotr Stankiewicz	help
69616123412SPiotr Stankiewicz	  This driver support the sound card functionality of the Cirrus
69716123412SPiotr Stankiewicz	  Logic Lochnagar audio development board.
69816123412SPiotr Stankiewicz
699e86e1244SMark Brownconfig SND_SOC_MAX98088
70024ae67c5SMarco Felsch	tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
7019641faa2SArnd Bergmann	depends on I2C
702e86e1244SMark Brown
70383f7cbc4SKuninori Morimotoconfig SND_SOC_MAX98090
70483f7cbc4SKuninori Morimoto       tristate
70583f7cbc4SKuninori Morimoto
70682a5a936SPeter Hsiangconfig SND_SOC_MAX98095
70782a5a936SPeter Hsiang       tristate
70882a5a936SPeter Hsiang
709af5adf12SKenneth Westfieldconfig SND_SOC_MAX98357A
710af5adf12SKenneth Westfield       tristate
711af5adf12SKenneth Westfield
712ca2cd6bcSanish kumarconfig SND_SOC_MAX98371
713ca2cd6bcSanish kumar       tristate
714ca2cd6bcSanish kumar
7154c5d1469SSylwester Nawrockiconfig SND_SOC_MAX98504
7164c5d1469SSylwester Nawrocki	tristate "Maxim MAX98504 speaker amplifier"
7174c5d1469SSylwester Nawrocki	depends on I2C
7184c5d1469SSylwester Nawrocki
719805d132dSanish kumarconfig SND_SOC_MAX9867
7203ac9ce88SLadislav Michl	tristate "Maxim MAX9867 CODEC"
7213ac9ce88SLadislav Michl	depends on I2C
722805d132dSanish kumar
7231ff27651SAnish Kumarconfig SND_SOC_MAX98925
7241ff27651SAnish Kumar       tristate
7251ff27651SAnish Kumar
726a2e2876aSanish kumarconfig SND_SOC_MAX98926
727a2e2876aSanish kumar	tristate
728a2e2876aSanish kumar
7297c0c2000SRyan Leeconfig SND_SOC_MAX98927
7307c0c2000SRyan Lee	tristate "Maxim Integrated MAX98927 Speaker Amplifier"
7317c0c2000SRyan Lee	depends on I2C
7327c0c2000SRyan Lee
7332f3d24a1SRyan Leeconfig SND_SOC_MAX98373
7342f3d24a1SRyan Lee	tristate "Maxim Integrated MAX98373 Speaker Amplifier"
7352f3d24a1SRyan Lee	depends on I2C
7362f3d24a1SRyan Lee
7370e45cab6SChristian Glindkampconfig SND_SOC_MAX9850
7380e45cab6SChristian Glindkamp	tristate
7390e45cab6SChristian Glindkamp
7403b2af7f7SPeter Rosinconfig SND_SOC_MAX9860
7413b2af7f7SPeter Rosin	tristate "Maxim MAX9860 Mono Audio Voice Codec"
7423b2af7f7SPeter Rosin	depends on I2C
7433b2af7f7SPeter Rosin	select REGMAP_I2C
7443b2af7f7SPeter Rosin
745585e881eSSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_ANALOG
746585e881eSSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD Analog Codec"
747585e881eSSrinivas Kandagatla	depends on SPMI || COMPILE_TEST
748585e881eSSrinivas Kandagatla
749150db8c5SSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_DIGITAL
750150db8c5SSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
7515b86fa6dSAxel Lin	select REGMAP_MMIO
752150db8c5SSrinivas Kandagatla
75395169d08SMarek Beliskoconfig SND_SOC_PCM1681
7541291e141SMark Brown	tristate "Texas Instruments PCM1681 CODEC"
7551291e141SMark Brown	depends on I2C
75695169d08SMarek Belisko
7574ae340d1SMylène Josserandconfig SND_SOC_PCM1789
7584ae340d1SMylène Josserand	tristate
7594ae340d1SMylène Josserand
7604ae340d1SMylène Josserandconfig SND_SOC_PCM1789_I2C
7614ae340d1SMylène Josserand	tristate "Texas Instruments PCM1789 CODEC (I2C)"
7624ae340d1SMylène Josserand	depends on I2C
7634ae340d1SMylène Josserand	select SND_SOC_PCM1789
7644ae340d1SMylène Josserand	help
7654ae340d1SMylène Josserand	  Enable support for Texas Instruments PCM1789 CODEC.
7664ae340d1SMylène Josserand	  Select this if your PCM1789 is connected via an I2C bus.
7674ae340d1SMylène Josserand
7680471cd93SMichael Trimarchiconfig SND_SOC_PCM179X
7691b347b68SJacob Siverskog	tristate
7701b347b68SJacob Siverskog
77170e3e56eSJacob Siverskogconfig SND_SOC_PCM179X_I2C
77270e3e56eSJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (I2C)"
77370e3e56eSJacob Siverskog	depends on I2C
77470e3e56eSJacob Siverskog	select SND_SOC_PCM179X
77570e3e56eSJacob Siverskog	help
77670e3e56eSJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
77770e3e56eSJacob Siverskog	  Select this if your PCM179x is connected via an I2C bus.
77870e3e56eSJacob Siverskog
7791b347b68SJacob Siverskogconfig SND_SOC_PCM179X_SPI
7801b347b68SJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (SPI)"
7811291e141SMark Brown	depends on SPI_MASTER
7821b347b68SJacob Siverskog	select SND_SOC_PCM179X
7831b347b68SJacob Siverskog	help
7841b347b68SJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
7851b347b68SJacob Siverskog	  Select this if your PCM179x is connected via an SPI bus.
78613b02fa0SMichael Trimarchi
787993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X
788993a3450SAndreas Dannenberg	tristate
789993a3450SAndreas Dannenberg
790993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_I2C
791993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - I2C"
792993a3450SAndreas Dannenberg	depends on I2C
793993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
794993a3450SAndreas Dannenberg	select REGMAP_I2C
795993a3450SAndreas Dannenberg
796993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_SPI
797993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - SPI"
798993a3450SAndreas Dannenberg	depends on SPI_MASTER
799993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
800993a3450SAndreas Dannenberg	select REGMAP_SPI
801993a3450SAndreas Dannenberg
8021c0090c2SHugo Villeneuveconfig SND_SOC_PCM3008
8031c0090c2SHugo Villeneuve       tristate
8041c0090c2SHugo Villeneuve
8056ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060
8066ee47d4aSKirill Marinushkin       tristate
8076ee47d4aSKirill Marinushkin
8086ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_I2C
8096ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - I2C"
8106ee47d4aSKirill Marinushkin	depends on I2C
8116ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
8126ee47d4aSKirill Marinushkin	select REGMAP_I2C
8136ee47d4aSKirill Marinushkin
8146ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_SPI
8156ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - SPI"
8166ee47d4aSKirill Marinushkin	depends on SPI_MASTER
8176ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
8186ee47d4aSKirill Marinushkin	select REGMAP_SPI
8196ee47d4aSKirill Marinushkin
820a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A
821a9b17a63SDamien.Horsley	tristate
822a9b17a63SDamien.Horsley
823a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_I2C
824a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - I2C"
825a9b17a63SDamien.Horsley	depends on I2C
826a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
827a9b17a63SDamien.Horsley	select REGMAP_I2C
828a9b17a63SDamien.Horsley
829a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_SPI
830a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - SPI"
831a9b17a63SDamien.Horsley	depends on SPI_MASTER
832a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
833a9b17a63SDamien.Horsley	select REGMAP_SPI
834a9b17a63SDamien.Horsley
83597d3ddd7SFlorian Meierconfig SND_SOC_PCM5102A
83697d3ddd7SFlorian Meier	tristate
83797d3ddd7SFlorian Meier
8385a3af129SMark Brownconfig SND_SOC_PCM512x
83922066226SMark Brown	tristate
84022066226SMark Brown
84122066226SMark Brownconfig SND_SOC_PCM512x_I2C
84222066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - I2C"
84322066226SMark Brown	depends on I2C
84422066226SMark Brown	select SND_SOC_PCM512x
84522066226SMark Brown	select REGMAP_I2C
84622066226SMark Brown
84722066226SMark Brownconfig SND_SOC_PCM512x_SPI
84822066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - SPI"
84922066226SMark Brown	depends on SPI_MASTER
85022066226SMark Brown	select SND_SOC_PCM512x
85122066226SMark Brown	select REGMAP_SPI
8525a3af129SMark Brown
853c3275903SKatsuhiro Suzukiconfig SND_SOC_RK3328
854c3275903SKatsuhiro Suzuki	tristate "Rockchip RK3328 audio CODEC"
855c3275903SKatsuhiro Suzuki	select REGMAP_MMIO
856c3275903SKatsuhiro Suzuki
85749ef7925SOder Chiouconfig SND_SOC_RL6231
85849ef7925SOder Chiou	tristate
8594a6180eaSOder Chiou	default y if SND_SOC_RT5514=y
860b1d15059SBard Liao	default y if SND_SOC_RT5616=y
86149ef7925SOder Chiou	default y if SND_SOC_RT5640=y
86249ef7925SOder Chiou	default y if SND_SOC_RT5645=y
86349ef7925SOder Chiou	default y if SND_SOC_RT5651=y
864d3cb2de2SBard Liao	default y if SND_SOC_RT5659=y
8652b26dd4cSOder Chiou	default y if SND_SOC_RT5660=y
866df7c5216SBard Liao	default y if SND_SOC_RT5663=y
867c7f87f96SAxel Lin	default y if SND_SOC_RT5665=y
868d59fb285SBard Liao	default y if SND_SOC_RT5668=y
8695e8351deSBard Liao	default y if SND_SOC_RT5670=y
87030f14b43SAxel Lin	default y if SND_SOC_RT5677=y
8710ddce71cSBard Liao	default y if SND_SOC_RT5682=y
87229bc643dSShuming Fan	default y if SND_SOC_RT1305=y
8734a6180eaSOder Chiou	default m if SND_SOC_RT5514=m
874b1d15059SBard Liao	default m if SND_SOC_RT5616=m
87549ef7925SOder Chiou	default m if SND_SOC_RT5640=m
87649ef7925SOder Chiou	default m if SND_SOC_RT5645=m
87749ef7925SOder Chiou	default m if SND_SOC_RT5651=m
878d3cb2de2SBard Liao	default m if SND_SOC_RT5659=m
8792b26dd4cSOder Chiou	default m if SND_SOC_RT5660=m
880df7c5216SBard Liao	default m if SND_SOC_RT5663=m
881c7f87f96SAxel Lin	default m if SND_SOC_RT5665=m
882d59fb285SBard Liao	default m if SND_SOC_RT5668=m
8835e8351deSBard Liao	default m if SND_SOC_RT5670=m
88430f14b43SAxel Lin	default m if SND_SOC_RT5677=m
8850ddce71cSBard Liao	default m if SND_SOC_RT5682=m
88629bc643dSShuming Fan	default m if SND_SOC_RT1305=m
88749ef7925SOder Chiou
888bc08f96bSOder Chiouconfig SND_SOC_RL6347A
889bc08f96bSOder Chiou	tristate
890c7e79b2bSBard Liao	default y if SND_SOC_RT274=y
891bc08f96bSOder Chiou	default y if SND_SOC_RT286=y
8926adcafaeSBard Liao	default y if SND_SOC_RT298=y
893c7e79b2bSBard Liao	default m if SND_SOC_RT274=m
894bc08f96bSOder Chiou	default m if SND_SOC_RT286=m
8956adcafaeSBard Liao	default m if SND_SOC_RT298=m
896bc08f96bSOder Chiou
897c7e79b2bSBard Liaoconfig SND_SOC_RT274
898c7e79b2bSBard Liao	tristate
899c7e79b2bSBard Liao	depends on I2C
900c7e79b2bSBard Liao
90107cf7cbaSBard Liaoconfig SND_SOC_RT286
90207cf7cbaSBard Liao	tristate
903a577483bSBard Liao	depends on I2C
90407cf7cbaSBard Liao
9056adcafaeSBard Liaoconfig SND_SOC_RT298
9066adcafaeSBard Liao	tristate
9076adcafaeSBard Liao	depends on I2C
9086adcafaeSBard Liao
90929bc643dSShuming Fanconfig SND_SOC_RT1305
91029bc643dSShuming Fan	tristate
91129bc643dSShuming Fan
9124a6180eaSOder Chiouconfig SND_SOC_RT5514
913b1d15059SBard Liao	tristate
914b1d15059SBard Liao
9156eebf35bSOder Chiouconfig SND_SOC_RT5514_SPI
9166eebf35bSOder Chiou	tristate
9176eebf35bSOder Chiou
918c5630877SArnd Bergmannconfig SND_SOC_RT5514_SPI_BUILTIN
919c5630877SArnd Bergmann	bool # force RT5514_SPI to be built-in to avoid link errors
920c5630877SArnd Bergmann	default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
921c5630877SArnd Bergmann
922997b0520SBard Liaoconfig SND_SOC_RT5616
923288bc356SCaesar Wang	tristate "Realtek RT5616 CODEC"
924af139d55SArnd Bergmann	depends on I2C
925997b0520SBard Liao
9261319b2f6SOder Chiouconfig SND_SOC_RT5631
9271319b2f6SOder Chiou	tristate "Realtek ALC5631/RT5631 CODEC"
9281319b2f6SOder Chiou	depends on I2C
92940bc18a2SBard Liao
93040bc18a2SBard Liaoconfig SND_SOC_RT5640
93140bc18a2SBard Liao	tristate
9325e8351deSBard Liao
9335e8351deSBard Liaoconfig SND_SOC_RT5645
9345e8351deSBard Liao        tristate
9350e826e86SOder Chiou
9360e826e86SOder Chiouconfig SND_SOC_RT5651
937359ff7ffSBen Zhang	tristate
938359ff7ffSBen Zhang
939d3cb2de2SBard Liaoconfig SND_SOC_RT5659
940d3cb2de2SBard Liao	tristate
941d3cb2de2SBard Liao
9422b26dd4cSOder Chiouconfig SND_SOC_RT5660
9432b26dd4cSOder Chiou	tristate
9442b26dd4cSOder Chiou
945c7f87f96SAxel Linconfig SND_SOC_RT5663
94633ada14aSBard Liao	tristate
94733ada14aSBard Liao
948c7f87f96SAxel Linconfig SND_SOC_RT5665
949df7c5216SBard Liao	tristate
950df7c5216SBard Liao
951d59fb285SBard Liaoconfig SND_SOC_RT5668
952d59fb285SBard Liao	tristate
953d59fb285SBard Liao
9541291e141SMark Brownconfig SND_SOC_RT5670
9551291e141SMark Brown	tristate
9569b34e6ccSZeng Zhaoming
957330345ebSAndrey Smirnovconfig SND_SOC_RT5677
958330345ebSAndrey Smirnov	tristate
959330345ebSAndrey Smirnov	select REGMAP_I2C
960e29bee09SBen Zhang	select REGMAP_IRQ
961e29bee09SBen Zhang
962e29bee09SBen Zhangconfig SND_SOC_RT5677_SPI
963e29bee09SBen Zhang	tristate
9644c121129SArnd Bergmann	default SND_SOC_RT5677 && SPI
965be461ba8SChaithrika U S
9660ddce71cSBard Liaoconfig SND_SOC_RT5682
9670ddce71cSBard Liao	tristate
9680ddce71cSBard Liao
96940216ce7SLars-Peter Clausen#Freescale sgtl5000 codec
97040216ce7SLars-Peter Clausenconfig SND_SOC_SGTL5000
97140216ce7SLars-Peter Clausen	tristate "Freescale SGTL5000 CODEC"
97240216ce7SLars-Peter Clausen	depends on I2C
973be461ba8SChaithrika U S
974be461ba8SChaithrika U Sconfig SND_SOC_SI476X
9753e860846SMark Brown	tristate
9763e860846SMark Brown
9773e860846SMark Brownconfig SND_SOC_SIGMADSP
9783c166c7fSJon Smirl	tristate
9793c166c7fSJon Smirl	select CRC32
9803c166c7fSJon Smirl
9816b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_I2C
9826b10998dSLars-Peter Clausen	tristate
9836b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
9846b10998dSLars-Peter Clausen
9856b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_REGMAP
9866b10998dSLars-Peter Clausen	tristate
9876b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
9886b10998dSLars-Peter Clausen
9898d881bb6SJerome Brunetconfig SND_SOC_SIMPLE_AMPLIFIER
9908d881bb6SJerome Brunet	tristate "Simple Audio Amplifier"
9918d881bb6SJerome Brunet	select GPIOLIB
9928d881bb6SJerome Brunet
993f516e368SRongjun Yingconfig SND_SOC_SIRF_AUDIO_CODEC
994f516e368SRongjun Ying	tristate "SiRF SoC internal audio codec"
995f516e368SRongjun Ying	select REGMAP_MMIO
996f516e368SRongjun Ying
9973e860846SMark Brownconfig SND_SOC_SPDIF
9981291e141SMark Brown	tristate "S/PDIF CODEC"
999c1f27190SArun KS
100074f24d87SMarco Felschconfig SND_SOC_SSM2305
100174f24d87SMarco Felsch	tristate "Analog Devices SSM2305 Class-D Amplifier"
100274f24d87SMarco Felsch	help
100374f24d87SMarco Felsch	  Enable support for Analog Devices SSM2305 filterless
100474f24d87SMarco Felsch	  high-efficiency mono Class-D audio power amplifiers.
100574f24d87SMarco Felsch
1006b6b5e76bSLars-Peter Clausenconfig SND_SOC_SSM2518
1007b6b5e76bSLars-Peter Clausen	tristate
1008b6b5e76bSLars-Peter Clausen
10093e860846SMark Brownconfig SND_SOC_SSM2602
10103e860846SMark Brown	tristate
1011c1f27190SArun KS
1012c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_SPI
1013555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - SPI"
1014555b9ee1SStefan Kristiansson	depends on SPI_MASTER
1015c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
1016555b9ee1SStefan Kristiansson	select REGMAP_SPI
1017c924dc68SLars-Peter Clausen
1018c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_I2C
1019555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - I2C"
1020555b9ee1SStefan Kristiansson	depends on I2C
1021c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
1022555b9ee1SStefan Kristiansson	select REGMAP_I2C
1023c924dc68SLars-Peter Clausen
10241ee44ce0SAnatol Pomozovconfig SND_SOC_SSM4567
10251ee44ce0SAnatol Pomozov	tristate "Analog Devices ssm4567 amplifier driver support"
10261ee44ce0SAnatol Pomozov	depends on I2C
1027c1f27190SArun KS
1028c1f27190SArun KSconfig SND_SOC_STA32X
10296fad6259SThomas Niederprüm	tristate "STA326, STA328 and STA329 speaker amplifier"
10306fad6259SThomas Niederprüm	depends on I2C
1031a1be4ceaSThomas Niederprüm	select REGMAP_I2C
1032c1f27190SArun KS
10332439ea1fSSven Brandauconfig SND_SOC_STA350
10342439ea1fSSven Brandau	tristate "STA350 speaker amplifier"
10352439ea1fSSven Brandau	depends on I2C
10362439ea1fSSven Brandau
1037c1f27190SArun KSconfig SND_SOC_STA529
10383e860846SMark Brown	tristate
1039d5d8d837SMark Brown
1040446e0f69STakashi Iwaiconfig SND_SOC_STAC9766
10413e860846SMark Brown	tristate
10423e860846SMark Brown
104332a726b2SArnaud Pouliquenconfig SND_SOC_STI_SAS
104432a726b2SArnaud Pouliquen	tristate "codec Audio support for STI SAS codec"
104532a726b2SArnaud Pouliquen
10465df7f71dSDan Murphyconfig SND_SOC_TAS2552
10475df7f71dSDan Murphy	tristate "Texas Instruments TAS2552 Mono Audio amplifier"
10485df7f71dSDan Murphy	depends on I2C
10495df7f71dSDan Murphy
10503e860846SMark Brownconfig SND_SOC_TAS5086
10513e860846SMark Brown	tristate "Texas Instruments TAS5086 speaker amplifier"
10523e860846SMark Brown	depends on I2C
10533e860846SMark Brown
10543fd6e7d9SKevin Cernekeeconfig SND_SOC_TAS571X
1055f516d322SJerome Brunet	tristate "Texas Instruments TAS571x power amplifiers"
10563fd6e7d9SKevin Cernekee	depends on I2C
1057f516d322SJerome Brunet	help
1058f516d322SJerome Brunet	  Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
1059f516d322SJerome Brunet	  TAS5719 and TAS5721 power amplifiers
10603fd6e7d9SKevin Cernekee
1061bd023adaSAndreas Dannenbergconfig SND_SOC_TAS5720
1062bd023adaSAndreas Dannenberg	tristate "Texas Instruments TAS5720 Mono Audio amplifier"
1063bd023adaSAndreas Dannenberg	depends on I2C
1064bd023adaSAndreas Dannenberg	help
1065bd023adaSAndreas Dannenberg	  Enable support for Texas Instruments TAS5720L/M high-efficiency mono
1066bd023adaSAndreas Dannenberg	  Class-D audio power amplifiers.
1067bd023adaSAndreas Dannenberg
1068157b68baSAndreas Dannenbergconfig SND_SOC_TAS6424
1069157b68baSAndreas Dannenberg	tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
1070157b68baSAndreas Dannenberg	depends on I2C
1071157b68baSAndreas Dannenberg	help
1072157b68baSAndreas Dannenberg	  Enable support for Texas Instruments TAS6424 high-efficiency
1073157b68baSAndreas Dannenberg	  digital input quad-channel Class-D audio power amplifiers.
1074157b68baSAndreas Dannenberg
10753d3db943SMatt Porterconfig SND_SOC_TDA7419
10763d3db943SMatt Porter	tristate "ST TDA7419 audio processor"
10773d3db943SMatt Porter	depends on I2C
10783d3db943SMatt Porter	select REGMAP_I2C
10793d3db943SMatt Porter
1080fbace43eSPeter Rosinconfig SND_SOC_TFA9879
1081fbace43eSPeter Rosin	tristate "NXP Semiconductors TFA9879 amplifier"
1082fbace43eSPeter Rosin	depends on I2C
1083fbace43eSPeter Rosin
10843e860846SMark Brownconfig SND_SOC_TLV320AIC23
10853e860846SMark Brown	tristate
10863e860846SMark Brown
1087b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_I2C
1088d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
1089bf9706feSMax Filippov	depends on I2C
1090b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
1091b3fc5725SMax Filippov
1092b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_SPI
1093d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
1094bf9706feSMax Filippov	depends on SPI_MASTER
1095b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
1096b3fc5725SMax Filippov
10973e860846SMark Brownconfig SND_SOC_TLV320AIC26
1098379cf397SPaul Bolle	tristate
10993e860846SMark Brown	depends on SPI
11003e860846SMark Brown
1101e00447faSJyri Sarhaconfig SND_SOC_TLV320AIC31XX
110296665e31SPeter Ujfalusi	tristate "Texas Instruments TLV320AIC31xx CODECs"
1103a9ef83f2SPeter Ujfalusi	depends on I2C
1104a9ef83f2SPeter Ujfalusi	select REGMAP_I2C
1105e00447faSJyri Sarha
1106684a65d4SWolfram Sangconfig SND_SOC_TLV320AIC32X4
11071d471cd1SJavier Martin	tristate
1108*514b044cSAnnaliese McDermond	depends on COMMON_CLK
11091d471cd1SJavier Martin
11103bcfd222SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_I2C
11119245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
11123bcfd222SJeremy McDermond	depends on I2C
11133bcfd222SJeremy McDermond	select SND_SOC_TLV320AIC32X4
11143bcfd222SJeremy McDermond
1115125bc681SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_SPI
11169245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
1117125bc681SJeremy McDermond	depends on SPI_MASTER
1118125bc681SJeremy McDermond	select SND_SOC_TLV320AIC32X4
1119125bc681SJeremy McDermond
11203e860846SMark Brownconfig SND_SOC_TLV320AIC3X
11211291e141SMark Brown	tristate "Texas Instruments TLV320AIC3x CODECs"
11221291e141SMark Brown	depends on I2C
11233e860846SMark Brown
1124c8bf93f0SPeter Ujfalusiconfig SND_SOC_TLV320DAC33
1125c8bf93f0SPeter Ujfalusi	tristate
1126c8bf93f0SPeter Ujfalusi
11272880fc87SDylan Reidconfig SND_SOC_TS3A227E
11282880fc87SDylan Reid	tristate "TI Headset/Mic detect and keypress chip"
11292880fc87SDylan Reid	depends on I2C
11302880fc87SDylan Reid
1131ba6c2959SSteven Eckhoffconfig SND_SOC_TSCS42XX
1132ba6c2959SSteven Eckhoff	tristate "Tempo Semiconductor TSCS42xx CODEC"
1133ba6c2959SSteven Eckhoff	depends on I2C
1134ba6c2959SSteven Eckhoff	select REGMAP_I2C
1135ba6c2959SSteven Eckhoff	help
1136ba6c2959SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
1137ba6c2959SSteven Eckhoff
11380e725b48SSteven Eckhoffconfig SND_SOC_TSCS454
11390e725b48SSteven Eckhoff	tristate "Tempo Semiconductor TSCS454 CODEC"
11400e725b48SSteven Eckhoff	depends on I2C
11410e725b48SSteven Eckhoff	select REGMAP_I2C
11420e725b48SSteven Eckhoff	help
11430e725b48SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS454 audio CODEC.
11440e725b48SSteven Eckhoff
1145cc17557eSSteve Sakomanconfig SND_SOC_TWL4030
114657fe7251SPeter Ujfalusi	select MFD_TWL4030_AUDIO
1147cc17557eSSteve Sakoman	tristate
1148cc17557eSSteve Sakoman
11498ecbabd9SMisael Lopez Cruzconfig SND_SOC_TWL6040
11508ecbabd9SMisael Lopez Cruz	tristate
11518ecbabd9SMisael Lopez Cruz
11521cad1de1SChristian Pellegrinconfig SND_SOC_UDA134X
11531cad1de1SChristian Pellegrin       tristate
11541cad1de1SChristian Pellegrin
1155b7482f52SPhilipp Zabelconfig SND_SOC_UDA1380
1156b7482f52SPhilipp Zabel        tristate
11574a5cf132SKuninori Morimoto	depends on I2C
1158b7482f52SPhilipp Zabel
115920aedafdSSrinivas Kandagatlaconfig SND_SOC_WCD9335
116020aedafdSSrinivas Kandagatla	tristate "WCD9335 Codec"
1161a8233b6cSMark Brown	depends on SLIMBUS
116220aedafdSSrinivas Kandagatla	select REGMAP_SLIMBUS
116320aedafdSSrinivas Kandagatla	help
116420aedafdSSrinivas Kandagatla	  The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
116520aedafdSSrinivas Kandagatla	  Qualcomm Technologies, Inc. (QTI) multimedia solutions,
116620aedafdSSrinivas Kandagatla	  including the MSM8996, MSM8976, and MSM8956 chipsets.
116720aedafdSSrinivas Kandagatla
116849d7ad9dSMark Brownconfig SND_SOC_WL1273
116949d7ad9dSMark Brown	tristate
117049d7ad9dSMark Brown
1171e3523e01SDimitris Papastamosconfig SND_SOC_WM0010
1172e3523e01SDimitris Papastamos	tristate
1173e3523e01SDimitris Papastamos
11744bb3f43cSMark Brownconfig SND_SOC_WM1250_EV1
11754bb3f43cSMark Brown	tristate
11764bb3f43cSMark Brown
11774911ccdbSMark Brownconfig SND_SOC_WM2000
11784911ccdbSMark Brown	tristate
11794911ccdbSMark Brown
1180d5315a23SMark Brownconfig SND_SOC_WM2200
1181d5315a23SMark Brown	tristate
1182d5315a23SMark Brown
11836d4baf08SMark Brownconfig SND_SOC_WM5100
11846d4baf08SMark Brown	tristate
11856d4baf08SMark Brown
118693e8791dSMark Brownconfig SND_SOC_WM5102
118793e8791dSMark Brown	tristate
118893e8791dSMark Brown
11895c6af635SMark Brownconfig SND_SOC_WM5110
11905c6af635SMark Brown	tristate
11915c6af635SMark Brown
119240aa4a30SMark Brownconfig SND_SOC_WM8350
119340aa4a30SMark Brown	tristate
119440aa4a30SMark Brown
1195aaf1e176SMark Brownconfig SND_SOC_WM8400
1196aaf1e176SMark Brown	tristate
1197aaf1e176SMark Brown
11985d421516SMark Brownconfig SND_SOC_WM8510
11991291e141SMark Brown	tristate "Wolfson Microelectronics WM8510 CODEC"
12001291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
12015d421516SMark Brown
12021dcf98ffSMark Brownconfig SND_SOC_WM8523
12031291e141SMark Brown	tristate "Wolfson Microelectronics WM8523 DAC"
12041291e141SMark Brown	depends on I2C
12051dcf98ffSMark Brown
1206007b6a54SMihai Serbanconfig SND_SOC_WM8524
1207007b6a54SMihai Serban	tristate "Wolfson Microelectronics WM8524 DAC"
1208007b6a54SMihai Serban	depends on GPIOLIB
1209007b6a54SMihai Serban
1210e88ba015SMark Brownconfig SND_SOC_WM8580
1211028f5a5bSMatt Flax	tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
12121291e141SMark Brown	depends on I2C
1213e88ba015SMark Brown
1214bd6d4177SMike Arthurconfig SND_SOC_WM8711
12151291e141SMark Brown	tristate "Wolfson Microelectronics WM8711 CODEC"
12161291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
1217bd6d4177SMike Arthur
121889933deeSNeil Jonesconfig SND_SOC_WM8727
121989933deeSNeil Jones	tristate
122089933deeSNeil Jones
122171cfc902SMark Brownconfig SND_SOC_WM8728
12221291e141SMark Brown	tristate "Wolfson Microelectronics WM8728 DAC"
12231291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
122471cfc902SMark Brown
12257f137ab6SRichard Purdieconfig SND_SOC_WM8731
12261291e141SMark Brown	tristate "Wolfson Microelectronics WM8731 CODEC"
12271291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
12287f137ab6SRichard Purdie
12292a9ae13aSMark Brownconfig SND_SOC_WM8737
12301291e141SMark Brown	tristate "Wolfson Microelectronics WM8737 ADC"
12311291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
12322a9ae13aSMark Brown
1233992bee40SIan Larteyconfig SND_SOC_WM8741
12341291e141SMark Brown	tristate "Wolfson Microelectronics WM8737 DAC"
12351291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
1236992bee40SIan Lartey
12377f137ab6SRichard Purdieconfig SND_SOC_WM8750
12381291e141SMark Brown	tristate "Wolfson Microelectronics WM8750 CODEC"
12391291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
12407f137ab6SRichard Purdie
124133703b73SLiam Girdwoodconfig SND_SOC_WM8753
12421291e141SMark Brown	tristate "Wolfson Microelectronics WM8753 CODEC"
12431291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
124433703b73SLiam Girdwood
1245c046fd4dSDimitris Papastamosconfig SND_SOC_WM8770
12461291e141SMark Brown	tristate "Wolfson Microelectronics WM8770 CODEC"
1247e479d85cSMark Brown	depends on SPI_MASTER
1248c046fd4dSDimitris Papastamos
1249924914eeSMark Brownconfig SND_SOC_WM8776
12501291e141SMark Brown	tristate "Wolfson Microelectronics WM8776 CODEC"
12511291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
1252924914eeSMark Brown
1253ec3ea54cSJohannes Stezenbachconfig SND_SOC_WM8782
12542da48013SDaniel Mack	tristate "Wolfson Microelectronics WM8782 ADC"
1255ec3ea54cSJohannes Stezenbach
125633cf45c8SDimitris Papastamosconfig SND_SOC_WM8804
1257bbed297dSCharles Keepax	tristate
1258bbed297dSCharles Keepax
1259bbed297dSCharles Keepaxconfig SND_SOC_WM8804_I2C
1260bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
1261bbed297dSCharles Keepax	depends on I2C
1262bbed297dSCharles Keepax	select SND_SOC_WM8804
1263bbed297dSCharles Keepax	select REGMAP_I2C
1264bbed297dSCharles Keepax
1265bbed297dSCharles Keepaxconfig SND_SOC_WM8804_SPI
1266bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
1267bbed297dSCharles Keepax	depends on SPI_MASTER
1268bbed297dSCharles Keepax	select SND_SOC_WM8804
1269bbed297dSCharles Keepax	select REGMAP_SPI
127033cf45c8SDimitris Papastamos
12710e0e16a8SMark Brownconfig SND_SOC_WM8900
12720e0e16a8SMark Brown	tristate
12730e0e16a8SMark Brown
1274f1c0a02fSMark Brownconfig SND_SOC_WM8903
12751291e141SMark Brown	tristate "Wolfson Microelectronics WM8903 CODEC"
12761291e141SMark Brown	depends on I2C
1277f1c0a02fSMark Brown
1278a91eb199SMark Brownconfig SND_SOC_WM8904
12792bb853f6SMichał Mirosław	tristate "Wolfson Microelectronics WM8904 CODEC"
12802bb853f6SMichał Mirosław	depends on I2C
1281a91eb199SMark Brown
12820b5e92c5SJonathan Cameronconfig SND_SOC_WM8940
12830b5e92c5SJonathan Cameron        tristate
12840b5e92c5SJonathan Cameron
1285b35a28afSMark Brownconfig SND_SOC_WM8955
1286b35a28afSMark Brown	tristate
1287b35a28afSMark Brown
1288f2644a2cSMark Brownconfig SND_SOC_WM8960
1289465011fcSFabio Estevam	tristate "Wolfson Microelectronics WM8960 CODEC"
12903fcdfc9dSMark Brown	depends on I2C
1291f2644a2cSMark Brown
129274dc55edSMark Brownconfig SND_SOC_WM8961
129374dc55edSMark Brown	tristate
129474dc55edSMark Brown
12959a76f1ffSMark Brownconfig SND_SOC_WM8962
12961291e141SMark Brown	tristate "Wolfson Microelectronics WM8962 CODEC"
1297a2915d4fSArnd Bergmann	depends on I2C && INPUT
12989a76f1ffSMark Brown
12998bae3e23SKenneth Kiralyconfig SND_SOC_WM8971
13008bae3e23SKenneth Kiraly	tristate
13018bae3e23SKenneth Kiraly
13020a1bf553SMark Brownconfig SND_SOC_WM8974
13032005bd88SMans Rullgard	tristate "Wolfson Microelectronics WM8974 codec"
13042005bd88SMans Rullgard	depends on I2C
13050a1bf553SMark Brown
13060d34e915SGuennadi Liakhovetskiconfig SND_SOC_WM8978
130777c54539SGeert Uytterhoeven	tristate "Wolfson Microelectronics WM8978 codec"
130877c54539SGeert Uytterhoeven	depends on I2C
13090d34e915SGuennadi Liakhovetski
13106b3860b0SDimitris Papastamosconfig SND_SOC_WM8983
13116b3860b0SDimitris Papastamos	tristate
13126b3860b0SDimitris Papastamos
13136d6f8b83SDimitris Papastamosconfig SND_SOC_WM8985
1314811e66deSPetr Kulhavy	tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
1315b82d67f4SArnd Bergmann	depends on SND_SOC_I2C_AND_SPI
13166d6f8b83SDimitris Papastamos
13175409fb4eSMark Brownconfig SND_SOC_WM8988
13185409fb4eSMark Brown	tristate
13195409fb4eSMark Brown
1320f10485e7SMark Brownconfig SND_SOC_WM8990
1321f10485e7SMark Brown	tristate
1322f10485e7SMark Brown
1323203db220SDimitris Papastamosconfig SND_SOC_WM8991
1324203db220SDimitris Papastamos	tristate
1325203db220SDimitris Papastamos
1326942c435bSMark Brownconfig SND_SOC_WM8993
1327942c435bSMark Brown	tristate
1328942c435bSMark Brown
13299e6e96a1SMark Brownconfig SND_SOC_WM8994
13309e6e96a1SMark Brown	tristate
13319e6e96a1SMark Brown
13326a504a75SDimitris Papastamosconfig SND_SOC_WM8995
13336a504a75SDimitris Papastamos	tristate
13346a504a75SDimitris Papastamos
1335a9ba6151SMark Brownconfig SND_SOC_WM8996
1336a9ba6151SMark Brown	tristate
1337a9ba6151SMark Brown
133840843aeaSCharles Keepaxconfig SND_SOC_WM8997
133940843aeaSCharles Keepax	tristate
134040843aeaSCharles Keepax
13416ebbce0aSRichard Fitzgeraldconfig SND_SOC_WM8998
13426ebbce0aSRichard Fitzgerald	tristate
13436ebbce0aSRichard Fitzgerald
134486ed3669SMark Brownconfig SND_SOC_WM9081
134586ed3669SMark Brown	tristate
1346e2d57591SKuninori Morimoto	depends on I2C
134786ed3669SMark Brown
134859792aa9SMark Brownconfig SND_SOC_WM9090
134959792aa9SMark Brown	tristate
135059792aa9SMark Brown
13512aceefefSIan Moltonconfig SND_SOC_WM9705
13522aceefefSIan Molton	tristate
1353206964e8SLars-Peter Clausen	select REGMAP_AC97
1354aaafcfedSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
13552aceefefSIan Molton
13567f137ab6SRichard Purdieconfig SND_SOC_WM9712
13577f137ab6SRichard Purdie	tristate
1358b4f4f2ebSLars-Peter Clausen	select REGMAP_AC97
13592ed1a8e0SRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
1360b0c813ceSTimur Tabi
136183ac08c0SLiam Girdwoodconfig SND_SOC_WM9713
136283ac08c0SLiam Girdwood	tristate
1363700dadfeSRobert Jarzmik	select REGMAP_AC97
13649bd400caSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
13659db9ed97SJoonyoung Shim
13660e15bdfdSBaoyou Xieconfig SND_SOC_ZX_AUD96P22
13670e15bdfdSBaoyou Xie	tristate "ZTE ZX AUD96P22 CODEC"
13680e15bdfdSBaoyou Xie	depends on I2C
13690e15bdfdSBaoyou Xie	select REGMAP_I2C
13700e15bdfdSBaoyou Xie
13719db9ed97SJoonyoung Shim# Amp
13729b0a25f0SLars-Peter Clausenconfig SND_SOC_LM4857
13739b0a25f0SLars-Peter Clausen	tristate
13749b0a25f0SLars-Peter Clausen
1375fa8d9151SNeil Armstrongconfig SND_SOC_MAX9759
1376fa8d9151SNeil Armstrong	tristate "Maxim MAX9759 speaker Amplifier"
1377fa8d9151SNeil Armstrong	select GPIOLIB
1378fa8d9151SNeil Armstrong
1379394d2bbaSWolfram Sangconfig SND_SOC_MAX9768
1380394d2bbaSWolfram Sang	tristate
1381394d2bbaSWolfram Sang
13829db9ed97SJoonyoung Shimconfig SND_SOC_MAX9877
13839db9ed97SJoonyoung Shim	tristate
1384493b67efSPeter Ujfalusi
13858b908b86SPhilippe Rétornazconfig SND_SOC_MC13783
13868b908b86SPhilippe Rétornaz	tristate
13878b908b86SPhilippe Rétornaz
1388d808fe9fSTomoya MORINAGAconfig SND_SOC_ML26124
1389d808fe9fSTomoya MORINAGA	tristate
1390d808fe9fSTomoya MORINAGA
1391a74d51baSKai Chieh Chuangconfig SND_SOC_MT6351
1392a74d51baSKai Chieh Chuang	tristate "MediaTek MT6351 Codec"
1393a74d51baSKai Chieh Chuang
13946a8d4198SShunli Wangconfig SND_SOC_MT6358
13956a8d4198SShunli Wang	tristate "MediaTek MT6358 Codec"
13966a8d4198SShunli Wang	help
13976a8d4198SShunli Wang	  Enable support for the platform which uses MT6358 as
13986a8d4198SShunli Wang	  external codec device.
13996a8d4198SShunli Wang
1400c1644e3dSJohn Hsuconfig SND_SOC_NAU8540
1401c1644e3dSJohn Hsu       tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
1402c1644e3dSJohn Hsu       depends on I2C
1403c1644e3dSJohn Hsu
1404b6970b48SJohn Hsuconfig SND_SOC_NAU8810
1405b6970b48SJohn Hsu	tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
1406b6970b48SJohn Hsu	depends on I2C
1407b6970b48SJohn Hsu
14081e3cb6c3SDavid Linconfig SND_SOC_NAU8822
14091e3cb6c3SDavid Lin	tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
14101e3cb6c3SDavid Lin	depends on I2C
14111e3cb6c3SDavid Lin
1412dfeabdedSJohn Hsuconfig SND_SOC_NAU8824
1413dfeabdedSJohn Hsu	tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
1414dfeabdedSJohn Hsu	depends on I2C
1415dfeabdedSJohn Hsu
141634ca27f3SAnatol Pomozovconfig SND_SOC_NAU8825
141734ca27f3SAnatol Pomozov	tristate
141834ca27f3SAnatol Pomozov
1419493b67efSPeter Ujfalusiconfig SND_SOC_TPA6130A2
14201291e141SMark Brown	tristate "Texas Instruments TPA6130A2 headphone amplifier"
14211291e141SMark Brown	depends on I2C
14224d1a7722SMark Brown
14234d1a7722SMark Brownendmenu
1424