xref: /linux/sound/soc/codecs/Kconfig (revision a9e6060bb2a6cae6d43a98ec0794844ad01273d3)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2227b4dc6SMark Brown# Helper to resolve issues with configs that have SPI enabled but I2C
3227b4dc6SMark Brown# modular, meaning we can't build the codec driver in with I2C support.
4227b4dc6SMark Brown# We use an ordered list of conditional defaults to pick the appropriate
5227b4dc6SMark Brown# setting - SPI can't be modular so that case doesn't need to be covered.
6227b4dc6SMark Brownconfig SND_SOC_I2C_AND_SPI
7227b4dc6SMark Brown	tristate
8227b4dc6SMark Brown	default m if I2C=m
9227b4dc6SMark Brown	default y if I2C=y
10227b4dc6SMark Brown	default y if SPI_MASTER=y
11227b4dc6SMark Brown
124d1a7722SMark Brownmenu "CODEC drivers"
134d1a7722SMark Brown
140c941615SMark Brownconfig SND_SOC_ALL_CODECS
150c941615SMark Brown	tristate "Build all ASoC CODEC drivers"
1664b0c282SMark Brown	depends on COMPILE_TEST
17ea00d952SGeert Uytterhoeven	imply SND_SOC_88PM860X
18ea00d952SGeert Uytterhoeven	imply SND_SOC_AB8500_CODEC
19ea00d952SGeert Uytterhoeven	imply SND_SOC_AC97_CODEC
20ea00d952SGeert Uytterhoeven	imply SND_SOC_AD1836
21ea00d952SGeert Uytterhoeven	imply SND_SOC_AD193X_SPI
22ea00d952SGeert Uytterhoeven	imply SND_SOC_AD193X_I2C
23ea00d952SGeert Uytterhoeven	imply SND_SOC_AD1980
24ea00d952SGeert Uytterhoeven	imply SND_SOC_AD73311
256cd4c645SLars-Peter Clausen	imply SND_SOC_ADAU1372_I2C
266cd4c645SLars-Peter Clausen	imply SND_SOC_ADAU1372_SPI
27ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1373
28ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1761_I2C
29ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1761_SPI
30ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1781_I2C
31ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1781_SPI
32ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAV801
33ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAV803
34ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1977_SPI
35ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1977_I2C
36ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1701
37ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU7002
38ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU7118_I2C
39ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU7118_HW
40ea00d952SGeert Uytterhoeven	imply SND_SOC_ADS117X
41ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4104
42ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4118
4353778b82SVincent Knecht	imply SND_SOC_AK4375
44ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4458
45ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4535
46ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4554
47ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4613
48ca73d314SKhanh Le	imply SND_SOC_AK4619
49ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4641
50ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4642
51ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4671
52ea00d952SGeert Uytterhoeven	imply SND_SOC_AK5386
53ea00d952SGeert Uytterhoeven	imply SND_SOC_AK5558
54ea00d952SGeert Uytterhoeven	imply SND_SOC_ALC5623
55ea00d952SGeert Uytterhoeven	imply SND_SOC_ALC5632
561d298ad8SHerve Codina	imply SND_SOC_AUDIO_IIO_AUX
576b4528b5SJonathan Albrieux	imply SND_SOC_AW8738
584717636fSWeidong Wang	imply SND_SOC_AW87390
5914bd8572SWeidong Wang	imply SND_SOC_AW88395
6088264e4fSWeidong Wang	imply SND_SOC_AW88081
6194e412c2SWeidong Wang	imply SND_SOC_AW88166
62028a2ae2SWeidong Wang	imply SND_SOC_AW88261
638ade6cc7SWeidong Wang	imply SND_SOC_AW88399
64ea00d952SGeert Uytterhoeven	imply SND_SOC_BT_SCO
65ea00d952SGeert Uytterhoeven	imply SND_SOC_BD28623
6661ed3034SPaweł Anikiel	imply SND_SOC_CHV3_CODEC
67ea00d952SGeert Uytterhoeven	imply SND_SOC_CQ0093VC
68ea00d952SGeert Uytterhoeven	imply SND_SOC_CROS_EC_CODEC
69ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L32
70ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L33
71ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L34
72ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L35
73ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L36
746450ef55SDavid Rhodes	imply SND_SOC_CS35L41_SPI
756450ef55SDavid Rhodes	imply SND_SOC_CS35L41_I2C
760d463d01SJames Schulman	imply SND_SOC_CS35L45_I2C
770d463d01SJames Schulman	imply SND_SOC_CS35L45_SPI
78e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_I2C
79e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_SPI
80e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_SDW
81c486def5SJames Ogletree	imply SND_SOC_CS40L50
82ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L42
8390f6a2a2SRichard Fitzgerald	imply SND_SOC_CS42L42_SDW
84fc918cbeSCharles Keepax	imply SND_SOC_CS42L43
85fc918cbeSCharles Keepax	imply SND_SOC_CS42L43_SDW
86ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L51_I2C
87ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L52
88ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L56
89ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L73
90250304a0SMartin Povišer	imply SND_SOC_CS42L84
91d4edae9cSLucas Tanure	imply SND_SOC_CS4234
92ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4265
93ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4270
94ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4271_I2C
95ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4271_SPI
96ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42XX8_I2C
97ea00d952SGeert Uytterhoeven	imply SND_SOC_CS43130
98ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4341
99ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4349
100ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L15
101ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L24
102ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L35
103ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L85
104ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L90
105ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L92
106e2bcbf99SRichard Fitzgerald	imply SND_SOC_CS48L32
107ea00d952SGeert Uytterhoeven	imply SND_SOC_CS53L30
1082884c291SPaul Handrigan	imply SND_SOC_CS530X_I2C
109ea00d952SGeert Uytterhoeven	imply SND_SOC_CX20442
110ea00d952SGeert Uytterhoeven	imply SND_SOC_CX2072X
111ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7210
112ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7213
113ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7218
114ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7219
115ea00d952SGeert Uytterhoeven	imply SND_SOC_DA732X
116ea00d952SGeert Uytterhoeven	imply SND_SOC_DA9055
117ea00d952SGeert Uytterhoeven	imply SND_SOC_DMIC
118ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8316
119b97391a6SBinbin Zhou	imply SND_SOC_ES8323
1205c439937SZhu Ning	imply SND_SOC_ES8326
121ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8328_SPI
122ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8328_I2C
123*de2b3119SZhang Yi	imply SND_SOC_ES8375
1240319c268SZhang Yi	imply SND_SOC_ES8389
125ea00d952SGeert Uytterhoeven	imply SND_SOC_ES7134
126ea00d952SGeert Uytterhoeven	imply SND_SOC_ES7241
127a9a0303dSHerve Codina	imply SND_SOC_FRAMER
128ea00d952SGeert Uytterhoeven	imply SND_SOC_GTM601
129ea00d952SGeert Uytterhoeven	imply SND_SOC_HDAC_HDMI
130ea00d952SGeert Uytterhoeven	imply SND_SOC_HDAC_HDA
131ea00d952SGeert Uytterhoeven	imply SND_SOC_ICS43432
132e5116699SHerve Codina	imply SND_SOC_IDT821034
133ea00d952SGeert Uytterhoeven	imply SND_SOC_INNO_RK3036
134ea00d952SGeert Uytterhoeven	imply SND_SOC_ISABELLE
135ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4740_CODEC
136ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4725B_CODEC
137d9cd22e9SChristophe Branchereau	imply SND_SOC_JZ4760_CODEC
138ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4770_CODEC
139ea00d952SGeert Uytterhoeven	imply SND_SOC_LM4857
140ea00d952SGeert Uytterhoeven	imply SND_SOC_LM49453
141ea00d952SGeert Uytterhoeven	imply SND_SOC_LOCHNAGAR_SC
142ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98088
143ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98090
144ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98095
145ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98357A
146ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98371
147ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98504
148f88ee76bSGeorge Song	imply SND_SOC_MAX98520
149ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9867
150ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98925
151ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98926
152ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98927
15318c0af94SRyan Lee	imply SND_SOC_MAX98363
154d7ee0c72SPierre-Louis Bossart	imply SND_SOC_MAX98373_I2C
15556a5b791SRyan Lee	imply SND_SOC_MAX98373_SDW
1566a8e1d46SRyan Lee	imply SND_SOC_MAX98388
157a6e3f4f3SSteve Lee	imply SND_SOC_MAX98390
158b5858113SRyan Lee	imply SND_SOC_MAX98396
159ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9850
160ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9860
161ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9759
162ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9768
163ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9877
164ea00d952SGeert Uytterhoeven	imply SND_SOC_MC13783
165ea00d952SGeert Uytterhoeven	imply SND_SOC_ML26124
166ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6351
1675e240449SNicolas Belin	imply SND_SOC_MT6357
168ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6358
1698061734aSJiaxin Yu	imply SND_SOC_MT6359
170ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6660
1714d1a9952SDavid Lin	imply SND_SOC_NAU8315
172ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8540
173ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8810
174aab1ad11SSeven Lee	imply SND_SOC_NAU8821
175ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8822
176ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8824
177ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8825
178ea00d952SGeert Uytterhoeven	imply SND_SOC_HDMI_CODEC
179ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM1681
180ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM1789_I2C
181ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM179X_I2C
182ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM179X_SPI
183ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM186X_I2C
184ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM186X_SPI
185ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3008
186ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3060_I2C
187ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3060_SPI
188ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3168A_I2C
189ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3168A_SPI
190ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM5102A
191ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM512x_I2C
192ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM512x_SPI
1936bb1b706SShenghao Ding	imply SND_SOC_PCM6240
194227f609cSHerve Codina	imply SND_SOC_PEB2466
1954ed0915fSLuca Ceresoli	imply SND_SOC_RK3308
196ea00d952SGeert Uytterhoeven	imply SND_SOC_RK3328
1970d6a04daSChris Morgan	imply SND_SOC_RK817
198ea00d952SGeert Uytterhoeven	imply SND_SOC_RT274
199ea00d952SGeert Uytterhoeven	imply SND_SOC_RT286
200ea00d952SGeert Uytterhoeven	imply SND_SOC_RT298
201ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1011
202ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1015
203c07152d4STzung-Bi Shih	imply SND_SOC_RT1015P
204953b1388SStephen Kitt	imply SND_SOC_RT1016
2052b7aecd5SDerek Fang	imply SND_SOC_RT1017_SDCA_SDW
2067ec79d38SJack Yu	imply SND_SOC_RT1019
207ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1305
208ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1308
209ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5514
210ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5616
211ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5631
212ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5640
213ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5645
214ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5651
215ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5659
216ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5660
217ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5663
218ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5665
219ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5668
220ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5670
221ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5677
222a50067d4SArnd Bergmann	imply SND_SOC_RT5682_I2C
22303f6fc6dSOder Chiou	imply SND_SOC_RT5682_SDW
224bdd229abSDerek Fang	imply SND_SOC_RT5682S
225ea00d952SGeert Uytterhoeven	imply SND_SOC_RT700_SDW
226ea00d952SGeert Uytterhoeven	imply SND_SOC_RT711_SDW
2277ad4d237SShuming Fan	imply SND_SOC_RT711_SDCA_SDW
2286c39710dSShuming Fan	imply SND_SOC_RT712_SDCA_SDW
22963a51128SShuming Fan	imply SND_SOC_RT712_SDCA_DMIC_SDW
230ea00d952SGeert Uytterhoeven	imply SND_SOC_RT715_SDW
23120d17057SJack Yu	imply SND_SOC_RT715_SDCA_SDW
23286ce355cSJack Yu	imply SND_SOC_RT721_SDCA_SDW
2337f5d6036SJack Yu	imply SND_SOC_RT722_SDCA_SDW
234ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1308_SDW
2352b719fd2SShuming Fan	imply SND_SOC_RT1316_SDW
236fe1ff614SJack Yu	imply SND_SOC_RT1318
2376ad73a2bSShuming Fan	imply SND_SOC_RT1318_SDW
238bad0a07aSShuming Fan	imply SND_SOC_RT1320_SDW
2397228d835SChiYuan Huang	imply SND_SOC_RT9120
2408bffd24eSChiYuan Huang	imply SND_SOC_RT9123
241736064c6SChiYuan Huang	imply SND_SOC_RTQ9128
24281d3d3d0SPierre-Louis Bossart	imply SND_SOC_SDW_MOCKUP
243ea00d952SGeert Uytterhoeven	imply SND_SOC_SGTL5000
244ea00d952SGeert Uytterhoeven	imply SND_SOC_SI476X
245ea00d952SGeert Uytterhoeven	imply SND_SOC_SIMPLE_AMPLIFIER
246342fbb75SAlexandre Belloni	imply SND_SOC_SIMPLE_MUX
24768cd394eSKiseokJo	imply SND_SOC_SMA1303
248576c57e6SKiseok Jo	imply SND_SOC_SMA1307
249ea00d952SGeert Uytterhoeven	imply SND_SOC_SPDIF
2504e6bedd3SMatt Flax	imply SND_SOC_SRC4XXX_I2C
251ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2305
252ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2518
253ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2602_SPI
254ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2602_I2C
255ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM4567
256ea00d952SGeert Uytterhoeven	imply SND_SOC_STA32X
257ea00d952SGeert Uytterhoeven	imply SND_SOC_STA350
258ea00d952SGeert Uytterhoeven	imply SND_SOC_STA529
259ea00d952SGeert Uytterhoeven	imply SND_SOC_STAC9766
260ea00d952SGeert Uytterhoeven	imply SND_SOC_STI_SAS
261ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2552
262ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2562
263827ed8a0SDan Murphy	imply SND_SOC_TAS2764
264ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2770
265eae9f9ceSRaphael-Xu	imply SND_SOC_TAS2780
266ef3bcde7SShenghao Ding	imply SND_SOC_TAS2781_COMLIB
2679fa6a693SShenghao Ding	imply SND_SOC_TAS2781_COMLIB_I2C
268ef3bcde7SShenghao Ding	imply SND_SOC_TAS2781_FMWLIB
269ef3bcde7SShenghao Ding	imply SND_SOC_TAS2781_I2C
270ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS5086
271ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS571X
272ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS5720
273ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS6424
274ea00d952SGeert Uytterhoeven	imply SND_SOC_TDA7419
275ea00d952SGeert Uytterhoeven	imply SND_SOC_TFA9879
276af00978aSStephan Gerhold	imply SND_SOC_TFA989X
277e9a3b57eSRicard Wanderlof	imply SND_SOC_TLV320ADC3XXX
278689c7655SDan Murphy	imply SND_SOC_TLV320ADCX140
279ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC23_I2C
280ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC23_SPI
281ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC26
282ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC31XX
283ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC32X4_I2C
284ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC32X4_SPI
285a96d2ba2SJiri Prchal	imply SND_SOC_TLV320AIC3X_I2C
286fd4daab3SJiri Prchal	imply SND_SOC_TLV320AIC3X_SPI
287ea00d952SGeert Uytterhoeven	imply SND_SOC_TPA6130A2
288ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320DAC33
289ea00d952SGeert Uytterhoeven	imply SND_SOC_TSCS42XX
290ea00d952SGeert Uytterhoeven	imply SND_SOC_TSCS454
291ea00d952SGeert Uytterhoeven	imply SND_SOC_TS3A227E
292ea00d952SGeert Uytterhoeven	imply SND_SOC_TWL4030
293ea00d952SGeert Uytterhoeven	imply SND_SOC_TWL6040
294ea00d952SGeert Uytterhoeven	imply SND_SOC_UDA1334
295de0fb25eSBinbin Zhou	imply SND_SOC_UDA1342
296ea00d952SGeert Uytterhoeven	imply SND_SOC_UDA1380
297ea00d952SGeert Uytterhoeven	imply SND_SOC_WCD9335
298ea00d952SGeert Uytterhoeven	imply SND_SOC_WCD934X
299313e978dSPrasad Kumpatla	imply SND_SOC_WCD937X_SDW
3002039cc1dSLukas Bulwahn	imply SND_SOC_WCD938X_SDW
301be2af391SNeil Armstrong	imply SND_SOC_WCD939X_SDW
3029e3d83c5SSrinivasa Rao Mandadapu	imply SND_SOC_LPASS_MACRO_COMMON
303af3d54b9SSrinivas Kandagatla	imply SND_SOC_LPASS_RX_MACRO
304c39667ddSSrinivas Kandagatla	imply SND_SOC_LPASS_TX_MACRO
305ea00d952SGeert Uytterhoeven	imply SND_SOC_WL1273
306ea00d952SGeert Uytterhoeven	imply SND_SOC_WM0010
307ea00d952SGeert Uytterhoeven	imply SND_SOC_WM1250_EV1
308ea00d952SGeert Uytterhoeven	imply SND_SOC_WM2000
309ea00d952SGeert Uytterhoeven	imply SND_SOC_WM2200
310ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5100
311ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5102
312ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5110
313ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8350
314ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8400
315ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8510
316ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8523
317ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8524
318ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8580
319ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8711
320ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8727
321ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8728
3229dc15f81SMark Brown	imply SND_SOC_WM8731_I2C
3239dc15f81SMark Brown	imply SND_SOC_WM8731_SPI
324ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8737
325ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8741
326ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8750
327ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8753
328ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8770
329ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8776
330ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8782
331ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8804_I2C
332ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8804_SPI
333ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8900
334ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8903
335ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8904
336ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8940
337ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8955
338ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8960
339ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8961
340ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8962
341ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8971
342ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8974
343ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8978
344ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8983
345ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8985
346ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8988
347ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8990
348ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8991
349ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8993
350ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8994
351ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8995
352ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8996
353ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8997
354ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8998
355ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9081
356ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9090
357ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9705
358ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9712
359ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9713
360ea00d952SGeert Uytterhoeven	imply SND_SOC_WSA881X
36143b8c7dcSSrinivas Kandagatla	imply SND_SOC_WSA883X
362aa21a7d4SKrzysztof Kozlowski	imply SND_SOC_WSA884X
36352e8a94bSSven Van Asbroeck	imply SND_SOC_ZL38060
3640c941615SMark Brown	help
3650c941615SMark Brown	  Normally ASoC codec drivers are only built if a machine driver which
3660c941615SMark Brown	  uses them is also built since they are only usable with a machine
3670c941615SMark Brown	  driver.  Selecting this option will allow these drivers to be built
3680c941615SMark Brown	  without an explicit machine driver for test and development purposes.
3690c941615SMark Brown
370ca53fb24SMark Brown	  Support for the bus types used to access the codecs to be built must
371ca53fb24SMark Brown	  be selected separately.
372ca53fb24SMark Brown
3730c941615SMark Brown	  If unsure select "N".
3740c941615SMark Brown
375f213f4b5SHaojian Zhuangconfig SND_SOC_88PM860X
376f213f4b5SHaojian Zhuang	tristate
377ea00d952SGeert Uytterhoeven	depends on MFD_88PM860X
378f213f4b5SHaojian Zhuang
37907ed873eSMark Brownconfig SND_SOC_ARIZONA
38007ed873eSMark Brown	tristate
3816610550cSRichard Fitzgerald	default y if SND_SOC_CS47L24=y
38207ed873eSMark Brown	default y if SND_SOC_WM5102=y
3835c6af635SMark Brown	default y if SND_SOC_WM5110=y
38440843aeaSCharles Keepax	default y if SND_SOC_WM8997=y
3856ebbce0aSRichard Fitzgerald	default y if SND_SOC_WM8998=y
3866610550cSRichard Fitzgerald	default m if SND_SOC_CS47L24=m
38707ed873eSMark Brown	default m if SND_SOC_WM5102=m
3885c6af635SMark Brown	default m if SND_SOC_WM5110=m
38940843aeaSCharles Keepax	default m if SND_SOC_WM8997=m
3906ebbce0aSRichard Fitzgerald	default m if SND_SOC_WM8998=m
39107ed873eSMark Brown
392a2342ae3SMark Brownconfig SND_SOC_WM_HUBS
393a2342ae3SMark Brown	tristate
39441f9a314SChanwoo Choi	default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
39541f9a314SChanwoo Choi	default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
3960c941615SMark Brown
3972159ad93SMark Brownconfig SND_SOC_WM_ADSP
3982159ad93SMark Brown	tristate
399d7cfdf17SRichard Fitzgerald	select FW_CS_DSP
4001d981e0aSCharles Keepax	select SND_SOC_COMPRESS
4012735b683SRichard Fitzgerald	default y if SND_SOC_MADERA=y
4026610550cSRichard Fitzgerald	default y if SND_SOC_CS47L24=y
403804f5ba7SMark Brown	default y if SND_SOC_WM5102=y
4049a3e1b8cSMark Brown	default y if SND_SOC_WM5110=y
4052159ad93SMark Brown	default y if SND_SOC_WM2200=y
406bae9e13fSDavid Rhodes	default y if SND_SOC_CS35L41_SPI=y
407bae9e13fSDavid Rhodes	default y if SND_SOC_CS35L41_I2C=y
40874b14e28SVlad.Karpovich	default y if SND_SOC_CS35L45_SPI=y
40974b14e28SVlad.Karpovich	default y if SND_SOC_CS35L45_I2C=y
410e4961125SRichard Fitzgerald	default y if SND_SOC_CS35L56=y
411e2bcbf99SRichard Fitzgerald	default y if SND_SOC_CS48L32=y
4122735b683SRichard Fitzgerald	default m if SND_SOC_MADERA=m
4136610550cSRichard Fitzgerald	default m if SND_SOC_CS47L24=m
414804f5ba7SMark Brown	default m if SND_SOC_WM5102=m
4159a3e1b8cSMark Brown	default m if SND_SOC_WM5110=m
4162159ad93SMark Brown	default m if SND_SOC_WM2200=m
417bae9e13fSDavid Rhodes	default m if SND_SOC_CS35L41_SPI=m
418bae9e13fSDavid Rhodes	default m if SND_SOC_CS35L41_I2C=m
41974b14e28SVlad.Karpovich	default m if SND_SOC_CS35L45_SPI=m
42074b14e28SVlad.Karpovich	default m if SND_SOC_CS35L45_I2C=m
421e4961125SRichard Fitzgerald	default m if SND_SOC_CS35L56=m
422e2bcbf99SRichard Fitzgerald	default m if SND_SOC_CS48L32=m
4232159ad93SMark Brown
424679d7abdSOla Liljaconfig SND_SOC_AB8500_CODEC
425679d7abdSOla Lilja	tristate
426d8dd3f92SGeert Uytterhoeven	depends on ABX500_CORE
427679d7abdSOla Lilja
4287f137ab6SRichard Purdieconfig SND_SOC_AC97_CODEC
429a60abdf9SMaciej S. Szmigiero	tristate "Build generic ASoC AC97 CODEC driver"
43089fe5117STakashi Iwai	select SND_AC97_CODEC
431a60abdf9SMaciej S. Szmigiero	select SND_SOC_AC97_BUS
4327f137ab6SRichard Purdie
4337eaae41eSBarry Songconfig SND_SOC_AD1836
4347eaae41eSBarry Song	tristate
435ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
4367eaae41eSBarry Song
437a1533d94SBarry Songconfig SND_SOC_AD193X
4381274738dSBarry Song	tristate
4391274738dSBarry Song
4406c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_SPI
4416c3d713eSLars-Peter Clausen	tristate
442ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
4436c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
4446c3d713eSLars-Peter Clausen
4456c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_I2C
4466c3d713eSLars-Peter Clausen	tristate
4471d0158f5SGeert Uytterhoeven	depends on I2C
4486c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
4496c3d713eSLars-Peter Clausen
4505f57dc8bSCliff Caiconfig SND_SOC_AD1980
4515f57dc8bSCliff Cai	tristate
452d8dd3f92SGeert Uytterhoeven	depends on SND_SOC_AC97_BUS
453d8dd3f92SGeert Uytterhoeven	select REGMAP_AC97
4545f57dc8bSCliff Cai
4550e77e784SCliff Caiconfig SND_SOC_AD73311
4560e77e784SCliff Cai	tristate
4570e77e784SCliff Cai
4580eadaa9cSLars-Peter Clausenconfig SND_SOC_ADAU_UTILS
4590eadaa9cSLars-Peter Clausen	tristate
4600eadaa9cSLars-Peter Clausen
4616cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372
4626cd4c645SLars-Peter Clausen	tristate
4636cd4c645SLars-Peter Clausen	select SND_SOC_ADAU_UTILS
4646cd4c645SLars-Peter Clausen
4656cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372_I2C
4666cd4c645SLars-Peter Clausen	tristate "Analog Devices ADAU1372 CODEC (I2C)"
467adc7d561SAlexandre Belloni	depends on I2C
4686cd4c645SLars-Peter Clausen	select SND_SOC_ADAU1372
4696cd4c645SLars-Peter Clausen	select REGMAP_I2C
4706cd4c645SLars-Peter Clausen
4716cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372_SPI
4726cd4c645SLars-Peter Clausen	tristate "Analog Devices ADAU1372 CODEC (SPI)"
473adc7d561SAlexandre Belloni	depends on SPI
4746cd4c645SLars-Peter Clausen	select SND_SOC_ADAU1372
4756cd4c645SLars-Peter Clausen	select REGMAP_SPI
4766cd4c645SLars-Peter Clausen
4774101866cSLars-Peter Clausenconfig SND_SOC_ADAU1373
478bebf0f45SNuno Sa	tristate "Analog Devices ADAU1373 CODEC"
4791d0158f5SGeert Uytterhoeven	depends on I2C
4800eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
4814101866cSLars-Peter Clausen
482631ed8a2SLars-Peter Clausenconfig SND_SOC_ADAU1701
4831291e141SMark Brown	tristate "Analog Devices ADAU1701 CODEC"
4841291e141SMark Brown	depends on I2C
4856b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_I2C
486631ed8a2SLars-Peter Clausen
4874101866cSLars-Peter Clausenconfig SND_SOC_ADAU17X1
488ddd7a260SLars-Peter Clausen	tristate
4896b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_REGMAP
4900eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
491ddd7a260SLars-Peter Clausen
492dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761
493dab464b6SLars-Peter Clausen	tristate
494dab464b6SLars-Peter Clausen	select SND_SOC_ADAU17X1
495dab464b6SLars-Peter Clausen
496dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_I2C
497e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - I2C"
498e54fde61SBryce Ferguson	depends on I2C
499dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
500dab464b6SLars-Peter Clausen	select REGMAP_I2C
501dab464b6SLars-Peter Clausen
502dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_SPI
503e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - SPI"
504e54fde61SBryce Ferguson	depends on SPI
505dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
506dab464b6SLars-Peter Clausen	select REGMAP_SPI
507dab464b6SLars-Peter Clausen
5082923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781
5092923af02SLars-Peter Clausen	select SND_SOC_ADAU17X1
5102923af02SLars-Peter Clausen	tristate
5112923af02SLars-Peter Clausen
5122923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_I2C
5132923af02SLars-Peter Clausen	tristate
5141d0158f5SGeert Uytterhoeven	depends on I2C
5152923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
5162923af02SLars-Peter Clausen	select REGMAP_I2C
5172923af02SLars-Peter Clausen
5182923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_SPI
5192923af02SLars-Peter Clausen	tristate
520ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
5212923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
5222923af02SLars-Peter Clausen	select REGMAP_SPI
5232dcf9fb9SGraeme Gregory
524603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977
525603597c9SLars-Peter Clausen	tristate
526603597c9SLars-Peter Clausen
527603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_SPI
528603597c9SLars-Peter Clausen	tristate
529ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
530603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
531603597c9SLars-Peter Clausen	select REGMAP_SPI
532603597c9SLars-Peter Clausen
533603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_I2C
534603597c9SLars-Peter Clausen	tristate
5351d0158f5SGeert Uytterhoeven	depends on I2C
536603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
537603597c9SLars-Peter Clausen	select REGMAP_I2C
538603597c9SLars-Peter Clausen
539a0d3546cSLars-Peter Clausenconfig SND_SOC_ADAU7002
540a0d3546cSLars-Peter Clausen	tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
541a0d3546cSLars-Peter Clausen
542ca514c0fSNuno Sáconfig SND_SOC_ADAU7118
543ca514c0fSNuno Sá	tristate
544ca514c0fSNuno Sá
545ca514c0fSNuno Sáconfig SND_SOC_ADAU7118_HW
546ca514c0fSNuno Sá	tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode"
547ca514c0fSNuno Sá	select SND_SOC_ADAU7118
548ca514c0fSNuno Sá	help
549ca514c0fSNuno Sá	  Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
550ca514c0fSNuno Sá	  Converter. In this mode, the device works in standalone mode which
5514ad2d3cfSColin Ian King	  means that there is no bus to communicate with it. Stereo mode is not
552ca514c0fSNuno Sá	  supported in this mode.
553ca514c0fSNuno Sá
554ca514c0fSNuno Sá	  To compile this driver as a module, choose M here: the module
555ca514c0fSNuno Sá	  will be called snd-soc-adau7118-hw.
556ca514c0fSNuno Sá
557ca514c0fSNuno Sáconfig SND_SOC_ADAU7118_I2C
558ca514c0fSNuno Sá	tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C"
559de729862SYueHaibing	depends on I2C
560ca514c0fSNuno Sá	select SND_SOC_ADAU7118
561ca514c0fSNuno Sá	select REGMAP_I2C
562ca514c0fSNuno Sá	help
563ca514c0fSNuno Sá	  Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
564ca514c0fSNuno Sá	  Converter over I2C. This gives full support over the device.
565ca514c0fSNuno Sá
566ca514c0fSNuno Sá	  To compile this driver as a module, choose M here: the module
567ca514c0fSNuno Sá	  will be called snd-soc-adau7118-i2c.
568ca514c0fSNuno Sá
5692dcf9fb9SGraeme Gregoryconfig SND_SOC_ADAV80X
5702dcf9fb9SGraeme Gregory	tristate
571a381934eSDaniel Mack
5720c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV801
5730c2d6964SLars-Peter Clausen	tristate
574ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
5750c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
5760c2d6964SLars-Peter Clausen
5770c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV803
5780c2d6964SLars-Peter Clausen	tristate
5791d0158f5SGeert Uytterhoeven	depends on I2C
5800c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
5810c2d6964SLars-Peter Clausen
582a381934eSDaniel Mackconfig SND_SOC_ADS117X
583a381934eSDaniel Mack	tristate
584796d2ca8SRichard Purdie
585796d2ca8SRichard Purdieconfig SND_SOC_AK4104
5861291e141SMark Brown	tristate "AKM AK4104 CODEC"
5871291e141SMark Brown	depends on SPI_MASTER
5883e860846SMark Brown
589bf897b44SAdrien Charruelconfig SND_SOC_AK4118
590bf897b44SAdrien Charruel	tristate "AKM AK4118 CODEC"
591bf897b44SAdrien Charruel	depends on I2C
592bf897b44SAdrien Charruel	select REGMAP_I2C
593bf897b44SAdrien Charruel
59453778b82SVincent Knechtconfig SND_SOC_AK4375
59553778b82SVincent Knecht	tristate "AKM AK4375 CODEC"
59653778b82SVincent Knecht	depends on I2C
59753778b82SVincent Knecht	select REGMAP_I2C
59853778b82SVincent Knecht	help
59953778b82SVincent Knecht	  Enable support for the Asahi-Kasei AK4375 codec.
60053778b82SVincent Knecht
60153778b82SVincent Knecht	  To compile this driver as a module, choose M here: the module
60253778b82SVincent Knecht	  will be called snd-soc-ak4375.
60353778b82SVincent Knecht
60408660086SCosmin-Gabriel Samoilaconfig SND_SOC_AK4458
60508660086SCosmin-Gabriel Samoila	tristate "AKM AK4458 CODEC"
60608660086SCosmin-Gabriel Samoila	depends on I2C
60708660086SCosmin-Gabriel Samoila	select REGMAP_I2C
60808660086SCosmin-Gabriel Samoila
609796d2ca8SRichard Purdieconfig SND_SOC_AK4535
610796d2ca8SRichard Purdie	tristate
6111d0158f5SGeert Uytterhoeven	depends on I2C
612796d2ca8SRichard Purdie
613a2911cdbSKuninori Morimotoconfig SND_SOC_AK4554
6141291e141SMark Brown	tristate "AKM AK4554 CODEC"
615a2911cdbSKuninori Morimoto
616b0757062SKuninori Morimotoconfig SND_SOC_AK4613
617b0757062SKuninori Morimoto	tristate "AKM AK4613 CODEC"
618b0757062SKuninori Morimoto	depends on I2C
619b0757062SKuninori Morimoto
620ca73d314SKhanh Leconfig SND_SOC_AK4619
621ca73d314SKhanh Le        tristate "AKM AK4619 CODEC"
622ca73d314SKhanh Le        depends on I2C
623ca73d314SKhanh Le
62400d27010SDmitry Artamonowconfig SND_SOC_AK4641
62500d27010SDmitry Artamonow	tristate
6261d0158f5SGeert Uytterhoeven	depends on I2C
62700d27010SDmitry Artamonow
628a3a83d9aSKuninori Morimotoconfig SND_SOC_AK4642
6291291e141SMark Brown	tristate "AKM AK4642 CODEC"
6301291e141SMark Brown	depends on I2C
631a3a83d9aSKuninori Morimoto
6322312fd8fSJoonyoung Shimconfig SND_SOC_AK4671
6332312fd8fSJoonyoung Shim	tristate
6341d0158f5SGeert Uytterhoeven	depends on I2C
6352312fd8fSJoonyoung Shim
636cc289be8SDaniel Mackconfig SND_SOC_AK5386
6371291e141SMark Brown	tristate "AKM AK5638 CODEC"
638cc289be8SDaniel Mack
63992088477SDaniel Balutaconfig SND_SOC_AK5558
64092088477SDaniel Baluta	tristate "AKM AK5558 CODEC"
64192088477SDaniel Baluta	depends on I2C
64292088477SDaniel Baluta	select REGMAP_I2C
64392088477SDaniel Baluta
6446f4bc952SArnaud Patard (Rtp)config SND_SOC_ALC5623
6457d6d478fSAndrew Lunn	tristate "Realtek ALC5623 CODEC"
6465dc04f51STakashi Iwai	depends on I2C
6471291e141SMark Brown
64894d5f7c0SLeon Romanovskyconfig SND_SOC_ALC5632
64994d5f7c0SLeon Romanovsky	tristate
650ce0c97f8SGeert Uytterhoeven	depends on I2C
6516f4bc952SArnaud Patard (Rtp)
6521d298ad8SHerve Codinaconfig SND_SOC_AUDIO_IIO_AUX
6531d298ad8SHerve Codina	tristate "Audio IIO Auxiliary device"
6541d298ad8SHerve Codina	depends on IIO
6551d298ad8SHerve Codina	help
6561d298ad8SHerve Codina	  Enable support for Industrial I/O devices as audio auxiliary devices.
6571d298ad8SHerve Codina	  This allows to have an IIO device present in the audio path and
6581d298ad8SHerve Codina	  controlled using mixer controls.
6591d298ad8SHerve Codina
6601d298ad8SHerve Codina	  To compile this driver as a module, choose M here: the module
6611d298ad8SHerve Codina	  will be called snd-soc-audio-iio-aux.
6621d298ad8SHerve Codina
6636b4528b5SJonathan Albrieuxconfig SND_SOC_AW8738
6646b4528b5SJonathan Albrieux	tristate "Awinic AW8738 Audio Amplifier"
6656b4528b5SJonathan Albrieux	select GPIOLIB
6666b4528b5SJonathan Albrieux	help
6676b4528b5SJonathan Albrieux	  Enable support for the Awinic AW8738 audio amplifier (or similar).
6686b4528b5SJonathan Albrieux	  The driver supports simple audio amplifiers similar to
6696b4528b5SJonathan Albrieux	  SND_SOC_SIMPLE_AMPLIFIER, but additionally allows setting the
6706b4528b5SJonathan Albrieux	  operation mode using the Awinic-specific one-wire pulse control.
6716b4528b5SJonathan Albrieux
67214bd8572SWeidong Wangconfig SND_SOC_AW88395_LIB
6734717636fSWeidong Wang	select CRC8
67414bd8572SWeidong Wang	tristate
67514bd8572SWeidong Wang
67614bd8572SWeidong Wangconfig SND_SOC_AW88395
67714bd8572SWeidong Wang	tristate "Soc Audio for awinic aw88395"
67814bd8572SWeidong Wang	depends on I2C
67914bd8572SWeidong Wang	select CRC32
68014bd8572SWeidong Wang	select REGMAP_I2C
6814680716dSWeidong Wang	select GPIOLIB
68214bd8572SWeidong Wang	select SND_SOC_AW88395_LIB
68314bd8572SWeidong Wang	help
68414bd8572SWeidong Wang	  this option enables support for aw88395 Smart PA.
68514bd8572SWeidong Wang	  The Awinic AW88395 is an I2S/TDM input, high efficiency
68614bd8572SWeidong Wang	  digital Smart K audio amplifier with an integrated 10V
68714bd8572SWeidong Wang	  smart boost convert.
68814bd8572SWeidong Wang
68994e412c2SWeidong Wangconfig SND_SOC_AW88166
69094e412c2SWeidong Wang	tristate "Soc Audio for awinic aw88166"
69194e412c2SWeidong Wang	depends on I2C
69294e412c2SWeidong Wang	select REGMAP_I2C
69394e412c2SWeidong Wang	select GPIOLIB
69494e412c2SWeidong Wang	select SND_SOC_AW88395_LIB
69594e412c2SWeidong Wang	help
69694e412c2SWeidong Wang	  This option enables support for aw88166 Smart PA.
69794e412c2SWeidong Wang	  The awinic AW88166 is an I2S/TDM input, high efficiency
69894e412c2SWeidong Wang	  digital Smart K audio amplifier with sound quality
69994e412c2SWeidong Wang	  enhancement algorithms and speaker protection.
70094e412c2SWeidong Wang
701028a2ae2SWeidong Wangconfig SND_SOC_AW88261
702028a2ae2SWeidong Wang	tristate "Soc Audio for awinic aw88261"
703028a2ae2SWeidong Wang	depends on I2C
704028a2ae2SWeidong Wang	select REGMAP_I2C
705028a2ae2SWeidong Wang	select GPIOLIB
706028a2ae2SWeidong Wang	select SND_SOC_AW88395_LIB
707028a2ae2SWeidong Wang	help
708028a2ae2SWeidong Wang	  This option enables support for aw88261 Smart PA.
709028a2ae2SWeidong Wang	  The awinic AW88261 is an I2S/TDM input, high efficiency
710028a2ae2SWeidong Wang	  digital Smart K audio amplifier. The output voltage of
711028a2ae2SWeidong Wang	  boost converter can be adjusted smartly according to
712028a2ae2SWeidong Wang	  the input amplitude.
713028a2ae2SWeidong Wang
71488264e4fSWeidong Wangconfig SND_SOC_AW88081
715be947cc0SWeidong Wang	tristate "Soc Audio for awinic aw88081/aw88083"
71688264e4fSWeidong Wang	depends on I2C
71788264e4fSWeidong Wang	select REGMAP_I2C
71888264e4fSWeidong Wang	select SND_SOC_AW88395_LIB
71988264e4fSWeidong Wang	help
72088264e4fSWeidong Wang	  This option enables support for aw88081 Smart PA.
72188264e4fSWeidong Wang	  The awinic AW88081 is an I2S/TDM input, high efficiency
72288264e4fSWeidong Wang	  digital Smart K audio amplifier. Due to its 9uV noise
72388264e4fSWeidong Wang	  floor and ultra-low distortion, clean listening is guaranteed.
72488264e4fSWeidong Wang
7254717636fSWeidong Wangconfig SND_SOC_AW87390
7264717636fSWeidong Wang	tristate "Soc Audio for awinic aw87390"
7274717636fSWeidong Wang	depends on I2C
7284717636fSWeidong Wang	select REGMAP_I2C
7294717636fSWeidong Wang	select SND_SOC_AW88395_LIB
7304717636fSWeidong Wang	help
7314717636fSWeidong Wang	  The awinic aw87390 is specifically designed to improve
7324717636fSWeidong Wang	  the musical output dynamic range, enhance the overall
7334717636fSWeidong Wang	  sound quality, which is a new high efficiency, low
7344717636fSWeidong Wang	  noise, constant large volume, 6th Smart K audio amplifier.
7354717636fSWeidong Wang
7368ade6cc7SWeidong Wangconfig SND_SOC_AW88399
7378ade6cc7SWeidong Wang	tristate "Soc Audio for awinic aw88399"
7388ade6cc7SWeidong Wang	depends on I2C
7398ade6cc7SWeidong Wang	select CRC8
7408ade6cc7SWeidong Wang	select REGMAP_I2C
7418ade6cc7SWeidong Wang	select GPIOLIB
742cf046ecbSArnd Bergmann	select SND_SOC_AW88395_LIB
7438ade6cc7SWeidong Wang	help
7448ade6cc7SWeidong Wang	  This option enables support for aw88399 Smart PA.
7458ade6cc7SWeidong Wang	  The awinic AW88399 is an I2S/TDM input, high efficiency
7468ade6cc7SWeidong Wang	  digital Smart K audio amplifier and SKTune speaker
7478ade6cc7SWeidong Wang	  protection algorithms.
7488ade6cc7SWeidong Wang
749f6d4b052SKatsuhiro Suzukiconfig SND_SOC_BD28623
750f6d4b052SKatsuhiro Suzuki	tristate "ROHM BD28623 CODEC"
751f6d4b052SKatsuhiro Suzuki	help
752f6d4b052SKatsuhiro Suzuki	  Enable support for ROHM BD28623MUV Class D speaker amplifier.
753f6d4b052SKatsuhiro Suzuki	  This codec does not have any control buses such as I2C, it
754f6d4b052SKatsuhiro Suzuki	  detect format of I2S automatically.
755f6d4b052SKatsuhiro Suzuki
75654aba08fSKuninori Morimotoconfig SND_SOC_BT_SCO
7578b0b50d8SGarlic Tseng	tristate "Dummy BT SCO codec driver"
75854aba08fSKuninori Morimoto
75961ed3034SPaweł Anikielconfig SND_SOC_CHV3_CODEC
76061ed3034SPaweł Anikiel	tristate "Google Chameleon v3 codec driver"
76161ed3034SPaweł Anikiel	help
76261ed3034SPaweł Anikiel	  Enable support for the Google Chameleon v3 audio codec.
76361ed3034SPaweł Anikiel	  This codec does not have a control interface, it always outputs
76461ed3034SPaweł Anikiel	  8 channel S32_LE audio.
76561ed3034SPaweł Anikiel
766f6cdf2d3SSebastian Reichelconfig SND_SOC_CPCAP
767f6cdf2d3SSebastian Reichel	tristate "Motorola CPCAP codec"
7685b7f4e5dSKrzysztof Kozlowski	depends on MFD_CPCAP || COMPILE_TEST
769f6cdf2d3SSebastian Reichel
770b56e972bSMiguel Aguilarconfig SND_SOC_CQ0093VC
771b56e972bSMiguel Aguilar	tristate
772b56e972bSMiguel Aguilar
773b291f42aSCheng-Yi Chiangconfig SND_SOC_CROS_EC_CODEC
774b291f42aSCheng-Yi Chiang	tristate "codec driver for ChromeOS EC"
77547f11e0bSEnric Balletbo i Serra	depends on CROS_EC
77650b18e4aSNecip Fazil Yildiran	select CRYPTO
77793fa0af4SArd Biesheuvel	select CRYPTO_LIB_SHA256
778b291f42aSCheng-Yi Chiang	help
779b291f42aSCheng-Yi Chiang	  If you say yes here you will get support for the
780b291f42aSCheng-Yi Chiang	  ChromeOS Embedded Controller's Audio Codec.
781b291f42aSCheng-Yi Chiang
7821cad8725SRichard Fitzgeraldconfig SND_SOC_CS_AMP_LIB
7831cad8725SRichard Fitzgerald	tristate
7841cad8725SRichard Fitzgerald
78517786231SRichard Fitzgeraldconfig SND_SOC_CS_AMP_LIB_TEST
78696014d91SRichard Fitzgerald	tristate "KUnit test for Cirrus Logic cs-amp-lib" if !KUNIT_ALL_TESTS
78796014d91SRichard Fitzgerald	depends on SND_SOC_CS_AMP_LIB && KUNIT
78817786231SRichard Fitzgerald	default KUNIT_ALL_TESTS
78917786231SRichard Fitzgerald	help
79017786231SRichard Fitzgerald	  This builds KUnit tests for the Cirrus Logic common
79117786231SRichard Fitzgerald	  amplifier library.
79217786231SRichard Fitzgerald	  For more information on KUnit and unit tests in general,
79317786231SRichard Fitzgerald	  please refer to the KUnit documentation in
79417786231SRichard Fitzgerald	  Documentation/dev-tools/kunit/.
79517786231SRichard Fitzgerald	  If in doubt, say "N".
79617786231SRichard Fitzgerald
797eef5bb24SBrian Austinconfig SND_SOC_CS35L32
798eef5bb24SBrian Austin	tristate "Cirrus Logic CS35L32 CODEC"
799eef5bb24SBrian Austin	depends on I2C
800eef5bb24SBrian Austin
8013333cb71SPaul Handriganconfig SND_SOC_CS35L33
8023333cb71SPaul Handrigan	tristate "Cirrus Logic CS35L33 CODEC"
8033333cb71SPaul Handrigan	depends on I2C
8043333cb71SPaul Handrigan
805c1124c09SPaul Handriganconfig SND_SOC_CS35L34
806c1124c09SPaul Handrigan	tristate "Cirrus Logic CS35L34 CODEC"
807c1124c09SPaul Handrigan	depends on I2C
808c1124c09SPaul Handrigan
8096387f866SBrian Austinconfig SND_SOC_CS35L35
8106387f866SBrian Austin	tristate "Cirrus Logic CS35L35 CODEC"
8116387f866SBrian Austin	depends on I2C
8126387f866SBrian Austin
8136ba9dd6cSJames Schulmanconfig SND_SOC_CS35L36
8146ba9dd6cSJames Schulman	tristate "Cirrus Logic CS35L36 CODEC"
8156ba9dd6cSJames Schulman	depends on I2C
8166ba9dd6cSJames Schulman
817a87d4222SLucas Tanureconfig SND_SOC_CS35L41_LIB
818a87d4222SLucas Tanure	tristate
819a87d4222SLucas Tanure
820a5e0091dSLucas Tanureconfig SND_SOC_CS35L41
821a5e0091dSLucas Tanure	tristate
822a5e0091dSLucas Tanure
8236450ef55SDavid Rhodesconfig SND_SOC_CS35L41_SPI
8246450ef55SDavid Rhodes	tristate "Cirrus Logic CS35L41 CODEC (SPI)"
8256450ef55SDavid Rhodes	depends on SPI_MASTER
826a87d4222SLucas Tanure	select SND_SOC_CS35L41_LIB
827a87d4222SLucas Tanure	select SND_SOC_CS35L41
8286450ef55SDavid Rhodes	select REGMAP_SPI
8296450ef55SDavid Rhodes
8306450ef55SDavid Rhodesconfig SND_SOC_CS35L41_I2C
8316450ef55SDavid Rhodes	tristate "Cirrus Logic CS35L41 CODEC (I2C)"
8326450ef55SDavid Rhodes	depends on I2C
833a87d4222SLucas Tanure	select SND_SOC_CS35L41_LIB
834a87d4222SLucas Tanure	select SND_SOC_CS35L41
8356450ef55SDavid Rhodes	select REGMAP_I2C
8366450ef55SDavid Rhodes
8370d463d01SJames Schulmanconfig SND_SOC_CS35L45
8380d463d01SJames Schulman	tristate
839d9ba2975SNathan Chancellor	select REGMAP_IRQ
8400d463d01SJames Schulman
8410d463d01SJames Schulmanconfig SND_SOC_CS35L45_SPI
8420d463d01SJames Schulman	tristate "Cirrus Logic CS35L45 CODEC (SPI)"
8430d463d01SJames Schulman	depends on SPI_MASTER
8440d463d01SJames Schulman	select REGMAP
8450d463d01SJames Schulman	select REGMAP_SPI
8460d463d01SJames Schulman	select SND_SOC_CS35L45
8470d463d01SJames Schulman	help
8480d463d01SJames Schulman	  Enable support for Cirrus Logic CS35L45 smart speaker amplifier
8490d463d01SJames Schulman	  with SPI control.
8500d463d01SJames Schulman
8510d463d01SJames Schulmanconfig SND_SOC_CS35L45_I2C
8520d463d01SJames Schulman	tristate "Cirrus Logic CS35L45 CODEC (I2C)"
8530d463d01SJames Schulman	depends on I2C
8540d463d01SJames Schulman	select REGMAP
8550d463d01SJames Schulman	select REGMAP_I2C
8560d463d01SJames Schulman	select SND_SOC_CS35L45
8570d463d01SJames Schulman	help
8580d463d01SJames Schulman	  Enable support for Cirrus Logic CS35L45 smart speaker amplifier
8590d463d01SJames Schulman	  with I2C control.
8600d463d01SJames Schulman
861e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56
862e4961125SRichard Fitzgerald	tristate
863e4961125SRichard Fitzgerald
864e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SHARED
865e1830f66SRichard Fitzgerald	select SND_SOC_CS_AMP_LIB
866e4961125SRichard Fitzgerald	tristate
867e4961125SRichard Fitzgerald
868e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_I2C
869e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (I2C)"
870e4961125SRichard Fitzgerald	depends on I2C
871e4961125SRichard Fitzgerald	depends on SOUNDWIRE || !SOUNDWIRE
872e4961125SRichard Fitzgerald	select REGMAP_I2C
873e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
874e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
875e4961125SRichard Fitzgerald	help
876e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with I2C control
877e4961125SRichard Fitzgerald
878e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SPI
879e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (SPI)"
880e4961125SRichard Fitzgerald	depends on SPI_MASTER
881e4961125SRichard Fitzgerald	depends on SOUNDWIRE || !SOUNDWIRE
882e4961125SRichard Fitzgerald	select REGMAP_SPI
883e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
884e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
885e4961125SRichard Fitzgerald	help
886e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with SPI control
887e4961125SRichard Fitzgerald
888e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SDW
889e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (SDW)"
890e4961125SRichard Fitzgerald	depends on SOUNDWIRE
891e4961125SRichard Fitzgerald	select REGMAP
892e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
893e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
894e4961125SRichard Fitzgerald	help
895e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with SoundWire control
896e4961125SRichard Fitzgerald
897c486def5SJames Ogletreeconfig SND_SOC_CS40L50
898c486def5SJames Ogletree	tristate "Cirrus Logic CS40L50 CODEC"
899c486def5SJames Ogletree	depends on MFD_CS40L50_CORE
900c486def5SJames Ogletree	help
901c486def5SJames Ogletree	  This option enables support for I2S streaming to Cirrus Logic CS40L50.
902c486def5SJames Ogletree
903c486def5SJames Ogletree	  CS40L50 is a haptic driver with waveform memory, an integrated
904c486def5SJames Ogletree	  DSP, and closed-loop algorithms. If built as a module, it will be
905c486def5SJames Ogletree	  called snd-soc-cs40l50.
906c486def5SJames Ogletree
907ae9f5e60SRichard Fitzgeraldconfig SND_SOC_CS42L42_CORE
908ae9f5e60SRichard Fitzgerald	tristate
909ae9f5e60SRichard Fitzgerald
9102c394ca7SJames Schulmanconfig SND_SOC_CS42L42
911ae9f5e60SRichard Fitzgerald	tristate "Cirrus Logic CS42L42 CODEC (I2C)"
9122c394ca7SJames Schulman	depends on I2C
913ae9f5e60SRichard Fitzgerald	select REGMAP
914ae9f5e60SRichard Fitzgerald	select REGMAP_I2C
915ae9f5e60SRichard Fitzgerald	select SND_SOC_CS42L42_CORE
9162c394ca7SJames Schulman
91790f6a2a2SRichard Fitzgeraldconfig SND_SOC_CS42L42_SDW
91890f6a2a2SRichard Fitzgerald	tristate "Cirrus Logic CS42L42 CODEC on Soundwire"
91990f6a2a2SRichard Fitzgerald	depends on SOUNDWIRE
92090f6a2a2SRichard Fitzgerald	select SND_SOC_CS42L42_CORE
92190f6a2a2SRichard Fitzgerald	help
92290f6a2a2SRichard Fitzgerald	  Enable support for Cirrus Logic CS42L42 codec with Soundwire control
92390f6a2a2SRichard Fitzgerald
924fc918cbeSCharles Keepaxconfig SND_SOC_CS42L43
925fc918cbeSCharles Keepax	tristate "Cirrus Logic CS42L43 CODEC"
926fc918cbeSCharles Keepax	depends on MFD_CS42L43
927fc918cbeSCharles Keepax	help
928fc918cbeSCharles Keepax	  Select this to support the audio functions of the Cirrus Logic
929fc918cbeSCharles Keepax	  CS42L43 PC CODEC.
930fc918cbeSCharles Keepax
931fc918cbeSCharles Keepaxconfig SND_SOC_CS42L43_SDW
932fc918cbeSCharles Keepax	tristate "Cirrus Logic CS42L43 CODEC (SoundWire)"
933fc918cbeSCharles Keepax	depends on SND_SOC_CS42L43 && MFD_CS42L43_SDW
934fc918cbeSCharles Keepax	help
935fc918cbeSCharles Keepax	  Select this to support the audio functions of the Cirrus Logic
936fc918cbeSCharles Keepax	  CS42L43 PC CODEC over SoundWire.
937fc918cbeSCharles Keepax
93872ed5a8cSapatard@mandriva.comconfig SND_SOC_CS42L51
93972ed5a8cSapatard@mandriva.com	tristate
94072ed5a8cSapatard@mandriva.com
941a1253ef6SBrian Austinconfig SND_SOC_CS42L51_I2C
9424e449238SThomas Petazzoni	tristate "Cirrus Logic CS42L51 CODEC (I2C)"
943e894beb8SRandy Dunlap	depends on I2C
944a1253ef6SBrian Austin	select SND_SOC_CS42L51
945a1253ef6SBrian Austin
946dfe0f98bSBrian Austinconfig SND_SOC_CS42L52
9471291e141SMark Brown	tristate "Cirrus Logic CS42L52 CODEC"
948a2915d4fSArnd Bergmann	depends on I2C && INPUT
949dfe0f98bSBrian Austin
950272b5eddSBrian Austinconfig SND_SOC_CS42L56
951272b5eddSBrian Austin	tristate "Cirrus Logic CS42L56 CODEC"
952272b5eddSBrian Austin	depends on I2C && INPUT
9533e860846SMark Brown
9543e860846SMark Brownconfig SND_SOC_CS42L73
9551291e141SMark Brown	tristate "Cirrus Logic CS42L73 CODEC"
9561291e141SMark Brown	depends on I2C
9573e860846SMark Brown
95894d5f62aSMartin Povišerconfig SND_SOC_CS42L83
95994d5f62aSMartin Povišer	tristate "Cirrus Logic CS42L83 CODEC"
96094d5f62aSMartin Povišer	depends on I2C
96194d5f62aSMartin Povišer	select REGMAP
96294d5f62aSMartin Povišer	select REGMAP_I2C
96394d5f62aSMartin Povišer	select SND_SOC_CS42L42_CORE
96494d5f62aSMartin Povišer
965250304a0SMartin Povišerconfig SND_SOC_CS42L84
966250304a0SMartin Povišer	tristate "Cirrus Logic CS42L84 CODEC"
967250304a0SMartin Povišer	depends on I2C
968250304a0SMartin Povišer	select REGMAP
969250304a0SMartin Povišer	select REGMAP_I2C
970250304a0SMartin Povišer
971d4edae9cSLucas Tanureconfig SND_SOC_CS4234
972d4edae9cSLucas Tanure	tristate "Cirrus Logic CS4234 CODEC"
973d4edae9cSLucas Tanure	depends on I2C
974d4edae9cSLucas Tanure	select REGMAP_I2C
975d4edae9cSLucas Tanure
976fb6f8069SPaul Handriganconfig SND_SOC_CS4265
977fb6f8069SPaul Handrigan	tristate "Cirrus Logic CS4265 CODEC"
978fb6f8069SPaul Handrigan	depends on I2C
979fb6f8069SPaul Handrigan	select REGMAP_I2C
980fb6f8069SPaul Handrigan
9813e860846SMark Brown# Cirrus Logic CS4270 Codec
9823e860846SMark Brownconfig SND_SOC_CS4270
9831291e141SMark Brown	tristate "Cirrus Logic CS4270 CODEC"
9841291e141SMark Brown	depends on I2C
9853e860846SMark Brown
9863e860846SMark Brown# Cirrus Logic CS4270 Codec VD = 3.3V Errata
9873e860846SMark Brown# Select if you are affected by the errata where the part will not function
9883e860846SMark Brown# if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
9893e860846SMark Brown# not select any sample rates that require MCLK to be divided by 1.5.
9903e860846SMark Brownconfig SND_SOC_CS4270_VD33_ERRATA
9913e860846SMark Brown	bool
9923e860846SMark Brown	depends on SND_SOC_CS4270
9933e860846SMark Brown
99467b22517SAlexander Sverdlinconfig SND_SOC_CS4271
995c973b8a7SAxel Lin	tristate
996c973b8a7SAxel Lin
997c973b8a7SAxel Linconfig SND_SOC_CS4271_I2C
998c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (I2C)"
999c973b8a7SAxel Lin	depends on I2C
1000c973b8a7SAxel Lin	select SND_SOC_CS4271
1001c973b8a7SAxel Lin	select REGMAP_I2C
1002c973b8a7SAxel Lin
1003c973b8a7SAxel Linconfig SND_SOC_CS4271_SPI
1004c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (SPI)"
1005c973b8a7SAxel Lin	depends on SPI_MASTER
1006c973b8a7SAxel Lin	select SND_SOC_CS4271
1007c973b8a7SAxel Lin	select REGMAP_SPI
100867b22517SAlexander Sverdlin
10090c516b4fSNicolin Chenconfig SND_SOC_CS42XX8
10100c516b4fSNicolin Chen	tristate
10110c516b4fSNicolin Chen
10120c516b4fSNicolin Chenconfig SND_SOC_CS42XX8_I2C
10130c516b4fSNicolin Chen	tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
10140c516b4fSNicolin Chen	depends on I2C
10150c516b4fSNicolin Chen	select SND_SOC_CS42XX8
10160c516b4fSNicolin Chen	select REGMAP_I2C
10170c516b4fSNicolin Chen
10188f1e5bf9SLi Xu# Cirrus Logic CS43130 HiFi DAC
10198f1e5bf9SLi Xuconfig SND_SOC_CS43130
10208f1e5bf9SLi Xu	tristate "Cirrus Logic CS43130 CODEC"
10218f1e5bf9SLi Xu	depends on I2C
10228f1e5bf9SLi Xu
10230f68c396SAlexander Shiyanconfig SND_SOC_CS4341
10240f68c396SAlexander Shiyan	tristate "Cirrus Logic CS4341 CODEC"
10253e8c45f5SAnders Roxell	depends on SND_SOC_I2C_AND_SPI
10260f68c396SAlexander Shiyan	select REGMAP_I2C if I2C
10270f68c396SAlexander Shiyan	select REGMAP_SPI if SPI_MASTER
10280f68c396SAlexander Shiyan
1029e40da86aSTim Howe# Cirrus Logic CS4349 HiFi DAC
1030e40da86aSTim Howeconfig SND_SOC_CS4349
1031e40da86aSTim Howe	tristate "Cirrus Logic CS4349 CODEC"
1032e40da86aSTim Howe	depends on I2C
1033e40da86aSTim Howe
10349cba2d6aSRichard Fitzgeraldconfig SND_SOC_CS47L15
10359cba2d6aSRichard Fitzgerald	tristate
1036ec29170cSCharles Keepax	depends on MFD_CS47L15
10379cba2d6aSRichard Fitzgerald
10386610550cSRichard Fitzgeraldconfig SND_SOC_CS47L24
10396610550cSRichard Fitzgerald	tristate
104033d55070SHans de Goede	depends on MFD_CS47L24 && MFD_ARIZONA
10416610550cSRichard Fitzgerald
1042e6a2b5c0SRichard Fitzgeraldconfig SND_SOC_CS47L35
1043e6a2b5c0SRichard Fitzgerald	tristate
1044ec29170cSCharles Keepax	depends on MFD_CS47L35
1045e6a2b5c0SRichard Fitzgerald
104695a9049bSRichard Fitzgeraldconfig SND_SOC_CS47L85
104795a9049bSRichard Fitzgerald	tristate
1048ec29170cSCharles Keepax	depends on MFD_CS47L85
104995a9049bSRichard Fitzgerald
1050f1572a44SRichard Fitzgeraldconfig SND_SOC_CS47L90
1051f1572a44SRichard Fitzgerald	tristate
1052ec29170cSCharles Keepax	depends on MFD_CS47L90
1053f1572a44SRichard Fitzgerald
10546535e831SStuart Hendersonconfig SND_SOC_CS47L92
10556535e831SStuart Henderson	tristate
1056ec29170cSCharles Keepax	depends on MFD_CS47L92
10576535e831SStuart Henderson
1058e2bcbf99SRichard Fitzgeraldconfig SND_SOC_CS48L32
1059e2bcbf99SRichard Fitzgerald	tristate "Cirrus Logic CS48L32 audio DSP"
1060e2bcbf99SRichard Fitzgerald	depends on SPI_MASTER
1061e2bcbf99SRichard Fitzgerald	select REGMAP_SPI
1062e2bcbf99SRichard Fitzgerald	help
1063e2bcbf99SRichard Fitzgerald	  Build the codec driver for the Cirrus Logic CS48L32 audio DSP.
1064e2bcbf99SRichard Fitzgerald
1065de9b1214SNicolin Chen# Cirrus Logic Quad-Channel ADC
1066de9b1214SNicolin Chenconfig SND_SOC_CS53L30
1067de9b1214SNicolin Chen	tristate "Cirrus Logic CS53L30 CODEC"
1068de9b1214SNicolin Chen	depends on I2C
1069de9b1214SNicolin Chen
10702884c291SPaul Handriganconfig SND_SOC_CS530X
10712884c291SPaul Handrigan	tristate
10722884c291SPaul Handrigan
10732884c291SPaul Handriganconfig SND_SOC_CS530X_I2C
10742884c291SPaul Handrigan	tristate "Cirrus Logic CS530x ADCs (I2C)"
10752884c291SPaul Handrigan	depends on I2C
10762884c291SPaul Handrigan	select REGMAP
10772884c291SPaul Handrigan	select REGMAP_I2C
10782884c291SPaul Handrigan	select SND_SOC_CS530X
10792884c291SPaul Handrigan	help
10802884c291SPaul Handrigan	  Enable support for Cirrus Logic CS530X ADCs
10812884c291SPaul Handrigan	  with I2C control.
10822884c291SPaul Handrigan
1083459dc352SJanusz Krzysztofikconfig SND_SOC_CX20442
1084459dc352SJanusz Krzysztofik	tristate
10854f73bc4dSJoe Millenbach	depends on TTY
1086459dc352SJanusz Krzysztofik
1087a497a436SSimon Hoconfig SND_SOC_CX2072X
1088a497a436SSimon Ho	tristate "Conexant CX2072X CODEC"
1089a497a436SSimon Ho	depends on I2C
1090a497a436SSimon Ho	help
1091a497a436SSimon Ho	  Enable support for Conexant CX20721 and CX20723 codec chips.
1092a497a436SSimon Ho
10933b097d64SLars-Peter Clausenconfig SND_SOC_JZ4740_CODEC
1094bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1095e6825baeSPaul Cercueil	depends on OF
1096dd1b18abSLars-Peter Clausen	select REGMAP_MMIO
1097edcd3ed1SPaul Cercueil	tristate "Ingenic JZ4740 internal CODEC"
1098edcd3ed1SPaul Cercueil	help
1099edcd3ed1SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4740 SoC
1100edcd3ed1SPaul Cercueil	  from Ingenic.
1101edcd3ed1SPaul Cercueil
1102edcd3ed1SPaul Cercueil	  This driver can also be built as a module. If so, the module
1103edcd3ed1SPaul Cercueil	  will be called snd-soc-jz4740-codec.
11043b097d64SLars-Peter Clausen
1105e9d97b05SPaul Cercueilconfig SND_SOC_JZ4725B_CODEC
1106bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1107e6825baeSPaul Cercueil	depends on OF
1108e9d97b05SPaul Cercueil	select REGMAP
1109e9d97b05SPaul Cercueil	tristate "Ingenic JZ4725B internal CODEC"
1110e9d97b05SPaul Cercueil	help
1111e9d97b05SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4725B SoC
1112e9d97b05SPaul Cercueil	  from Ingenic.
1113e9d97b05SPaul Cercueil
1114e9d97b05SPaul Cercueil	  This driver can also be built as a module. If so, the module
1115e9d97b05SPaul Cercueil	  will be called snd-soc-jz4725b-codec.
1116e9d97b05SPaul Cercueil
1117d9cd22e9SChristophe Branchereauconfig SND_SOC_JZ4760_CODEC
1118d9cd22e9SChristophe Branchereau        depends on MACH_INGENIC || COMPILE_TEST
1119d9cd22e9SChristophe Branchereau        depends on OF
1120d9cd22e9SChristophe Branchereau        select REGMAP
1121d9cd22e9SChristophe Branchereau        tristate "Ingenic JZ4760 internal CODEC"
1122d9cd22e9SChristophe Branchereau        help
1123d9cd22e9SChristophe Branchereau          Enable support for the internal CODEC found in the JZ4760 SoC
1124d9cd22e9SChristophe Branchereau          from Ingenic.
1125d9cd22e9SChristophe Branchereau
1126d9cd22e9SChristophe Branchereau          This driver can also be built as a module. If so, the module
1127d9cd22e9SChristophe Branchereau          will be called snd-soc-jz4760-codec.
1128d9cd22e9SChristophe Branchereau
11292159a681SPaul Cercueilconfig SND_SOC_JZ4770_CODEC
1130bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1131e6825baeSPaul Cercueil	depends on OF
11322159a681SPaul Cercueil	select REGMAP
11332159a681SPaul Cercueil	tristate "Ingenic JZ4770 internal CODEC"
11342159a681SPaul Cercueil	help
11352159a681SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4770 SoC
11362159a681SPaul Cercueil	  from Ingenic.
11372159a681SPaul Cercueil
11382159a681SPaul Cercueil	  This driver can also be built as a module. If so, the module
11392159a681SPaul Cercueil	  will be called snd-soc-jz4770-codec.
11402159a681SPaul Cercueil
1141b4541665SMark Brownconfig SND_SOC_DA7210
1142b4541665SMark Brown	tristate
1143c1c050eeSWei Li	depends on SND_SOC_I2C_AND_SPI
1144b4541665SMark Brown
1145ef5c2ebaSAdam Thomsonconfig SND_SOC_DA7213
114636da6763SSebastian Reichel	tristate "Dialog DA7213 CODEC"
114736da6763SSebastian Reichel	depends on I2C
1148ef5c2ebaSAdam Thomson
11494d50934aSAdam Thomsonconfig SND_SOC_DA7218
11504d50934aSAdam Thomson	tristate
1151ce0c97f8SGeert Uytterhoeven	depends on I2C
11524d50934aSAdam Thomson
11536d817c0eSAdam Thomsonconfig SND_SOC_DA7219
11546d817c0eSAdam Thomson	tristate
1155ce0c97f8SGeert Uytterhoeven	depends on I2C
11566d817c0eSAdam Thomson
115748e27874SAdam Thomsonconfig SND_SOC_DA732X
115848e27874SAdam Thomson	tristate
1159ce0c97f8SGeert Uytterhoeven	depends on I2C
116048e27874SAdam Thomson
11619911f7f7SAshish Chavanconfig SND_SOC_DA9055
11629911f7f7SAshish Chavan	tristate
1163ce0c97f8SGeert Uytterhoeven	depends on I2C
11649911f7f7SAshish Chavan
1165a710770eSDavid Lambertconfig SND_SOC_DMIC
116626bcf1c3SJerome Brunet	tristate "Generic Digital Microphone CODEC"
116726bcf1c3SJerome Brunet	help
116826bcf1c3SJerome Brunet	  Enable support for the Generic Digital Microphone CODEC.
116926bcf1c3SJerome Brunet	  Select this if your sound card has DMICs.
1170a710770eSDavid Lambert
117109184118SJyri Sarhaconfig SND_SOC_HDMI_CODEC
117209184118SJyri Sarha	tristate
117309184118SJyri Sarha	select SND_PCM_ELD
117409184118SJyri Sarha	select SND_PCM_IEC958
11756de7df8dSArnd Bergmann	select HDMI
117609184118SJyri Sarha
11779000b59dSJerome Brunetconfig SND_SOC_ES7134
11789000b59dSJerome Brunet	tristate "Everest Semi ES7134 CODEC"
11799000b59dSJerome Brunet
11805f7bdc46SJerome Brunetconfig SND_SOC_ES7241
11815f7bdc46SJerome Brunet	tristate "Everest Semi ES7241 CODEC"
11825f7bdc46SJerome Brunet
11839c8bec3bSPierre-Louis Bossartconfig SND_SOC_ES83XX_DSM_COMMON
11849c8bec3bSPierre-Louis Bossart	depends on ACPI
11859c8bec3bSPierre-Louis Bossart	tristate
11869c8bec3bSPierre-Louis Bossart
1187baf98991SMatteo Martelliconfig SND_SOC_ES8311
1188baf98991SMatteo Martelli	tristate "Everest Semi ES8311 CODEC"
1189baf98991SMatteo Martelli	depends on I2C
1190baf98991SMatteo Martelli
1191b8b88b70SDaniel Drakeconfig SND_SOC_ES8316
1192b8b88b70SDaniel Drake	tristate "Everest Semi ES8316 CODEC"
1193664d00d1SArnd Bergmann	depends on I2C
1194b8b88b70SDaniel Drake
1195b97391a6SBinbin Zhouconfig SND_SOC_ES8323
1196b97391a6SBinbin Zhou	tristate "Everest Semi ES8323 CODEC"
1197b97391a6SBinbin Zhou	depends on I2C
1198b97391a6SBinbin Zhou
11995c439937SZhu Ningconfig SND_SOC_ES8326
12005c439937SZhu Ning	tristate "Everest Semi ES8326 CODEC"
12015c439937SZhu Ning	depends on I2C
12025c439937SZhu Ning
1203567e4f98SSean Crossconfig SND_SOC_ES8328
1204245c5c7bSArnd Bergmann	tristate
1205567e4f98SSean Cross
1206567e4f98SSean Crossconfig SND_SOC_ES8328_I2C
1207245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (I2C)"
1208245c5c7bSArnd Bergmann	depends on I2C
1209567e4f98SSean Cross	select SND_SOC_ES8328
1210567e4f98SSean Cross
1211567e4f98SSean Crossconfig SND_SOC_ES8328_SPI
1212245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (SPI)"
1213245c5c7bSArnd Bergmann	depends on SPI_MASTER
1214567e4f98SSean Cross	select SND_SOC_ES8328
1215567e4f98SSean Cross
1216*de2b3119SZhang Yiconfig SND_SOC_ES8375
1217*de2b3119SZhang Yi	tristate "Everest Semi ES8375 CODEC"
1218*de2b3119SZhang Yi	depends on I2C
1219*de2b3119SZhang Yi
12200319c268SZhang Yiconfig SND_SOC_ES8389
12210319c268SZhang Yi	tristate "Everest Semi ES8389 CODEC"
12220319c268SZhang Yi	depends on I2C
12230319c268SZhang Yi
1224a9a0303dSHerve Codinaconfig SND_SOC_FRAMER
1225a9a0303dSHerve Codina	tristate "Framer codec"
1226a9a0303dSHerve Codina	depends on GENERIC_FRAMER
1227a9a0303dSHerve Codina	help
1228a9a0303dSHerve Codina	  Enable support for the framer codec.
1229a9a0303dSHerve Codina	  The framer codec uses the generic framer infrastructure to transport
1230a9a0303dSHerve Codina	  some audio data over an analog E1/T1/J1 line.
1231a9a0303dSHerve Codina	  This codec allows to use some of the time slots available on the TDM
1232a9a0303dSHerve Codina	  bus on which the framer is connected to transport the audio data.
1233a9a0303dSHerve Codina
1234a9a0303dSHerve Codina	  To compile this driver as a module, choose M here: the module
1235a9a0303dSHerve Codina	  will be called snd-soc-framer.
1236a9a0303dSHerve Codina
1237a9a0303dSHerve Codina
1238efc4720dSMarek Beliskoconfig SND_SOC_GTM601
1239efc4720dSMarek Belisko	tristate 'GTM601 UMTS modem audio codec'
1240efc4720dSMarek Belisko
12419049a48aSMark Brownconfig SND_SOC_HDAC_HDMI
12429049a48aSMark Brown	tristate
12439049a48aSMark Brown	select SND_HDA_EXT_CORE
12442428bca3SSubhransu S. Prusty	select SND_PCM_ELD
12459049a48aSMark Brown	select HDMI
12469049a48aSMark Brown
12476bae5ea9SRakesh Ughrejaconfig SND_SOC_HDAC_HDA
12486bae5ea9SRakesh Ughreja	tristate
12496bae5ea9SRakesh Ughreja	select SND_HDA
12506bae5ea9SRakesh Ughreja
1251b5df2a7dSCezary Rojewskiconfig SND_SOC_HDA
1252b5df2a7dSCezary Rojewski	tristate "HD-Audio codec driver"
1253b5df2a7dSCezary Rojewski	select SND_HDA_EXT_CORE
1254b5df2a7dSCezary Rojewski	select SND_HDA
1255b5df2a7dSCezary Rojewski	help
1256b5df2a7dSCezary Rojewski	  This enables HD-Audio codec support in ASoC subsystem. Compared
1257b5df2a7dSCezary Rojewski	  to SND_SOC_HDAC_HDA, driver's behavior is identical to HD-Audio
1258b5df2a7dSCezary Rojewski	  legacy solution - including the dynamic resource allocation
1259b5df2a7dSCezary Rojewski	  based on actual codec capabilities.
1260b5df2a7dSCezary Rojewski
12613b7ce997SRicard Wanderlofconfig SND_SOC_ICS43432
126243d2c498SAngelo Dureghello	tristate "ICS43423 and compatible i2s microphones"
12633b7ce997SRicard Wanderlof
1264e5116699SHerve Codinaconfig SND_SOC_IDT821034
1265e5116699SHerve Codina	tristate "Renesas IDT821034 quad PCM codec"
1266e5116699SHerve Codina	depends on SPI
1267e5116699SHerve Codina	help
1268e5116699SHerve Codina	  Enable support for the Renesas IDT821034 quad PCM with
1269e5116699SHerve Codina	  programmable gain codec.
1270e5116699SHerve Codina
1271e5116699SHerve Codina	  To compile this driver as a module, choose M here: the module
1272e5116699SHerve Codina	  will be called snd-soc-idt821034.
1273e5116699SHerve Codina
1274decbc00eSZhengShunQianconfig SND_SOC_INNO_RK3036
1275decbc00eSZhengShunQian	tristate "Inno codec driver for RK3036 SoC"
12769fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
12777315917fSAntonio Ospite	select REGMAP_MMIO
1278decbc00eSZhengShunQian
12792f989f7eSM R Swami Reddyconfig SND_SOC_ISABELLE
12802f989f7eSM R Swami Reddy	tristate
1281ce0c97f8SGeert Uytterhoeven	depends on I2C
12822f989f7eSM R Swami Reddy
1283dbf7a733SM R Swami Reddyconfig SND_SOC_LM49453
1284dbf7a733SM R Swami Reddy	tristate
1285ce0c97f8SGeert Uytterhoeven	depends on I2C
1286dbf7a733SM R Swami Reddy
128716123412SPiotr Stankiewiczconfig SND_SOC_LOCHNAGAR_SC
128816123412SPiotr Stankiewicz	tristate "Lochnagar Sound Card"
12895b7f4e5dSKrzysztof Kozlowski	depends on MFD_LOCHNAGAR || COMPILE_TEST
129016123412SPiotr Stankiewicz	help
129116123412SPiotr Stankiewicz	  This driver support the sound card functionality of the Cirrus
129216123412SPiotr Stankiewicz	  Logic Lochnagar audio development board.
129316123412SPiotr Stankiewicz
12942735b683SRichard Fitzgeraldconfig SND_SOC_MADERA
12952735b683SRichard Fitzgerald	tristate
12969cba2d6aSRichard Fitzgerald	default y if SND_SOC_CS47L15=y
1297e6a2b5c0SRichard Fitzgerald	default y if SND_SOC_CS47L35=y
129895a9049bSRichard Fitzgerald	default y if SND_SOC_CS47L85=y
1299f1572a44SRichard Fitzgerald	default y if SND_SOC_CS47L90=y
13006535e831SStuart Henderson	default y if SND_SOC_CS47L92=y
13019cba2d6aSRichard Fitzgerald	default m if SND_SOC_CS47L15=m
1302e6a2b5c0SRichard Fitzgerald	default m if SND_SOC_CS47L35=m
130395a9049bSRichard Fitzgerald	default m if SND_SOC_CS47L85=m
1304f1572a44SRichard Fitzgerald	default m if SND_SOC_CS47L90=m
13056535e831SStuart Henderson	default m if SND_SOC_CS47L92=m
13062735b683SRichard Fitzgerald
1307e86e1244SMark Brownconfig SND_SOC_MAX98088
130824ae67c5SMarco Felsch	tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
13099641faa2SArnd Bergmann	depends on I2C
1310e86e1244SMark Brown
131183f7cbc4SKuninori Morimotoconfig SND_SOC_MAX98090
13129e868ca1SMaxim Kochetkov	tristate "Maxim MAX98090 CODEC"
1313ce0c97f8SGeert Uytterhoeven	depends on I2C
131483f7cbc4SKuninori Morimoto
131582a5a936SPeter Hsiangconfig SND_SOC_MAX98095
131682a5a936SPeter Hsiang	tristate
1317ce0c97f8SGeert Uytterhoeven	depends on I2C
131882a5a936SPeter Hsiang
1319af5adf12SKenneth Westfieldconfig SND_SOC_MAX98357A
132099afc8dfSMaxime Jourdan	tristate "Maxim MAX98357A CODEC"
1321af5adf12SKenneth Westfield
1322ca2cd6bcSanish kumarconfig SND_SOC_MAX98371
1323ca2cd6bcSanish kumar	tristate
1324ce0c97f8SGeert Uytterhoeven	depends on I2C
1325ca2cd6bcSanish kumar
13264c5d1469SSylwester Nawrockiconfig SND_SOC_MAX98504
13274c5d1469SSylwester Nawrocki	tristate "Maxim MAX98504 speaker amplifier"
13284c5d1469SSylwester Nawrocki	depends on I2C
13294c5d1469SSylwester Nawrocki
1330805d132dSanish kumarconfig SND_SOC_MAX9867
13313ac9ce88SLadislav Michl	tristate "Maxim MAX9867 CODEC"
13323ac9ce88SLadislav Michl	depends on I2C
1333805d132dSanish kumar
13341ff27651SAnish Kumarconfig SND_SOC_MAX98925
13351ff27651SAnish Kumar	tristate
1336ce0c97f8SGeert Uytterhoeven	depends on I2C
13371ff27651SAnish Kumar
1338a2e2876aSanish kumarconfig SND_SOC_MAX98926
1339a2e2876aSanish kumar	tristate
1340ce0c97f8SGeert Uytterhoeven	depends on I2C
1341a2e2876aSanish kumar
13427c0c2000SRyan Leeconfig SND_SOC_MAX98927
13437c0c2000SRyan Lee	tristate "Maxim Integrated MAX98927 Speaker Amplifier"
13447c0c2000SRyan Lee	depends on I2C
13457c0c2000SRyan Lee
1346f88ee76bSGeorge Songconfig SND_SOC_MAX98520
1347f88ee76bSGeorge Song	tristate "Maxim Integrated MAX98520 Speaker Amplifier"
1348f88ee76bSGeorge Song	depends on I2C
1349f88ee76bSGeorge Song	help
1350f88ee76bSGeorge Song	  Enable support for Maxim Integrated MAX98520 audio
1351f88ee76bSGeorge Song	  amplifier, which implements a tripler charge pump
1352f88ee76bSGeorge Song	  based boost converter and supports sample rates of
1353f88ee76bSGeorge Song	  8KHz to 192KHz.
1354f88ee76bSGeorge Song
1355f88ee76bSGeorge Song	  To compile this driver as a module, choose M here.
1356f88ee76bSGeorge Song
135718c0af94SRyan Leeconfig SND_SOC_MAX98363
135818c0af94SRyan Lee	tristate "Analog Devices MAX98363 Soundwire Speaker Amplifier"
135918c0af94SRyan Lee	depends on SOUNDWIRE
136018c0af94SRyan Lee	select REGMAP_SOUNDWIRE
136118c0af94SRyan Lee	help
136218c0af94SRyan Lee	  Enable support for Analog Devices MAX98363 Soundwire
136318c0af94SRyan Lee	  amplifier. MAX98363 supports the MIPI SoundWire v1.2
136418c0af94SRyan Lee	  compatible interface for audio and control data.
136518c0af94SRyan Lee	  This amplifier does not support I2C and I2S.
136618c0af94SRyan Lee
13672f3d24a1SRyan Leeconfig SND_SOC_MAX98373
1368d7ee0c72SPierre-Louis Bossart	tristate
1369d7ee0c72SPierre-Louis Bossart
1370d7ee0c72SPierre-Louis Bossartconfig SND_SOC_MAX98373_I2C
13712f3d24a1SRyan Lee	tristate "Maxim Integrated MAX98373 Speaker Amplifier"
13722f3d24a1SRyan Lee	depends on I2C
1373d7ee0c72SPierre-Louis Bossart	select SND_SOC_MAX98373
13742f3d24a1SRyan Lee
137556a5b791SRyan Leeconfig SND_SOC_MAX98373_SDW
137656a5b791SRyan Lee	tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW"
137756a5b791SRyan Lee	depends on SOUNDWIRE
137856a5b791SRyan Lee	select SND_SOC_MAX98373
137956a5b791SRyan Lee	select REGMAP_SOUNDWIRE
138056a5b791SRyan Lee	help
138156a5b791SRyan Lee	  Enable support for Maxim Integrated MAX98373 Soundwire
138256a5b791SRyan Lee	  amplifier. MAX98373 supports either the MIPI SoundWire
138356a5b791SRyan Lee	  compatible interface for audio and control data, or
138456a5b791SRyan Lee	  the PCM interface for audio data and a standard I2C
138556a5b791SRyan Lee	  interface for control data. Select this if MAX98373 is
138656a5b791SRyan Lee	  connected via soundwire.
138756a5b791SRyan Lee
13886a8e1d46SRyan Leeconfig SND_SOC_MAX98388
13896a8e1d46SRyan Lee	tristate "Analog Devices MAX98388 Speaker Amplifier"
13906a8e1d46SRyan Lee	depends on I2C
13916a8e1d46SRyan Lee	help
13926a8e1d46SRyan Lee	  Enable support for Analog Devices MAX98388 audio
13936a8e1d46SRyan Lee	  amplifier. The device provides a PCM interface for
13946a8e1d46SRyan Lee	  audio data and a standard I2C interface for control
13956a8e1d46SRyan Lee	  data communication.
13966a8e1d46SRyan Lee
1397a6e3f4f3SSteve Leeconfig SND_SOC_MAX98390
1398a6e3f4f3SSteve Lee	tristate "Maxim Integrated MAX98390 Speaker Amplifier"
1399a6e3f4f3SSteve Lee	depends on I2C
1400a6e3f4f3SSteve Lee
1401b5858113SRyan Leeconfig SND_SOC_MAX98396
1402b5858113SRyan Lee	tristate "Analog Devices MAX98396 Speaker Amplifier"
1403b5858113SRyan Lee	depends on I2C
1404b5858113SRyan Lee	help
1405b5858113SRyan Lee	  Enable support for Analog Devices MAX98396 audio
1406b5858113SRyan Lee	  amplifier. The device provides a PCM interface for
1407b5858113SRyan Lee	  audio data and a standard I2C interface for control
1408b5858113SRyan Lee	  data communication.
1409b5858113SRyan Lee
14100e45cab6SChristian Glindkampconfig SND_SOC_MAX9850
14110e45cab6SChristian Glindkamp	tristate
1412ce0c97f8SGeert Uytterhoeven	depends on I2C
14130e45cab6SChristian Glindkamp
14143b2af7f7SPeter Rosinconfig SND_SOC_MAX9860
14153b2af7f7SPeter Rosin	tristate "Maxim MAX9860 Mono Audio Voice Codec"
14163b2af7f7SPeter Rosin	depends on I2C
14173b2af7f7SPeter Rosin	select REGMAP_I2C
14183b2af7f7SPeter Rosin
1419585e881eSSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_ANALOG
1420585e881eSSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD Analog Codec"
1421585e881eSSrinivas Kandagatla	depends on SPMI || COMPILE_TEST
1422585e881eSSrinivas Kandagatla
1423150db8c5SSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_DIGITAL
1424150db8c5SSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
14255b86fa6dSAxel Lin	select REGMAP_MMIO
1426150db8c5SSrinivas Kandagatla
142795169d08SMarek Beliskoconfig SND_SOC_PCM1681
14281291e141SMark Brown	tristate "Texas Instruments PCM1681 CODEC"
14291291e141SMark Brown	depends on I2C
143095169d08SMarek Belisko
14314ae340d1SMylène Josserandconfig SND_SOC_PCM1789
14324ae340d1SMylène Josserand	tristate
14334ae340d1SMylène Josserand
14344ae340d1SMylène Josserandconfig SND_SOC_PCM1789_I2C
14354ae340d1SMylène Josserand	tristate "Texas Instruments PCM1789 CODEC (I2C)"
14364ae340d1SMylène Josserand	depends on I2C
14374ae340d1SMylène Josserand	select SND_SOC_PCM1789
14384ae340d1SMylène Josserand	help
14394ae340d1SMylène Josserand	  Enable support for Texas Instruments PCM1789 CODEC.
14404ae340d1SMylène Josserand	  Select this if your PCM1789 is connected via an I2C bus.
14414ae340d1SMylène Josserand
14420471cd93SMichael Trimarchiconfig SND_SOC_PCM179X
14431b347b68SJacob Siverskog	tristate
14441b347b68SJacob Siverskog
144570e3e56eSJacob Siverskogconfig SND_SOC_PCM179X_I2C
144670e3e56eSJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (I2C)"
144770e3e56eSJacob Siverskog	depends on I2C
144870e3e56eSJacob Siverskog	select SND_SOC_PCM179X
144970e3e56eSJacob Siverskog	help
145070e3e56eSJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
145170e3e56eSJacob Siverskog	  Select this if your PCM179x is connected via an I2C bus.
145270e3e56eSJacob Siverskog
14531b347b68SJacob Siverskogconfig SND_SOC_PCM179X_SPI
14541b347b68SJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (SPI)"
14551291e141SMark Brown	depends on SPI_MASTER
14561b347b68SJacob Siverskog	select SND_SOC_PCM179X
14571b347b68SJacob Siverskog	help
14581b347b68SJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
14591b347b68SJacob Siverskog	  Select this if your PCM179x is connected via an SPI bus.
146013b02fa0SMichael Trimarchi
1461993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X
1462993a3450SAndreas Dannenberg	tristate
1463993a3450SAndreas Dannenberg
1464993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_I2C
1465993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - I2C"
1466993a3450SAndreas Dannenberg	depends on I2C
1467993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
1468993a3450SAndreas Dannenberg	select REGMAP_I2C
1469993a3450SAndreas Dannenberg
1470993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_SPI
1471993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - SPI"
1472993a3450SAndreas Dannenberg	depends on SPI_MASTER
1473993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
1474993a3450SAndreas Dannenberg	select REGMAP_SPI
1475993a3450SAndreas Dannenberg
14761c0090c2SHugo Villeneuveconfig SND_SOC_PCM3008
14771c0090c2SHugo Villeneuve	tristate
14781c0090c2SHugo Villeneuve
14796ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060
14806ee47d4aSKirill Marinushkin	tristate
14816ee47d4aSKirill Marinushkin
14826ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_I2C
14836ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - I2C"
14846ee47d4aSKirill Marinushkin	depends on I2C
14856ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
14866ee47d4aSKirill Marinushkin	select REGMAP_I2C
14876ee47d4aSKirill Marinushkin
14886ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_SPI
14896ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - SPI"
14906ee47d4aSKirill Marinushkin	depends on SPI_MASTER
14916ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
14926ee47d4aSKirill Marinushkin	select REGMAP_SPI
14936ee47d4aSKirill Marinushkin
1494a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A
1495a9b17a63SDamien.Horsley	tristate
1496a9b17a63SDamien.Horsley
1497a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_I2C
1498a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - I2C"
1499a9b17a63SDamien.Horsley	depends on I2C
1500a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
1501a9b17a63SDamien.Horsley	select REGMAP_I2C
1502a9b17a63SDamien.Horsley
1503a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_SPI
1504a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - SPI"
1505a9b17a63SDamien.Horsley	depends on SPI_MASTER
1506a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
1507a9b17a63SDamien.Horsley	select REGMAP_SPI
1508a9b17a63SDamien.Horsley
150997d3ddd7SFlorian Meierconfig SND_SOC_PCM5102A
151076b5f68bSCodrin Ciubotariu	tristate "Texas Instruments PCM5102A CODEC"
151197d3ddd7SFlorian Meier
15125a3af129SMark Brownconfig SND_SOC_PCM512x
151322066226SMark Brown	tristate
151422066226SMark Brown
151522066226SMark Brownconfig SND_SOC_PCM512x_I2C
151622066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - I2C"
151722066226SMark Brown	depends on I2C
151822066226SMark Brown	select SND_SOC_PCM512x
151922066226SMark Brown	select REGMAP_I2C
152022066226SMark Brown
152122066226SMark Brownconfig SND_SOC_PCM512x_SPI
152222066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - SPI"
152322066226SMark Brown	depends on SPI_MASTER
152422066226SMark Brown	select SND_SOC_PCM512x
152522066226SMark Brown	select REGMAP_SPI
15265a3af129SMark Brown
15276bb1b706SShenghao Dingconfig SND_SOC_PCM6240
15286bb1b706SShenghao Ding	tristate "Texas Instruments PCM6240 Family Audio chips based on I2C"
15296bb1b706SShenghao Ding	depends on I2C
15306bb1b706SShenghao Ding	help
15316bb1b706SShenghao Ding	  Enable support for Texas Instruments PCM6240 Family Audio chips.
15326bb1b706SShenghao Ding	  Note the PCM6240 driver implements a flexible and configurable
15336bb1b706SShenghao Ding	  setting for register and filter coefficients, to one, two or
15346bb1b706SShenghao Ding	  even multiple PCM6240 Family Audio chips.
15356bb1b706SShenghao Ding
1536227f609cSHerve Codinaconfig SND_SOC_PEB2466
1537227f609cSHerve Codina	tristate "Infineon PEB2466 quad PCM codec"
1538227f609cSHerve Codina	depends on SPI
1539227f609cSHerve Codina	select REGMAP_SPI
1540227f609cSHerve Codina	help
1541227f609cSHerve Codina	  Enable support for the Infineon PEB2466 quad PCM codec,
1542227f609cSHerve Codina	  also named SICOFI 4-uC.
1543227f609cSHerve Codina
1544227f609cSHerve Codina	  To compile this driver as a module, choose M here: the module
1545227f609cSHerve Codina	  will be called snd-soc-peb2466.
1546227f609cSHerve Codina
15474ed0915fSLuca Ceresoliconfig SND_SOC_RK3308
15484ed0915fSLuca Ceresoli	tristate "Rockchip RK3308 audio CODEC"
154903246adeSLuca Ceresoli	depends on ARM64 || COMPILE_TEST
15509fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
15514ed0915fSLuca Ceresoli	select REGMAP_MMIO
15524ed0915fSLuca Ceresoli	help
15534ed0915fSLuca Ceresoli	  This is a device driver for the audio codec embedded in the
15544ed0915fSLuca Ceresoli	  Rockchip RK3308 SoC.
15554ed0915fSLuca Ceresoli
15564ed0915fSLuca Ceresoli	  It has 8 24-bit ADCs and 2 24-bit DACs. The maximum supported
15574ed0915fSLuca Ceresoli	  sampling rate is 192 kHz.
15584ed0915fSLuca Ceresoli
1559c3275903SKatsuhiro Suzukiconfig SND_SOC_RK3328
1560c3275903SKatsuhiro Suzuki	tristate "Rockchip RK3328 audio CODEC"
15619fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
1562c3275903SKatsuhiro Suzuki	select REGMAP_MMIO
1563c3275903SKatsuhiro Suzuki
15640d6a04daSChris Morganconfig SND_SOC_RK817
15650d6a04daSChris Morgan	tristate "Rockchip RK817 audio CODEC"
1566c20e8c5bSSebastian Reichel	depends on MFD_RK8XX || COMPILE_TEST
15670d6a04daSChris Morgan
156849ef7925SOder Chiouconfig SND_SOC_RL6231
156949ef7925SOder Chiou	tristate
15704a6180eaSOder Chiou	default y if SND_SOC_RT5514=y
1571b1d15059SBard Liao	default y if SND_SOC_RT5616=y
157249ef7925SOder Chiou	default y if SND_SOC_RT5640=y
157349ef7925SOder Chiou	default y if SND_SOC_RT5645=y
157449ef7925SOder Chiou	default y if SND_SOC_RT5651=y
1575d3cb2de2SBard Liao	default y if SND_SOC_RT5659=y
15762b26dd4cSOder Chiou	default y if SND_SOC_RT5660=y
1577df7c5216SBard Liao	default y if SND_SOC_RT5663=y
1578c7f87f96SAxel Lin	default y if SND_SOC_RT5665=y
1579d59fb285SBard Liao	default y if SND_SOC_RT5668=y
15805e8351deSBard Liao	default y if SND_SOC_RT5670=y
158130f14b43SAxel Lin	default y if SND_SOC_RT5677=y
15820ddce71cSBard Liao	default y if SND_SOC_RT5682=y
1583d6e65bb7SShuming Fan	default y if SND_SOC_RT1011=y
1584df310074SJack Yu	default y if SND_SOC_RT1015=y
1585c07152d4STzung-Bi Shih	default y if SND_SOC_RT1015P=y
15867ec79d38SJack Yu	default y if SND_SOC_RT1019=y
158729bc643dSShuming Fan	default y if SND_SOC_RT1305=y
15882b9def8cSDerek Fang	default y if SND_SOC_RT1308=y
15894a6180eaSOder Chiou	default m if SND_SOC_RT5514=m
1590b1d15059SBard Liao	default m if SND_SOC_RT5616=m
159149ef7925SOder Chiou	default m if SND_SOC_RT5640=m
159249ef7925SOder Chiou	default m if SND_SOC_RT5645=m
159349ef7925SOder Chiou	default m if SND_SOC_RT5651=m
1594d3cb2de2SBard Liao	default m if SND_SOC_RT5659=m
15952b26dd4cSOder Chiou	default m if SND_SOC_RT5660=m
1596df7c5216SBard Liao	default m if SND_SOC_RT5663=m
1597c7f87f96SAxel Lin	default m if SND_SOC_RT5665=m
1598d59fb285SBard Liao	default m if SND_SOC_RT5668=m
15995e8351deSBard Liao	default m if SND_SOC_RT5670=m
160030f14b43SAxel Lin	default m if SND_SOC_RT5677=m
16010ddce71cSBard Liao	default m if SND_SOC_RT5682=m
1602d6e65bb7SShuming Fan	default m if SND_SOC_RT1011=m
1603df310074SJack Yu	default m if SND_SOC_RT1015=m
1604c07152d4STzung-Bi Shih	default m if SND_SOC_RT1015P=m
16057ec79d38SJack Yu	default m if SND_SOC_RT1019=m
160629bc643dSShuming Fan	default m if SND_SOC_RT1305=m
16072b9def8cSDerek Fang	default m if SND_SOC_RT1308=m
160849ef7925SOder Chiou
1609bbca8e70SJack Yuconfig SND_SOC_RT_SDW_COMMON
1610bbca8e70SJack Yu	tristate
1611bbca8e70SJack Yu	default y if SND_SOC_RT721_SDCA_SDW=y
1612bbca8e70SJack Yu	default m if SND_SOC_RT721_SDCA_SDW=m
1613bbca8e70SJack Yu
1614bc08f96bSOder Chiouconfig SND_SOC_RL6347A
1615bc08f96bSOder Chiou	tristate
1616c7e79b2bSBard Liao	default y if SND_SOC_RT274=y
1617bc08f96bSOder Chiou	default y if SND_SOC_RT286=y
16186adcafaeSBard Liao	default y if SND_SOC_RT298=y
1619c7e79b2bSBard Liao	default m if SND_SOC_RT274=m
1620bc08f96bSOder Chiou	default m if SND_SOC_RT286=m
16216adcafaeSBard Liao	default m if SND_SOC_RT298=m
1622bc08f96bSOder Chiou
1623c7e79b2bSBard Liaoconfig SND_SOC_RT274
1624c7e79b2bSBard Liao	tristate
1625c7e79b2bSBard Liao	depends on I2C
1626c7e79b2bSBard Liao
162707cf7cbaSBard Liaoconfig SND_SOC_RT286
162807cf7cbaSBard Liao	tristate
1629a577483bSBard Liao	depends on I2C
163007cf7cbaSBard Liao
16316adcafaeSBard Liaoconfig SND_SOC_RT298
16326adcafaeSBard Liao	tristate
16336adcafaeSBard Liao	depends on I2C
16346adcafaeSBard Liao
1635d6e65bb7SShuming Fanconfig SND_SOC_RT1011
1636d6e65bb7SShuming Fan	tristate
1637ce0c97f8SGeert Uytterhoeven	depends on I2C
1638d6e65bb7SShuming Fan
1639df310074SJack Yuconfig SND_SOC_RT1015
1640df310074SJack Yu	tristate
1641ce0c97f8SGeert Uytterhoeven	depends on I2C
1642df310074SJack Yu
1643c07152d4STzung-Bi Shihconfig SND_SOC_RT1015P
1644c07152d4STzung-Bi Shih	tristate
1645c07152d4STzung-Bi Shih
1646953b1388SStephen Kittconfig SND_SOC_RT1016
1647953b1388SStephen Kitt	tristate
1648953b1388SStephen Kitt	depends on I2C
1649953b1388SStephen Kitt
16502b7aecd5SDerek Fangconfig SND_SOC_RT1017_SDCA_SDW
16512b7aecd5SDerek Fang	tristate "Realtek RT1017 SDCA Codec - SDW"
16522b7aecd5SDerek Fang	depends on SOUNDWIRE
16532b7aecd5SDerek Fang	select REGMAP_SOUNDWIRE
16542b7aecd5SDerek Fang
16557ec79d38SJack Yuconfig SND_SOC_RT1019
16567ec79d38SJack Yu	tristate
16577ec79d38SJack Yu	depends on I2C
16587ec79d38SJack Yu
165929bc643dSShuming Fanconfig SND_SOC_RT1305
166029bc643dSShuming Fan	tristate
1661ce0c97f8SGeert Uytterhoeven	depends on I2C
166229bc643dSShuming Fan
16632b9def8cSDerek Fangconfig SND_SOC_RT1308
16642b9def8cSDerek Fang	tristate
1665ce0c97f8SGeert Uytterhoeven	depends on I2C
16662b9def8cSDerek Fang
1667a87a6653SShuming Fanconfig SND_SOC_RT1308_SDW
1668a87a6653SShuming Fan	tristate "Realtek RT1308 Codec - SDW"
1669ce0c97f8SGeert Uytterhoeven	depends on I2C && SOUNDWIRE
1670a87a6653SShuming Fan	select REGMAP_SOUNDWIRE
1671a87a6653SShuming Fan
16722b719fd2SShuming Fanconfig SND_SOC_RT1316_SDW
16732b719fd2SShuming Fan	tristate "Realtek RT1316 Codec - SDW"
16742b719fd2SShuming Fan	depends on SOUNDWIRE
16752b719fd2SShuming Fan	select REGMAP_SOUNDWIRE
16762b719fd2SShuming Fan
1677fe1ff614SJack Yuconfig SND_SOC_RT1318
1678fe1ff614SJack Yu	tristate
1679fe1ff614SJack Yu	depends on I2C
1680fe1ff614SJack Yu
16816ad73a2bSShuming Fanconfig SND_SOC_RT1318_SDW
16826ad73a2bSShuming Fan	tristate "Realtek RT1318 Codec - SDW"
16836ad73a2bSShuming Fan	depends on SOUNDWIRE
16846ad73a2bSShuming Fan	select REGMAP_SOUNDWIRE
16856ad73a2bSShuming Fan
1686bad0a07aSShuming Fanconfig SND_SOC_RT1320_SDW
1687bad0a07aSShuming Fan	tristate "Realtek RT1320 Codec - SDW"
1688bad0a07aSShuming Fan	depends on SOUNDWIRE
1689bad0a07aSShuming Fan	select REGMAP_SOUNDWIRE
1690bad0a07aSShuming Fan	select REGMAP_SOUNDWIRE_MBQ
1691bad0a07aSShuming Fan
16924a6180eaSOder Chiouconfig SND_SOC_RT5514
1693b1d15059SBard Liao	tristate
1694ce0c97f8SGeert Uytterhoeven	depends on I2C
1695b1d15059SBard Liao
16966eebf35bSOder Chiouconfig SND_SOC_RT5514_SPI
16976eebf35bSOder Chiou	tristate
1698ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
16996eebf35bSOder Chiou
1700c5630877SArnd Bergmannconfig SND_SOC_RT5514_SPI_BUILTIN
1701c5630877SArnd Bergmann	bool # force RT5514_SPI to be built-in to avoid link errors
1702c5630877SArnd Bergmann	default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
1703c5630877SArnd Bergmann
1704997b0520SBard Liaoconfig SND_SOC_RT5616
1705288bc356SCaesar Wang	tristate "Realtek RT5616 CODEC"
1706af139d55SArnd Bergmann	depends on I2C
1707997b0520SBard Liao
17081319b2f6SOder Chiouconfig SND_SOC_RT5631
17091319b2f6SOder Chiou	tristate "Realtek ALC5631/RT5631 CODEC"
17101319b2f6SOder Chiou	depends on I2C
171140bc18a2SBard Liao
171240bc18a2SBard Liaoconfig SND_SOC_RT5640
171308c56cabSMartin Blumenstingl	tristate "Realtek RT5640/RT5639 Codec"
1714ce0c97f8SGeert Uytterhoeven	depends on I2C
17159b34e6ccSZeng Zhaoming
171640bc18a2SBard Liaoconfig SND_SOC_RT5645
171740bc18a2SBard Liao	tristate
1718ce0c97f8SGeert Uytterhoeven	depends on I2C
17194dc69be2SVinod Koul
17204dc69be2SVinod Koulconfig SND_SOC_RT5651
17211291e141SMark Brown	tristate
1722ce0c97f8SGeert Uytterhoeven	depends on I2C
17231291e141SMark Brown
1724d3cb2de2SBard Liaoconfig SND_SOC_RT5659
1725563c2681SSameer Pujar	tristate "Realtek RT5658/RT5659 Codec"
1726ce0c97f8SGeert Uytterhoeven	depends on I2C
1727d3cb2de2SBard Liao
17282b26dd4cSOder Chiouconfig SND_SOC_RT5660
17292b26dd4cSOder Chiou	tristate
1730ce0c97f8SGeert Uytterhoeven	depends on I2C
17312b26dd4cSOder Chiou
1732c7f87f96SAxel Linconfig SND_SOC_RT5663
173333ada14aSBard Liao	tristate
1734ce0c97f8SGeert Uytterhoeven	depends on I2C
173533ada14aSBard Liao
1736c7f87f96SAxel Linconfig SND_SOC_RT5665
1737df7c5216SBard Liao	tristate
1738ce0c97f8SGeert Uytterhoeven	depends on I2C
1739df7c5216SBard Liao
1740d59fb285SBard Liaoconfig SND_SOC_RT5668
1741d59fb285SBard Liao	tristate
1742ce0c97f8SGeert Uytterhoeven	depends on I2C
1743d59fb285SBard Liao
17445e8351deSBard Liaoconfig SND_SOC_RT5670
17455e8351deSBard Liao	tristate
1746ce0c97f8SGeert Uytterhoeven	depends on I2C
17475e8351deSBard Liao
17480e826e86SOder Chiouconfig SND_SOC_RT5677
17490e826e86SOder Chiou	tristate
17501d0158f5SGeert Uytterhoeven	depends on I2C
1751359ff7ffSBen Zhang	select REGMAP_I2C
1752359ff7ffSBen Zhang	select REGMAP_IRQ
17530e826e86SOder Chiou
1754e29bee09SBen Zhangconfig SND_SOC_RT5677_SPI
1755e29bee09SBen Zhang	tristate
17564c121129SArnd Bergmann	default SND_SOC_RT5677 && SPI
1757e29bee09SBen Zhang
17580ddce71cSBard Liaoconfig SND_SOC_RT5682
17590ddce71cSBard Liao	tristate
1760a50067d4SArnd Bergmann
1761a50067d4SArnd Bergmannconfig SND_SOC_RT5682_I2C
1762a50067d4SArnd Bergmann	tristate
1763a50067d4SArnd Bergmann	depends on I2C
1764a50067d4SArnd Bergmann	select SND_SOC_RT5682
17650ddce71cSBard Liao
176603f6fc6dSOder Chiouconfig SND_SOC_RT5682_SDW
176703f6fc6dSOder Chiou	tristate "Realtek RT5682 Codec - SDW"
176803f6fc6dSOder Chiou	depends on SOUNDWIRE
176903f6fc6dSOder Chiou	select SND_SOC_RT5682
177003f6fc6dSOder Chiou	select REGMAP_SOUNDWIRE
177103f6fc6dSOder Chiou
1772bdd229abSDerek Fangconfig SND_SOC_RT5682S
1773bdd229abSDerek Fang	tristate
1774bdd229abSDerek Fang	depends on I2C
1775bdd229abSDerek Fang
17767d2a5f9aSShuming Fanconfig SND_SOC_RT700
17777d2a5f9aSShuming Fan	tristate
17787d2a5f9aSShuming Fan
17797d2a5f9aSShuming Fanconfig SND_SOC_RT700_SDW
17807d2a5f9aSShuming Fan	tristate "Realtek RT700 Codec - SDW"
17817d2a5f9aSShuming Fan	depends on SOUNDWIRE
17827d2a5f9aSShuming Fan	select SND_SOC_RT700
17837d2a5f9aSShuming Fan	select REGMAP_SOUNDWIRE
17847d2a5f9aSShuming Fan
1785320b8b0dSShuming Fanconfig SND_SOC_RT711
1786320b8b0dSShuming Fan	tristate
1787320b8b0dSShuming Fan
1788320b8b0dSShuming Fanconfig SND_SOC_RT711_SDW
1789320b8b0dSShuming Fan	tristate "Realtek RT711 Codec - SDW"
1790320b8b0dSShuming Fan	depends on SOUNDWIRE
1791320b8b0dSShuming Fan	select SND_SOC_RT711
1792320b8b0dSShuming Fan	select REGMAP_SOUNDWIRE
1793320b8b0dSShuming Fan
17947ad4d237SShuming Fanconfig SND_SOC_RT711_SDCA_SDW
17957ad4d237SShuming Fan	tristate "Realtek RT711 SDCA Codec - SDW"
17967ad4d237SShuming Fan	depends on SOUNDWIRE
17977ad4d237SShuming Fan	select REGMAP_SOUNDWIRE
17987ad4d237SShuming Fan	select REGMAP_SOUNDWIRE_MBQ
17997ad4d237SShuming Fan
18006c39710dSShuming Fanconfig SND_SOC_RT712_SDCA_SDW
18016c39710dSShuming Fan	tristate "Realtek RT712 SDCA Codec - SDW"
18026c39710dSShuming Fan	depends on SOUNDWIRE
18036c39710dSShuming Fan	select REGMAP_SOUNDWIRE
18046c39710dSShuming Fan	select REGMAP_SOUNDWIRE_MBQ
18056c39710dSShuming Fan
180663a51128SShuming Fanconfig SND_SOC_RT712_SDCA_DMIC_SDW
180763a51128SShuming Fan	tristate "Realtek RT712 SDCA DMIC Codec - SDW"
180863a51128SShuming Fan	depends on SOUNDWIRE
180963a51128SShuming Fan	select REGMAP_SOUNDWIRE
181063a51128SShuming Fan	select REGMAP_SOUNDWIRE_MBQ
181163a51128SShuming Fan
181286ce355cSJack Yuconfig SND_SOC_RT721_SDCA_SDW
181386ce355cSJack Yu	tristate "Realtek RT721 SDCA Codec - SDW"
181486ce355cSJack Yu	depends on SOUNDWIRE
181586ce355cSJack Yu	select REGMAP_SOUNDWIRE
181686ce355cSJack Yu	select REGMAP_SOUNDWIRE_MBQ
181786ce355cSJack Yu
18187f5d6036SJack Yuconfig SND_SOC_RT722_SDCA_SDW
18197f5d6036SJack Yu	tristate "Realtek RT722 SDCA Codec - SDW"
18207f5d6036SJack Yu	depends on SOUNDWIRE
18217f5d6036SJack Yu	select REGMAP_SOUNDWIRE
18227f5d6036SJack Yu	select REGMAP_SOUNDWIRE_MBQ
18237f5d6036SJack Yu
1824d1ede064SJack Yuconfig SND_SOC_RT715
1825d1ede064SJack Yu	tristate
1826d1ede064SJack Yu
1827d1ede064SJack Yuconfig SND_SOC_RT715_SDW
1828d1ede064SJack Yu	tristate "Realtek RT715 Codec - SDW"
1829d1ede064SJack Yu	depends on SOUNDWIRE
1830d1ede064SJack Yu	select SND_SOC_RT715
1831d1ede064SJack Yu	select REGMAP_SOUNDWIRE
1832d1ede064SJack Yu
183320d17057SJack Yuconfig SND_SOC_RT715_SDCA_SDW
183420d17057SJack Yu	tristate "Realtek RT715 SDCA Codec - SDW"
183520d17057SJack Yu	depends on SOUNDWIRE
183620d17057SJack Yu	select REGMAP_SOUNDWIRE
183720d17057SJack Yu	select REGMAP_SOUNDWIRE_MBQ
183820d17057SJack Yu
18397228d835SChiYuan Huangconfig SND_SOC_RT9120
18407228d835SChiYuan Huang	tristate "Richtek RT9120 Stereo Class-D Amplifier"
18417228d835SChiYuan Huang	depends on I2C
18427228d835SChiYuan Huang	select REGMAP_I2C
18437228d835SChiYuan Huang	help
18447228d835SChiYuan Huang	  Enable support for Richtek RT9120 20W, stereo, inductor-less,
18457228d835SChiYuan Huang	  high-efficiency Class-D audio amplifier.
18467228d835SChiYuan Huang
18478bffd24eSChiYuan Huangconfig SND_SOC_RT9123
18488bffd24eSChiYuan Huang	tristate "Richtek RT9123 Mono Class-D Amplifier"
18498bffd24eSChiYuan Huang	depends on I2C
18508bffd24eSChiYuan Huang	select REGMAP_I2C
18518bffd24eSChiYuan Huang	help
18528bffd24eSChiYuan Huang	  Enable support for the I2C control mode of Richtek RT9123 3.2W mono
18538bffd24eSChiYuan Huang	  Class-D audio amplifier.
18548bffd24eSChiYuan Huang
185538c2585cSChiYuan Huangconfig SND_SOC_RT9123P
185638c2585cSChiYuan Huang	tristate "Richtek RT9123P Mono Class-D Amplifier"
185738c2585cSChiYuan Huang	help
185838c2585cSChiYuan Huang	  Enable support for the HW control mode of Richtek RT9123P 3.2W mono
185938c2585cSChiYuan Huang	  Class-D audio amplifier.
186038c2585cSChiYuan Huang
1861736064c6SChiYuan Huangconfig SND_SOC_RTQ9128
1862736064c6SChiYuan Huang	tristate "Richtek RTQ9128 45W Digital Input Amplifier"
1863736064c6SChiYuan Huang	depends on I2C
1864736064c6SChiYuan Huang	select REGMAP
1865736064c6SChiYuan Huang	help
1866736064c6SChiYuan Huang	  Enable support for Richtek RTQ9128 digital input 4-channel
1867736064c6SChiYuan Huang	  automotive audio amplifier.  It is a ultra-low output noise,
1868736064c6SChiYuan Huang	  high-efficiency, four-channel class-D audio power amplifier
1869736064c6SChiYuan Huang	  that can deliver over 87% power efficienty at 4x75W into 4Ohm,
1870736064c6SChiYuan Huang	  25V supply in automotive applications.
1871736064c6SChiYuan Huang
1872736064c6SChiYuan Huang	  To compile this driver as a module, choose M here: the module
1873736064c6SChiYuan Huang	  will be called snd-soc-rtq9128.
1874736064c6SChiYuan Huang
187581d3d3d0SPierre-Louis Bossartconfig SND_SOC_SDW_MOCKUP
187681d3d3d0SPierre-Louis Bossart	tristate "SoundWire mockup codec"
187781d3d3d0SPierre-Louis Bossart	depends on EXPERT
187881d3d3d0SPierre-Louis Bossart	depends on SOUNDWIRE
187981d3d3d0SPierre-Louis Bossart	help
188081d3d3d0SPierre-Louis Bossart	  This option enables a SoundWire mockup codec that does not drive the
188181d3d3d0SPierre-Louis Bossart	  bus, take part in the command/command protocol or generate data on a
188281d3d3d0SPierre-Louis Bossart	  Source port.
188381d3d3d0SPierre-Louis Bossart	  This option is only intended to be used for tests on a device
188481d3d3d0SPierre-Louis Bossart	  with a connector, in combination with a bus analyzer, or to test new
188581d3d3d0SPierre-Louis Bossart	  topologies that differ from the actual hardware layout.
188681d3d3d0SPierre-Louis Bossart	  This mockup device could be totally virtual but could also be a
188781d3d3d0SPierre-Louis Bossart	  real physical one with one key restriction: it is not allowed by the
188881d3d3d0SPierre-Louis Bossart	  SoundWire specification to be configured via a sideband mechanism and
188981d3d3d0SPierre-Louis Bossart	  generate audio data for capture. However, nothing prevents such a
189081d3d3d0SPierre-Louis Bossart	  peripheral device from snooping the bus.
189181d3d3d0SPierre-Louis Bossart
1892be461ba8SChaithrika U S#Freescale sgtl5000 codec
1893330345ebSAndrey Smirnovconfig SND_SOC_SGTL5000
1894330345ebSAndrey Smirnov	tristate "Freescale SGTL5000 CODEC"
1895330345ebSAndrey Smirnov	depends on I2C
189640216ce7SLars-Peter Clausen
189740216ce7SLars-Peter Clausenconfig SND_SOC_SI476X
189840216ce7SLars-Peter Clausen	tristate
189940216ce7SLars-Peter Clausen
1900be461ba8SChaithrika U Sconfig SND_SOC_SIGMADSP
1901be461ba8SChaithrika U S	tristate
19023e860846SMark Brown	select CRC32
19033e860846SMark Brown
19046b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_I2C
19056b10998dSLars-Peter Clausen	tristate
19066b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
19076b10998dSLars-Peter Clausen
19086b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_REGMAP
19096b10998dSLars-Peter Clausen	tristate
19106b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
19116b10998dSLars-Peter Clausen
19128d881bb6SJerome Brunetconfig SND_SOC_SIMPLE_AMPLIFIER
19138d881bb6SJerome Brunet	tristate "Simple Audio Amplifier"
19148d881bb6SJerome Brunet
1915342fbb75SAlexandre Belloniconfig SND_SOC_SIMPLE_MUX
1916342fbb75SAlexandre Belloni	tristate "Simple Audio Mux"
1917805fff75SMark Brown	depends on GPIOLIB
1918342fbb75SAlexandre Belloni
191968cd394eSKiseokJoconfig SND_SOC_SMA1303
192068cd394eSKiseokJo	tristate "Iron Device SMA1303 Audio Amplifier"
192168cd394eSKiseokJo	depends on I2C
192268cd394eSKiseokJo	help
192368cd394eSKiseokJo	  Enable support for Iron Device SMA1303 Boosted Class-D amplifier
192468cd394eSKiseokJo
1925576c57e6SKiseok Joconfig SND_SOC_SMA1307
1926576c57e6SKiseok Jo	tristate "Iron Device SMA1307 Audio Amplifier"
1927576c57e6SKiseok Jo	depends on I2C
1928576c57e6SKiseok Jo	help
1929576c57e6SKiseok Jo	  Enable support for Iron Device SMA1307 boosted digital speaker
1930576c57e6SKiseok Jo	  amplifier with feedback-loop.
1931576c57e6SKiseok Jo	  If you are using a system with an SMA1307 amplifier connected
1932576c57e6SKiseok Jo	  via I2C, enable this option.
1933576c57e6SKiseok Jo
19343e860846SMark Brownconfig SND_SOC_SPDIF
19351291e141SMark Brown	tristate "S/PDIF CODEC"
19363c166c7fSJon Smirl
19374e6bedd3SMatt Flaxconfig SND_SOC_SRC4XXX_I2C
19384e6bedd3SMatt Flax	tristate "Texas Instruments SRC4XXX DIR/DIT and SRC codecs"
19394e6bedd3SMatt Flax	depends on I2C
19404e6bedd3SMatt Flax	select SND_SOC_SRC4XXX
19414e6bedd3SMatt Flax	help
19424e6bedd3SMatt Flax	  Enable support for the TI SRC4XXX family of codecs. These include the
19434e6bedd3SMatt Flax	  scr4392 which has digital receivers, transmitters, and
19444e6bedd3SMatt Flax	  a sample rate converter, including numerous ports.
19454e6bedd3SMatt Flax
19464e6bedd3SMatt Flaxconfig SND_SOC_SRC4XXX
19474e6bedd3SMatt Flax	tristate
19484e6bedd3SMatt Flax
194974f24d87SMarco Felschconfig SND_SOC_SSM2305
195074f24d87SMarco Felsch	tristate "Analog Devices SSM2305 Class-D Amplifier"
195174f24d87SMarco Felsch	help
195274f24d87SMarco Felsch	  Enable support for Analog Devices SSM2305 filterless
195374f24d87SMarco Felsch	  high-efficiency mono Class-D audio power amplifiers.
195474f24d87SMarco Felsch
1955b6b5e76bSLars-Peter Clausenconfig SND_SOC_SSM2518
19562c70ff56SLucas Stach	tristate "Analog Devices SSM2518 Class-D Amplifier"
1957ce0c97f8SGeert Uytterhoeven	depends on I2C
1958b6b5e76bSLars-Peter Clausen
19593e860846SMark Brownconfig SND_SOC_SSM2602
19603e860846SMark Brown	tristate
19613e860846SMark Brown
1962c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_SPI
1963555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - SPI"
1964555b9ee1SStefan Kristiansson	depends on SPI_MASTER
1965c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
1966555b9ee1SStefan Kristiansson	select REGMAP_SPI
1967c924dc68SLars-Peter Clausen
1968c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_I2C
1969555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - I2C"
1970555b9ee1SStefan Kristiansson	depends on I2C
1971c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
1972555b9ee1SStefan Kristiansson	select REGMAP_I2C
1973c924dc68SLars-Peter Clausen
19744ac690bbSMartin Povišerconfig SND_SOC_SSM3515
19754ac690bbSMartin Povišer	tristate "Analog Devices SSM3515 amplifier driver"
19764ac690bbSMartin Povišer	select REGMAP_I2C
19774ac690bbSMartin Povišer	depends on I2C
19784ac690bbSMartin Povišer	depends on OF
19794ac690bbSMartin Povišer
19801ee44ce0SAnatol Pomozovconfig SND_SOC_SSM4567
19811ee44ce0SAnatol Pomozov	tristate "Analog Devices ssm4567 amplifier driver support"
19821ee44ce0SAnatol Pomozov	depends on I2C
1983c1f27190SArun KS
1984c1f27190SArun KSconfig SND_SOC_STA32X
19856fad6259SThomas Niederprüm	tristate "STA326, STA328 and STA329 speaker amplifier"
19866fad6259SThomas Niederprüm	depends on I2C
1987a1be4ceaSThomas Niederprüm	select REGMAP_I2C
1988c1f27190SArun KS
19892439ea1fSSven Brandauconfig SND_SOC_STA350
19902439ea1fSSven Brandau	tristate "STA350 speaker amplifier"
19912439ea1fSSven Brandau	depends on I2C
19922439ea1fSSven Brandau
1993c1f27190SArun KSconfig SND_SOC_STA529
19943e860846SMark Brown	tristate
1995ce0c97f8SGeert Uytterhoeven	depends on I2C
19963e860846SMark Brown
19973e860846SMark Brownconfig SND_SOC_STAC9766
19983e860846SMark Brown	tristate
1999d8dd3f92SGeert Uytterhoeven	depends on SND_SOC_AC97_BUS
2000c70064b9SRandy Dunlap	select REGMAP_AC97
20013e860846SMark Brown
200232a726b2SArnaud Pouliquenconfig SND_SOC_STI_SAS
200332a726b2SArnaud Pouliquen	tristate "codec Audio support for STI SAS codec"
200432a726b2SArnaud Pouliquen
20055df7f71dSDan Murphyconfig SND_SOC_TAS2552
20065df7f71dSDan Murphy	tristate "Texas Instruments TAS2552 Mono Audio amplifier"
20075df7f71dSDan Murphy	depends on I2C
20085df7f71dSDan Murphy
2009c173dba4SDan Murphyconfig SND_SOC_TAS2562
2010c173dba4SDan Murphy	tristate "Texas Instruments TAS2562 Mono Audio amplifier"
2011c173dba4SDan Murphy	depends on I2C
2012c173dba4SDan Murphy
2013827ed8a0SDan Murphyconfig SND_SOC_TAS2764
2014827ed8a0SDan Murphy	tristate "Texas Instruments TAS2764 Mono Audio amplifier"
2015827ed8a0SDan Murphy	depends on I2C
2016827ed8a0SDan Murphy
20171a476abcSFrank Shiconfig SND_SOC_TAS2770
20181a476abcSFrank Shi	tristate "Texas Instruments TAS2770 speaker amplifier"
20191a476abcSFrank Shi	depends on I2C
20201a476abcSFrank Shi
2021eae9f9ceSRaphael-Xuconfig SND_SOC_TAS2780
2022eae9f9ceSRaphael-Xu	tristate "Texas Instruments TAS2780 Mono Audio amplifier"
2023eae9f9ceSRaphael-Xu	depends on I2C
2024eae9f9ceSRaphael-Xu	help
2025eae9f9ceSRaphael-Xu	  Enable support for Texas Instruments TAS2780 high-efficiency
2026eae9f9ceSRaphael-Xu	  digital input mono Class-D audio power amplifiers.
2027eae9f9ceSRaphael-Xu
2028ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_COMLIB
20299fa6a693SShenghao Ding	tristate
20309fa6a693SShenghao Ding
20319fa6a693SShenghao Dingconfig SND_SOC_TAS2781_COMLIB_I2C
2032ef3bcde7SShenghao Ding	depends on I2C
2033ef3bcde7SShenghao Ding	select CRC8
2034ef3bcde7SShenghao Ding	select REGMAP_I2C
2035ef3bcde7SShenghao Ding	tristate
2036ef3bcde7SShenghao Ding
2037ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_FMWLIB
20389fa6a693SShenghao Ding	select SND_SOC_TAS2781_COMLIB
2039f0ccc717SArnd Bergmann	select CRC8
2040ef3bcde7SShenghao Ding	tristate
2041ef3bcde7SShenghao Ding	default n
2042ef3bcde7SShenghao Ding
2043ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_I2C
2044ef3bcde7SShenghao Ding	tristate "Texas Instruments TAS2781 speaker amplifier based on I2C"
2045ef3bcde7SShenghao Ding	depends on I2C
20469fa6a693SShenghao Ding	select SND_SOC_TAS2781_COMLIB_I2C
2047ef3bcde7SShenghao Ding	select SND_SOC_TAS2781_FMWLIB
2048ef3bcde7SShenghao Ding	help
2049ef3bcde7SShenghao Ding	  Enable support for Texas Instruments TAS2781 Smart Amplifier
2050ef3bcde7SShenghao Ding	  Digital input mono Class-D and DSP-inside audio power amplifiers.
2051ef3bcde7SShenghao Ding	  Note the TAS2781 driver implements a flexible and configurable
2052ef3bcde7SShenghao Ding	  algo coefficient setting, for one, two or even multiple TAS2781
2053ef3bcde7SShenghao Ding	  chips.
2054ef3bcde7SShenghao Ding
20553e860846SMark Brownconfig SND_SOC_TAS5086
20563e860846SMark Brown	tristate "Texas Instruments TAS5086 speaker amplifier"
20573e860846SMark Brown	depends on I2C
20583e860846SMark Brown
20593fd6e7d9SKevin Cernekeeconfig SND_SOC_TAS571X
2060f516d322SJerome Brunet	tristate "Texas Instruments TAS571x power amplifiers"
20613fd6e7d9SKevin Cernekee	depends on I2C
2062f516d322SJerome Brunet	help
2063f516d322SJerome Brunet	  Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
2064f516d322SJerome Brunet	  TAS5719 and TAS5721 power amplifiers
20653fd6e7d9SKevin Cernekee
2066bd023adaSAndreas Dannenbergconfig SND_SOC_TAS5720
2067bd023adaSAndreas Dannenberg	tristate "Texas Instruments TAS5720 Mono Audio amplifier"
2068bd023adaSAndreas Dannenberg	depends on I2C
2069bd023adaSAndreas Dannenberg	help
2070bd023adaSAndreas Dannenberg	  Enable support for Texas Instruments TAS5720L/M high-efficiency mono
2071bd023adaSAndreas Dannenberg	  Class-D audio power amplifiers.
2072bd023adaSAndreas Dannenberg
2073ec452684SDaniel Beerconfig SND_SOC_TAS5805M
2074ec452684SDaniel Beer	tristate "Texas Instruments TAS5805M speaker amplifier"
2075ec452684SDaniel Beer	depends on I2C
2076ec452684SDaniel Beer	help
2077ec452684SDaniel Beer	  Enable support for Texas Instruments TAS5805M Class-D
2078ec452684SDaniel Beer	  amplifiers. This is a speaker amplifier with an integrated
2079ec452684SDaniel Beer	  DSP. DSP configuration for each instance needs to be supplied
2080ec452684SDaniel Beer	  via a device-tree attribute.
2081ec452684SDaniel Beer
2082157b68baSAndreas Dannenbergconfig SND_SOC_TAS6424
2083157b68baSAndreas Dannenberg	tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
2084157b68baSAndreas Dannenberg	depends on I2C
2085157b68baSAndreas Dannenberg	help
2086157b68baSAndreas Dannenberg	  Enable support for Texas Instruments TAS6424 high-efficiency
2087157b68baSAndreas Dannenberg	  digital input quad-channel Class-D audio power amplifiers.
2088157b68baSAndreas Dannenberg
20893d3db943SMatt Porterconfig SND_SOC_TDA7419
20903d3db943SMatt Porter	tristate "ST TDA7419 audio processor"
20913d3db943SMatt Porter	depends on I2C
20923d3db943SMatt Porter	select REGMAP_I2C
20933d3db943SMatt Porter
2094fbace43eSPeter Rosinconfig SND_SOC_TFA9879
2095fbace43eSPeter Rosin	tristate "NXP Semiconductors TFA9879 amplifier"
2096fbace43eSPeter Rosin	depends on I2C
2097fbace43eSPeter Rosin
2098af00978aSStephan Gerholdconfig SND_SOC_TFA989X
2099af00978aSStephan Gerhold	tristate "NXP/Goodix TFA989X (TFA1) amplifiers"
2100af00978aSStephan Gerhold	depends on I2C
2101af00978aSStephan Gerhold	select REGMAP_I2C
2102af00978aSStephan Gerhold	help
2103af00978aSStephan Gerhold	  Enable support for NXP (now Goodix) TFA989X (TFA1 family) speaker
2104af00978aSStephan Gerhold	  amplifiers, e.g. TFA9895.
2105af00978aSStephan Gerhold	  Note that the driver currently bypasses the built-in "CoolFlux DSP"
2106af00978aSStephan Gerhold	  and does not support (hardware) volume control.
2107af00978aSStephan Gerhold
2108e9a3b57eSRicard Wanderlofconfig SND_SOC_TLV320ADC3XXX
2109e9a3b57eSRicard Wanderlof	tristate "Texas Instruments TLV320ADC3001/3101 audio ADC"
2110e9a3b57eSRicard Wanderlof	depends on I2C
2111551f2994SRandy Dunlap	depends on GPIOLIB
2112e9a3b57eSRicard Wanderlof	help
2113e9a3b57eSRicard Wanderlof	 Enable support for Texas Instruments TLV320ADC3001 and TLV320ADC3101
2114e9a3b57eSRicard Wanderlof	 ADCs.
2115e9a3b57eSRicard Wanderlof
21163e860846SMark Brownconfig SND_SOC_TLV320AIC23
21173e860846SMark Brown	tristate
21183e860846SMark Brown
2119b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_I2C
2120d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
2121bf9706feSMax Filippov	depends on I2C
2122b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
2123b3fc5725SMax Filippov
2124b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_SPI
2125d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
2126bf9706feSMax Filippov	depends on SPI_MASTER
2127b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
2128b3fc5725SMax Filippov
21293e860846SMark Brownconfig SND_SOC_TLV320AIC26
2130379cf397SPaul Bolle	tristate
2131446e0f69STakashi Iwai	depends on SPI
21323e860846SMark Brown
2133e00447faSJyri Sarhaconfig SND_SOC_TLV320AIC31XX
213496665e31SPeter Ujfalusi	tristate "Texas Instruments TLV320AIC31xx CODECs"
2135a9ef83f2SPeter Ujfalusi	depends on I2C
2136a9ef83f2SPeter Ujfalusi	select REGMAP_I2C
2137e00447faSJyri Sarha
2138684a65d4SWolfram Sangconfig SND_SOC_TLV320AIC32X4
21391d471cd1SJavier Martin	tristate
2140514b044cSAnnaliese McDermond	depends on COMMON_CLK
21411d471cd1SJavier Martin
21423bcfd222SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_I2C
21439245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
21443bcfd222SJeremy McDermond	depends on I2C
214564f01d2bSMark Brown	depends on COMMON_CLK
21463bcfd222SJeremy McDermond	select SND_SOC_TLV320AIC32X4
21473bcfd222SJeremy McDermond
2148125bc681SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_SPI
21499245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
2150125bc681SJeremy McDermond	depends on SPI_MASTER
215164f01d2bSMark Brown	depends on COMMON_CLK
2152125bc681SJeremy McDermond	select SND_SOC_TLV320AIC32X4
2153125bc681SJeremy McDermond
21543e860846SMark Brownconfig SND_SOC_TLV320AIC3X
2155a96d2ba2SJiri Prchal	tristate
2156a96d2ba2SJiri Prchal
2157a96d2ba2SJiri Prchalconfig SND_SOC_TLV320AIC3X_I2C
2158a96d2ba2SJiri Prchal	tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C"
21591291e141SMark Brown	depends on I2C
2160a96d2ba2SJiri Prchal	select SND_SOC_TLV320AIC3X
2161a96d2ba2SJiri Prchal	select REGMAP_I2C
21623e860846SMark Brown
2163fd4daab3SJiri Prchalconfig SND_SOC_TLV320AIC3X_SPI
2164fd4daab3SJiri Prchal	tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI"
2165fd4daab3SJiri Prchal	depends on SPI_MASTER
2166fd4daab3SJiri Prchal	select SND_SOC_TLV320AIC3X
2167fd4daab3SJiri Prchal	select REGMAP_SPI
2168fd4daab3SJiri Prchal
2169c8bf93f0SPeter Ujfalusiconfig SND_SOC_TLV320DAC33
2170c8bf93f0SPeter Ujfalusi	tristate
2171ce0c97f8SGeert Uytterhoeven	depends on I2C
2172c8bf93f0SPeter Ujfalusi
2173689c7655SDan Murphyconfig SND_SOC_TLV320ADCX140
2174689c7655SDan Murphy	tristate "Texas Instruments TLV320ADCX140 CODEC family"
2175689c7655SDan Murphy	depends on I2C
2176689c7655SDan Murphy	select REGMAP_I2C
2177689c7655SDan Murphy	help
2178689c7655SDan Murphy	  Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and
2179689c7655SDan Murphy	  tlv320adc6140 quad channel ADCs.
2180689c7655SDan Murphy
21812880fc87SDylan Reidconfig SND_SOC_TS3A227E
21822880fc87SDylan Reid	tristate "TI Headset/Mic detect and keypress chip"
21832880fc87SDylan Reid	depends on I2C
21842880fc87SDylan Reid
2185ba6c2959SSteven Eckhoffconfig SND_SOC_TSCS42XX
2186ba6c2959SSteven Eckhoff	tristate "Tempo Semiconductor TSCS42xx CODEC"
2187ba6c2959SSteven Eckhoff	depends on I2C
2188ba6c2959SSteven Eckhoff	select REGMAP_I2C
2189ba6c2959SSteven Eckhoff	help
2190ba6c2959SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
2191ba6c2959SSteven Eckhoff
21920e725b48SSteven Eckhoffconfig SND_SOC_TSCS454
21930e725b48SSteven Eckhoff	tristate "Tempo Semiconductor TSCS454 CODEC"
21940e725b48SSteven Eckhoff	depends on I2C
21950e725b48SSteven Eckhoff	select REGMAP_I2C
21960e725b48SSteven Eckhoff	help
21970e725b48SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS454 audio CODEC.
21980e725b48SSteven Eckhoff
2199cc17557eSSteve Sakomanconfig SND_SOC_TWL4030
2200cc17557eSSteve Sakoman	tristate
2201ea00d952SGeert Uytterhoeven	depends on TWL4030_CORE
2202ea00d952SGeert Uytterhoeven	select MFD_TWL4030_AUDIO
2203cc17557eSSteve Sakoman
22048ecbabd9SMisael Lopez Cruzconfig SND_SOC_TWL6040
22058ecbabd9SMisael Lopez Cruz	tristate
2206ea00d952SGeert Uytterhoeven	depends on TWL6040_CORE
22078ecbabd9SMisael Lopez Cruz
2208caa918efSAndra Danciuconfig SND_SOC_UDA1334
2209caa918efSAndra Danciu	tristate "NXP UDA1334 DAC"
2210caa918efSAndra Danciu	depends on GPIOLIB
2211caa918efSAndra Danciu	help
2212caa918efSAndra Danciu	  The UDA1334 is an NXP audio codec, supports the I2S-bus data format
2213caa918efSAndra Danciu	  and has basic features such as de-emphasis (at 44.1 kHz sampling
2214caa918efSAndra Danciu	  rate) and mute.
2215caa918efSAndra Danciu
2216de0fb25eSBinbin Zhouconfig SND_SOC_UDA1342
2217de0fb25eSBinbin Zhou	tristate "NXP UDA1342 CODEC"
2218de0fb25eSBinbin Zhou	depends on I2C
2219de0fb25eSBinbin Zhou	help
2220de0fb25eSBinbin Zhou	  The UDA1342 is an NXP audio codec, support 2x Stereo audio ADC (4x PGA
2221de0fb25eSBinbin Zhou	  mic inputs), stereo audio DAC, with basic audio processing.
2222de0fb25eSBinbin Zhou
2223b7482f52SPhilipp Zabelconfig SND_SOC_UDA1380
2224b7482f52SPhilipp Zabel	tristate
22254a5cf132SKuninori Morimoto	depends on I2C
2226b7482f52SPhilipp Zabel
222711b0b802SKrzysztof Kozlowskiconfig SND_SOC_WCD_CLASSH
222811b0b802SKrzysztof Kozlowski	tristate
222911b0b802SKrzysztof Kozlowski
223020aedafdSSrinivas Kandagatlaconfig SND_SOC_WCD9335
223120aedafdSSrinivas Kandagatla	tristate "WCD9335 Codec"
2232a8233b6cSMark Brown	depends on SLIMBUS
223320aedafdSSrinivas Kandagatla	select REGMAP_SLIMBUS
2234ac71317eSMarc Gonzalez	select REGMAP_IRQ
223511b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
223620aedafdSSrinivas Kandagatla	help
223720aedafdSSrinivas Kandagatla	  The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
223820aedafdSSrinivas Kandagatla	  Qualcomm Technologies, Inc. (QTI) multimedia solutions,
223920aedafdSSrinivas Kandagatla	  including the MSM8996, MSM8976, and MSM8956 chipsets.
224020aedafdSSrinivas Kandagatla
22410e5c9e7fSSrinivas Kandagatlaconfig SND_SOC_WCD_MBHC
22420e5c9e7fSSrinivas Kandagatla	tristate
22430e5c9e7fSSrinivas Kandagatla
2244a61f3b4fSSrinivas Kandagatlaconfig SND_SOC_WCD934X
2245a61f3b4fSSrinivas Kandagatla	tristate "WCD9340/WCD9341 Codec"
224642b71635SSrinivas Kandagatla	depends on COMMON_CLK
22479815746cSKrzysztof Kozlowski	depends on SLIMBUS
2248e231cd83SGeert Uytterhoeven	select REGMAP_IRQ
22494d73b97bSRen Zhijie	select REGMAP_SLIMBUS
225011b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
22519fb9b169SSrinivas Kandagatla	select SND_SOC_WCD_MBHC
22525b7f4e5dSKrzysztof Kozlowski	depends on MFD_WCD934X || COMPILE_TEST
2253a61f3b4fSSrinivas Kandagatla	help
2254a61f3b4fSSrinivas Kandagatla	  The WCD9340/9341 is a audio codec IC Integrated in
2255a61f3b4fSSrinivas Kandagatla	  Qualcomm SoCs like SDM845.
2256a61f3b4fSSrinivas Kandagatla
2257313e978dSPrasad Kumpatlaconfig SND_SOC_WCD937X
2258313e978dSPrasad Kumpatla	depends on SND_SOC_WCD937X_SDW
2259313e978dSPrasad Kumpatla	tristate
2260313e978dSPrasad Kumpatla	depends on SOUNDWIRE || !SOUNDWIRE
2261313e978dSPrasad Kumpatla	select SND_SOC_WCD_CLASSH
2262313e978dSPrasad Kumpatla
2263313e978dSPrasad Kumpatlaconfig SND_SOC_WCD937X_SDW
2264313e978dSPrasad Kumpatla	tristate "WCD9370/WCD9375 Codec - SDW"
2265313e978dSPrasad Kumpatla	select SND_SOC_WCD937X
2266313e978dSPrasad Kumpatla	select SND_SOC_WCD_MBHC
2267313e978dSPrasad Kumpatla	select REGMAP_IRQ
2268313e978dSPrasad Kumpatla	depends on SOUNDWIRE
2269313e978dSPrasad Kumpatla	select REGMAP_SOUNDWIRE
2270313e978dSPrasad Kumpatla	help
2271313e978dSPrasad Kumpatla	  The WCD9370/9375 is an audio codec IC used with SoCs
2272313e978dSPrasad Kumpatla	  like SC7280 or QCM6490 chipsets, and it connected
2273313e978dSPrasad Kumpatla	  via soundwire.
2274313e978dSPrasad Kumpatla	  To compile this codec driver say Y or m.
2275313e978dSPrasad Kumpatla
227604544222SSrinivas Kandagatlaconfig SND_SOC_WCD938X
22779431f8dfSSrinivas Kandagatla	depends on SND_SOC_WCD938X_SDW
227804544222SSrinivas Kandagatla	tristate
2279b9a4b57fSArnd Bergmann	depends on SOUNDWIRE || !SOUNDWIRE
228011b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
2281eec611d2SSrinivas Kandagatla	select MULTIPLEXER
228204544222SSrinivas Kandagatla
228304544222SSrinivas Kandagatlaconfig SND_SOC_WCD938X_SDW
228404544222SSrinivas Kandagatla	tristate "WCD9380/WCD9385 Codec - SDW"
228504544222SSrinivas Kandagatla	select SND_SOC_WCD938X
2286bcee7ed0SSrinivas Kandagatla	select SND_SOC_WCD_MBHC
2287214174d9SSrinivasa Rao Mandadapu	select REGMAP_IRQ
228804544222SSrinivas Kandagatla	depends on SOUNDWIRE
228904544222SSrinivas Kandagatla	select REGMAP_SOUNDWIRE
229004544222SSrinivas Kandagatla	help
229104544222SSrinivas Kandagatla	  The WCD9380/9385 is a audio codec IC Integrated in
229204544222SSrinivas Kandagatla	  Qualcomm SoCs like SM8250.
229304544222SSrinivas Kandagatla
229410f514bdSNeil Armstrongconfig SND_SOC_WCD939X
229510f514bdSNeil Armstrong	depends on SND_SOC_WCD939X_SDW
229610f514bdSNeil Armstrong	tristate
229710f514bdSNeil Armstrong	depends on SOUNDWIRE || !SOUNDWIRE
229810f514bdSNeil Armstrong	depends on TYPEC || !TYPEC
229910f514bdSNeil Armstrong	select SND_SOC_WCD_CLASSH
230010f514bdSNeil Armstrong
2301be2af391SNeil Armstrongconfig SND_SOC_WCD939X_SDW
2302be2af391SNeil Armstrong	tristate "WCD9390/WCD9395 Codec - SDW"
2303b4956275SArnd Bergmann	depends on TYPEC || !TYPEC
230410f514bdSNeil Armstrong	select SND_SOC_WCD939X
230510f514bdSNeil Armstrong	select SND_SOC_WCD_MBHC
2306be2af391SNeil Armstrong	select REGMAP_IRQ
2307be2af391SNeil Armstrong	depends on SOUNDWIRE
2308be2af391SNeil Armstrong	select REGMAP_SOUNDWIRE
2309be2af391SNeil Armstrong	help
2310be2af391SNeil Armstrong	  The WCD9390/9395 is a audio codec IC Integrated in
2311be2af391SNeil Armstrong	  Qualcomm SoCs like SM8650.
2312be2af391SNeil Armstrong
231349d7ad9dSMark Brownconfig SND_SOC_WL1273
231449d7ad9dSMark Brown	tristate
231549d7ad9dSMark Brown
2316e3523e01SDimitris Papastamosconfig SND_SOC_WM0010
2317e3523e01SDimitris Papastamos	tristate
2318ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
2319e3523e01SDimitris Papastamos
23204bb3f43cSMark Brownconfig SND_SOC_WM1250_EV1
23214bb3f43cSMark Brown	tristate
2322ce0c97f8SGeert Uytterhoeven	depends on I2C
23234bb3f43cSMark Brown
23244911ccdbSMark Brownconfig SND_SOC_WM2000
23254911ccdbSMark Brown	tristate
2326ce0c97f8SGeert Uytterhoeven	depends on I2C
23274911ccdbSMark Brown
2328d5315a23SMark Brownconfig SND_SOC_WM2200
2329d5315a23SMark Brown	tristate
2330ce0c97f8SGeert Uytterhoeven	depends on I2C
2331d5315a23SMark Brown
23326d4baf08SMark Brownconfig SND_SOC_WM5100
23336d4baf08SMark Brown	tristate
2334ce0c97f8SGeert Uytterhoeven	depends on I2C
23356d4baf08SMark Brown
233693e8791dSMark Brownconfig SND_SOC_WM5102
233793e8791dSMark Brown	tristate
233833d55070SHans de Goede	depends on MFD_WM5102 && MFD_ARIZONA
233993e8791dSMark Brown
23405c6af635SMark Brownconfig SND_SOC_WM5110
23415c6af635SMark Brown	tristate
234233d55070SHans de Goede	depends on MFD_WM5110 && MFD_ARIZONA
23435c6af635SMark Brown
234440aa4a30SMark Brownconfig SND_SOC_WM8350
234540aa4a30SMark Brown	tristate
2346ea00d952SGeert Uytterhoeven	depends on MFD_WM8350
234740aa4a30SMark Brown
2348aaf1e176SMark Brownconfig SND_SOC_WM8400
2349aaf1e176SMark Brown	tristate
2350ea00d952SGeert Uytterhoeven	# FIXME nothing selects SND_SOC_WM8400??
2351ea00d952SGeert Uytterhoeven	depends on MFD_WM8400
2352aaf1e176SMark Brown
23535d421516SMark Brownconfig SND_SOC_WM8510
23541291e141SMark Brown	tristate "Wolfson Microelectronics WM8510 CODEC"
23551291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
23565d421516SMark Brown
23571dcf98ffSMark Brownconfig SND_SOC_WM8523
23581291e141SMark Brown	tristate "Wolfson Microelectronics WM8523 DAC"
23591291e141SMark Brown	depends on I2C
23601dcf98ffSMark Brown
2361007b6a54SMihai Serbanconfig SND_SOC_WM8524
2362007b6a54SMihai Serban	tristate "Wolfson Microelectronics WM8524 DAC"
2363007b6a54SMihai Serban	depends on GPIOLIB
2364007b6a54SMihai Serban
2365e88ba015SMark Brownconfig SND_SOC_WM8580
2366028f5a5bSMatt Flax	tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
23671291e141SMark Brown	depends on I2C
2368e88ba015SMark Brown
2369bd6d4177SMike Arthurconfig SND_SOC_WM8711
23701291e141SMark Brown	tristate "Wolfson Microelectronics WM8711 CODEC"
23711291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2372bd6d4177SMike Arthur
237389933deeSNeil Jonesconfig SND_SOC_WM8727
237489933deeSNeil Jones	tristate
237589933deeSNeil Jones
237671cfc902SMark Brownconfig SND_SOC_WM8728
23771291e141SMark Brown	tristate "Wolfson Microelectronics WM8728 DAC"
23781291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
237971cfc902SMark Brown
23807f137ab6SRichard Purdieconfig SND_SOC_WM8731
23819dc15f81SMark Brown	tristate
23829dc15f81SMark Brown
23839dc15f81SMark Brownconfig SND_SOC_WM8731_I2C
23849dc15f81SMark Brown	tristate "Wolfson Microelectronics WM8731 CODEC with I2C"
23859dc15f81SMark Brown	depends on I2C
23869dc15f81SMark Brown	select REGMAP
23879dc15f81SMark Brown	select SND_SOC_WM8731
23889dc15f81SMark Brown
23899dc15f81SMark Brownconfig SND_SOC_WM8731_SPI
23909dc15f81SMark Brown	tristate "Wolfson Microelectronics WM8731 CODEC with SPI"
23919dc15f81SMark Brown	depends on SPI
23929dc15f81SMark Brown	select REGMAP
23939dc15f81SMark Brown	select SND_SOC_WM8731
23947f137ab6SRichard Purdie
23952a9ae13aSMark Brownconfig SND_SOC_WM8737
23961291e141SMark Brown	tristate "Wolfson Microelectronics WM8737 ADC"
23971291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
23982a9ae13aSMark Brown
2399992bee40SIan Larteyconfig SND_SOC_WM8741
24003fb83cbeSAxel Lin	tristate "Wolfson Microelectronics WM8741 DAC"
24011291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2402992bee40SIan Lartey
24037f137ab6SRichard Purdieconfig SND_SOC_WM8750
24041291e141SMark Brown	tristate "Wolfson Microelectronics WM8750 CODEC"
24051291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
24067f137ab6SRichard Purdie
240733703b73SLiam Girdwoodconfig SND_SOC_WM8753
24081291e141SMark Brown	tristate "Wolfson Microelectronics WM8753 CODEC"
24091291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
241033703b73SLiam Girdwood
2411c046fd4dSDimitris Papastamosconfig SND_SOC_WM8770
24121291e141SMark Brown	tristate "Wolfson Microelectronics WM8770 CODEC"
2413e479d85cSMark Brown	depends on SPI_MASTER
2414c046fd4dSDimitris Papastamos
2415924914eeSMark Brownconfig SND_SOC_WM8776
24161291e141SMark Brown	tristate "Wolfson Microelectronics WM8776 CODEC"
24171291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2418924914eeSMark Brown
2419ec3ea54cSJohannes Stezenbachconfig SND_SOC_WM8782
24202da48013SDaniel Mack	tristate "Wolfson Microelectronics WM8782 ADC"
2421ec3ea54cSJohannes Stezenbach
242233cf45c8SDimitris Papastamosconfig SND_SOC_WM8804
2423bbed297dSCharles Keepax	tristate
2424bbed297dSCharles Keepax
2425bbed297dSCharles Keepaxconfig SND_SOC_WM8804_I2C
2426bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
2427bbed297dSCharles Keepax	depends on I2C
2428bbed297dSCharles Keepax	select SND_SOC_WM8804
2429bbed297dSCharles Keepax	select REGMAP_I2C
2430bbed297dSCharles Keepax
2431bbed297dSCharles Keepaxconfig SND_SOC_WM8804_SPI
2432bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
2433bbed297dSCharles Keepax	depends on SPI_MASTER
2434bbed297dSCharles Keepax	select SND_SOC_WM8804
2435bbed297dSCharles Keepax	select REGMAP_SPI
243633cf45c8SDimitris Papastamos
24370e0e16a8SMark Brownconfig SND_SOC_WM8900
24380e0e16a8SMark Brown	tristate
243991e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
24400e0e16a8SMark Brown
2441f1c0a02fSMark Brownconfig SND_SOC_WM8903
24421291e141SMark Brown	tristate "Wolfson Microelectronics WM8903 CODEC"
24431291e141SMark Brown	depends on I2C
2444f1c0a02fSMark Brown
2445a91eb199SMark Brownconfig SND_SOC_WM8904
24462bb853f6SMichał Mirosław	tristate "Wolfson Microelectronics WM8904 CODEC"
24472bb853f6SMichał Mirosław	depends on I2C
2448a91eb199SMark Brown
24490b5e92c5SJonathan Cameronconfig SND_SOC_WM8940
24503a3610aaSLukasz Majewski	tristate "Wolfson Microelectronics WM8940 codec"
2451ce0c97f8SGeert Uytterhoeven	depends on I2C
24520b5e92c5SJonathan Cameron
2453b35a28afSMark Brownconfig SND_SOC_WM8955
2454b35a28afSMark Brown	tristate
2455ce0c97f8SGeert Uytterhoeven	depends on I2C
2456b35a28afSMark Brown
2457f2644a2cSMark Brownconfig SND_SOC_WM8960
2458465011fcSFabio Estevam	tristate "Wolfson Microelectronics WM8960 CODEC"
24593fcdfc9dSMark Brown	depends on I2C
2460f2644a2cSMark Brown
246174dc55edSMark Brownconfig SND_SOC_WM8961
246274a6a948SDoug Brown	tristate "Wolfson Microelectronics WM8961 CODEC"
2463ce0c97f8SGeert Uytterhoeven	depends on I2C
246474dc55edSMark Brown
24659a76f1ffSMark Brownconfig SND_SOC_WM8962
24661291e141SMark Brown	tristate "Wolfson Microelectronics WM8962 CODEC"
2467a2915d4fSArnd Bergmann	depends on I2C && INPUT
24689a76f1ffSMark Brown
24698bae3e23SKenneth Kiralyconfig SND_SOC_WM8971
24708bae3e23SKenneth Kiraly	tristate
2471ce0c97f8SGeert Uytterhoeven	depends on I2C
24728bae3e23SKenneth Kiraly
24730a1bf553SMark Brownconfig SND_SOC_WM8974
24742005bd88SMans Rullgard	tristate "Wolfson Microelectronics WM8974 codec"
24752005bd88SMans Rullgard	depends on I2C
24760a1bf553SMark Brown
24770d34e915SGuennadi Liakhovetskiconfig SND_SOC_WM8978
247877c54539SGeert Uytterhoeven	tristate "Wolfson Microelectronics WM8978 codec"
247977c54539SGeert Uytterhoeven	depends on I2C
24800d34e915SGuennadi Liakhovetski
24816b3860b0SDimitris Papastamosconfig SND_SOC_WM8983
24826b3860b0SDimitris Papastamos	tristate
2483c1c050eeSWei Li	depends on SND_SOC_I2C_AND_SPI
24846b3860b0SDimitris Papastamos
24856d6f8b83SDimitris Papastamosconfig SND_SOC_WM8985
2486811e66deSPetr Kulhavy	tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
2487b82d67f4SArnd Bergmann	depends on SND_SOC_I2C_AND_SPI
24886d6f8b83SDimitris Papastamos
24895409fb4eSMark Brownconfig SND_SOC_WM8988
24905409fb4eSMark Brown	tristate
249191e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
24925409fb4eSMark Brown
2493f10485e7SMark Brownconfig SND_SOC_WM8990
2494f10485e7SMark Brown	tristate
2495ce0c97f8SGeert Uytterhoeven	depends on I2C
2496f10485e7SMark Brown
2497203db220SDimitris Papastamosconfig SND_SOC_WM8991
2498203db220SDimitris Papastamos	tristate
2499ce0c97f8SGeert Uytterhoeven	depends on I2C
2500203db220SDimitris Papastamos
2501942c435bSMark Brownconfig SND_SOC_WM8993
2502942c435bSMark Brown	tristate
2503ce0c97f8SGeert Uytterhoeven	depends on I2C
2504942c435bSMark Brown
25059e6e96a1SMark Brownconfig SND_SOC_WM8994
25069e6e96a1SMark Brown	tristate
25075ed01155SCharles Keepax	depends on MFD_WM8994
25089e6e96a1SMark Brown
25096a504a75SDimitris Papastamosconfig SND_SOC_WM8995
25106a504a75SDimitris Papastamos	tristate
251191e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
25126a504a75SDimitris Papastamos
2513a9ba6151SMark Brownconfig SND_SOC_WM8996
2514a9ba6151SMark Brown	tristate
2515ce0c97f8SGeert Uytterhoeven	depends on I2C
2516a9ba6151SMark Brown
251740843aeaSCharles Keepaxconfig SND_SOC_WM8997
251840843aeaSCharles Keepax	tristate
251933d55070SHans de Goede	depends on MFD_WM8997 && MFD_ARIZONA
252040843aeaSCharles Keepax
25216ebbce0aSRichard Fitzgeraldconfig SND_SOC_WM8998
25229ef24511SAndré Apitzsch	tristate "Wolfson Microelectronics WM8998 codec driver"
252333d55070SHans de Goede	depends on MFD_WM8998 && MFD_ARIZONA
25246ebbce0aSRichard Fitzgerald
252586ed3669SMark Brownconfig SND_SOC_WM9081
252686ed3669SMark Brown	tristate
2527e2d57591SKuninori Morimoto	depends on I2C
252886ed3669SMark Brown
252959792aa9SMark Brownconfig SND_SOC_WM9090
253059792aa9SMark Brown	tristate
2531ce0c97f8SGeert Uytterhoeven	depends on I2C
253259792aa9SMark Brown
25332aceefefSIan Moltonconfig SND_SOC_WM9705
25342aceefefSIan Molton	tristate
2535ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2536206964e8SLars-Peter Clausen	select REGMAP_AC97
2537aaafcfedSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
25382aceefefSIan Molton
25397f137ab6SRichard Purdieconfig SND_SOC_WM9712
25407f137ab6SRichard Purdie	tristate
2541ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2542b4f4f2ebSLars-Peter Clausen	select REGMAP_AC97
25432ed1a8e0SRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
2544b0c813ceSTimur Tabi
254583ac08c0SLiam Girdwoodconfig SND_SOC_WM9713
254683ac08c0SLiam Girdwood	tristate
2547ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2548700dadfeSRobert Jarzmik	select REGMAP_AC97
25499bd400caSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
25509db9ed97SJoonyoung Shim
2551a0aab9e1SSrinivas Kandagatlaconfig SND_SOC_WSA881X
2552a0aab9e1SSrinivas Kandagatla	tristate "WSA881X Codec"
2553a0aab9e1SSrinivas Kandagatla	depends on SOUNDWIRE
2554a0aab9e1SSrinivas Kandagatla	select REGMAP_SOUNDWIRE
2555a0aab9e1SSrinivas Kandagatla	help
2556a0aab9e1SSrinivas Kandagatla	  This enables support for Qualcomm WSA8810/WSA8815 Class-D
2557a0aab9e1SSrinivas Kandagatla	  Smart Speaker Amplifier.
2558a0aab9e1SSrinivas Kandagatla
255943b8c7dcSSrinivas Kandagatlaconfig SND_SOC_WSA883X
256043b8c7dcSSrinivas Kandagatla	tristate "WSA883X Codec"
256143b8c7dcSSrinivas Kandagatla	depends on SOUNDWIRE
256243b8c7dcSSrinivas Kandagatla	select REGMAP_SOUNDWIRE
256343b8c7dcSSrinivas Kandagatla	help
256443b8c7dcSSrinivas Kandagatla	  This enables support for Qualcomm WSA8830/WSA8835 Class-D
256543b8c7dcSSrinivas Kandagatla	  Smart Speaker Amplifier.
256643b8c7dcSSrinivas Kandagatla
2567aa21a7d4SKrzysztof Kozlowskiconfig SND_SOC_WSA884X
2568aa21a7d4SKrzysztof Kozlowski	tristate "WSA884X Codec"
2569aa21a7d4SKrzysztof Kozlowski	depends on SOUNDWIRE
2570aa21a7d4SKrzysztof Kozlowski	select REGMAP_SOUNDWIRE
2571aa21a7d4SKrzysztof Kozlowski	help
2572aa21a7d4SKrzysztof Kozlowski	  This enables support for Qualcomm WSA8840/WSA8845/WSA8845H Class-D
2573aa21a7d4SKrzysztof Kozlowski	  Smart Speaker Amplifier.
2574aa21a7d4SKrzysztof Kozlowski
257552e8a94bSSven Van Asbroeckconfig SND_SOC_ZL38060
257652e8a94bSSven Van Asbroeck	tristate "Microsemi ZL38060 Connected Home Audio Processor"
257752e8a94bSSven Van Asbroeck	depends on SPI_MASTER
25780de2cc37SArnd Bergmann	depends on GPIOLIB
257952e8a94bSSven Van Asbroeck	select REGMAP
258052e8a94bSSven Van Asbroeck	help
258152e8a94bSSven Van Asbroeck	  Support for ZL38060 Connected Home Audio Processor from Microsemi,
258252e8a94bSSven Van Asbroeck	  which consists of a Digital Signal Processor (DSP), several Digital
258352e8a94bSSven Van Asbroeck	  Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs.
258452e8a94bSSven Van Asbroeck
25859db9ed97SJoonyoung Shim# Amp
25869b0a25f0SLars-Peter Clausenconfig SND_SOC_LM4857
25879b0a25f0SLars-Peter Clausen	tristate
2588ce0c97f8SGeert Uytterhoeven	depends on I2C
25899b0a25f0SLars-Peter Clausen
2590fa8d9151SNeil Armstrongconfig SND_SOC_MAX9759
2591fa8d9151SNeil Armstrong	tristate "Maxim MAX9759 speaker Amplifier"
2592c2974487SMark Brown	depends on GPIOLIB
2593fa8d9151SNeil Armstrong
2594394d2bbaSWolfram Sangconfig SND_SOC_MAX9768
2595394d2bbaSWolfram Sang	tristate
2596ce0c97f8SGeert Uytterhoeven	depends on I2C
2597394d2bbaSWolfram Sang
25989db9ed97SJoonyoung Shimconfig SND_SOC_MAX9877
25999db9ed97SJoonyoung Shim	tristate
2600ce0c97f8SGeert Uytterhoeven	depends on I2C
2601493b67efSPeter Ujfalusi
26028b908b86SPhilippe Rétornazconfig SND_SOC_MC13783
26038b908b86SPhilippe Rétornaz	tristate
2604d8dd3f92SGeert Uytterhoeven	depends on MFD_MC13XXX
26058b908b86SPhilippe Rétornaz
2606d808fe9fSTomoya MORINAGAconfig SND_SOC_ML26124
2607d808fe9fSTomoya MORINAGA	tristate
2608ce0c97f8SGeert Uytterhoeven	depends on I2C
2609d808fe9fSTomoya MORINAGA
2610a74d51baSKai Chieh Chuangconfig SND_SOC_MT6351
2611a74d51baSKai Chieh Chuang	tristate "MediaTek MT6351 Codec"
2612a74d51baSKai Chieh Chuang
26135e240449SNicolas Belinconfig SND_SOC_MT6357
26145e240449SNicolas Belin	tristate "MediaTek MT6357 Codec"
26155e240449SNicolas Belin	help
26165e240449SNicolas Belin	  Enable support for the platform which uses MT6357 as
26175e240449SNicolas Belin	  external codec device.
26185e240449SNicolas Belin
26196a8d4198SShunli Wangconfig SND_SOC_MT6358
26206a8d4198SShunli Wang	tristate "MediaTek MT6358 Codec"
26216a8d4198SShunli Wang	help
26226a8d4198SShunli Wang	  Enable support for the platform which uses MT6358 as
26236a8d4198SShunli Wang	  external codec device.
26246a8d4198SShunli Wang
26258061734aSJiaxin Yuconfig SND_SOC_MT6359
26268061734aSJiaxin Yu	tristate "MediaTek MT6359 Codec"
26278061734aSJiaxin Yu	depends on MTK_PMIC_WRAP
26288061734aSJiaxin Yu	help
26298061734aSJiaxin Yu	  Enable support for the platform which uses MT6359 as
26308061734aSJiaxin Yu	  external codec device.
26318061734aSJiaxin Yu
2632eef07b9eSArgus Linconfig SND_SOC_MT6359_ACCDET
2633eef07b9eSArgus Lin	tristate "MediaTek MT6359 ACCDET driver"
2634eef07b9eSArgus Lin	depends on MTK_PMIC_WRAP
2635eef07b9eSArgus Lin	help
2636eef07b9eSArgus Lin	  ACCDET means Accessory Detection technology, MediaTek develop it
2637eef07b9eSArgus Lin	  for ASoC codec soc-jack detection mechanism.
2638eef07b9eSArgus Lin	  Select N if you don't have jack on board.
2639eef07b9eSArgus Lin
2640f289e55cSJeff Changconfig SND_SOC_MT6660
2641f289e55cSJeff Chang	tristate "Mediatek MT6660 Speaker Amplifier"
2642f289e55cSJeff Chang	depends on I2C
2643f289e55cSJeff Chang	help
2644f289e55cSJeff Chang	  MediaTek MT6660 is a smart power amplifier which contain
2645f289e55cSJeff Chang	  speaker protection, multi-band DRC, equalizer functions.
2646f289e55cSJeff Chang	  Select N if you don't have MT6660 on board.
2647f289e55cSJeff Chang	  Select M to build this as module.
2648f289e55cSJeff Chang
26494d1a9952SDavid Linconfig SND_SOC_NAU8315
26504d1a9952SDavid Lin	tristate "Nuvoton Technology Corporation NAU8315 CODEC"
26514d1a9952SDavid Lin
2652c1644e3dSJohn Hsuconfig SND_SOC_NAU8540
2653c1644e3dSJohn Hsu	tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
2654c1644e3dSJohn Hsu	depends on I2C
2655c1644e3dSJohn Hsu
2656b6970b48SJohn Hsuconfig SND_SOC_NAU8810
2657b6970b48SJohn Hsu	tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
2658b6970b48SJohn Hsu	depends on I2C
2659b6970b48SJohn Hsu
2660aab1ad11SSeven Leeconfig SND_SOC_NAU8821
2661aab1ad11SSeven Lee	tristate "Nuvoton Technology Corporation NAU88L21 CODEC"
2662aab1ad11SSeven Lee	depends on I2C
2663aab1ad11SSeven Lee
26641e3cb6c3SDavid Linconfig SND_SOC_NAU8822
26651e3cb6c3SDavid Lin	tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
26661e3cb6c3SDavid Lin	depends on I2C
26671e3cb6c3SDavid Lin
2668dfeabdedSJohn Hsuconfig SND_SOC_NAU8824
2669dfeabdedSJohn Hsu	tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
2670dfeabdedSJohn Hsu	depends on I2C
2671dfeabdedSJohn Hsu
267234ca27f3SAnatol Pomozovconfig SND_SOC_NAU8825
267334ca27f3SAnatol Pomozov	tristate
2674ce0c97f8SGeert Uytterhoeven	depends on I2C
267534ca27f3SAnatol Pomozov
2676ba1850dcSIgor Prusovconfig SND_SOC_NTPFW
2677ba1850dcSIgor Prusov	tristate
2678ba1850dcSIgor Prusov
26792bd61fffSIgor Prusovconfig SND_SOC_NTP8918
26802bd61fffSIgor Prusov	select SND_SOC_NTPFW
26812bd61fffSIgor Prusov	tristate "NeoFidelity NTP8918 amplifier"
26822bd61fffSIgor Prusov	depends on I2C
26832bd61fffSIgor Prusov
2684dc9004eaSIgor Prusovconfig SND_SOC_NTP8835
2685dc9004eaSIgor Prusov	select SND_SOC_NTPFW
2686dc9004eaSIgor Prusov	tristate "NeoFidelity NTP8835 and NTP8835C amplifiers"
2687dc9004eaSIgor Prusov	depends on I2C
2688dc9004eaSIgor Prusov
2689493b67efSPeter Ujfalusiconfig SND_SOC_TPA6130A2
26901291e141SMark Brown	tristate "Texas Instruments TPA6130A2 headphone amplifier"
26911291e141SMark Brown	depends on I2C
26924d1a7722SMark Brown
26939e3d83c5SSrinivasa Rao Mandadapuconfig SND_SOC_LPASS_MACRO_COMMON
26949e3d83c5SSrinivasa Rao Mandadapu        tristate
26959e3d83c5SSrinivasa Rao Mandadapu
2696809bcbceSSrinivas Kandagatlaconfig SND_SOC_LPASS_WSA_MACRO
2697809bcbceSSrinivas Kandagatla	depends on COMMON_CLK
2698e78f36bcSBertrand Jacquin	select REGMAP_MMIO
269936ac1e29SKrzysztof Kozlowski	select SND_SOC_LPASS_MACRO_COMMON
2700809bcbceSSrinivas Kandagatla	tristate "Qualcomm WSA Macro in LPASS(Low Power Audio SubSystem)"
2701809bcbceSSrinivas Kandagatla
2702908e6b1dSSrinivas Kandagatlaconfig SND_SOC_LPASS_VA_MACRO
2703908e6b1dSSrinivas Kandagatla	depends on COMMON_CLK
2704e78f36bcSBertrand Jacquin	select REGMAP_MMIO
27059e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2706908e6b1dSSrinivas Kandagatla	tristate "Qualcomm VA Macro in LPASS(Low Power Audio SubSystem)"
2707908e6b1dSSrinivas Kandagatla
2708af3d54b9SSrinivas Kandagatlaconfig SND_SOC_LPASS_RX_MACRO
2709af3d54b9SSrinivas Kandagatla	depends on COMMON_CLK
2710e78f36bcSBertrand Jacquin	select REGMAP_MMIO
27119e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2712af3d54b9SSrinivas Kandagatla	tristate "Qualcomm RX Macro in LPASS(Low Power Audio SubSystem)"
2713af3d54b9SSrinivas Kandagatla
2714c39667ddSSrinivas Kandagatlaconfig SND_SOC_LPASS_TX_MACRO
2715c39667ddSSrinivas Kandagatla	depends on COMMON_CLK
2716e78f36bcSBertrand Jacquin	select REGMAP_MMIO
27179e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2718c39667ddSSrinivas Kandagatla	tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)"
2719c39667ddSSrinivas Kandagatla
27204d1a7722SMark Brownendmenu
2721