xref: /linux/sound/soc/codecs/Kconfig (revision 4982d3552a3bf94de503acf93433277d08421de6)
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_AK4642
50ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4671
51ea00d952SGeert Uytterhoeven	imply SND_SOC_AK5386
52ea00d952SGeert Uytterhoeven	imply SND_SOC_AK5558
53ea00d952SGeert Uytterhoeven	imply SND_SOC_ALC5623
54ea00d952SGeert Uytterhoeven	imply SND_SOC_ALC5632
551d298ad8SHerve Codina	imply SND_SOC_AUDIO_IIO_AUX
566b4528b5SJonathan Albrieux	imply SND_SOC_AW8738
574717636fSWeidong Wang	imply SND_SOC_AW87390
5814bd8572SWeidong Wang	imply SND_SOC_AW88395
5988264e4fSWeidong Wang	imply SND_SOC_AW88081
6094e412c2SWeidong Wang	imply SND_SOC_AW88166
61028a2ae2SWeidong Wang	imply SND_SOC_AW88261
628ade6cc7SWeidong Wang	imply SND_SOC_AW88399
63ea00d952SGeert Uytterhoeven	imply SND_SOC_BT_SCO
64ea00d952SGeert Uytterhoeven	imply SND_SOC_BD28623
6561ed3034SPaweł Anikiel	imply SND_SOC_CHV3_CODEC
66ea00d952SGeert Uytterhoeven	imply SND_SOC_CQ0093VC
67ea00d952SGeert Uytterhoeven	imply SND_SOC_CROS_EC_CODEC
68ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L32
69ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L33
70ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L34
71ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L35
72ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L36
736450ef55SDavid Rhodes	imply SND_SOC_CS35L41_SPI
746450ef55SDavid Rhodes	imply SND_SOC_CS35L41_I2C
750d463d01SJames Schulman	imply SND_SOC_CS35L45_I2C
760d463d01SJames Schulman	imply SND_SOC_CS35L45_SPI
77e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_I2C
78e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_SPI
79e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_SDW
80c486def5SJames Ogletree	imply SND_SOC_CS40L50
81ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L42
8290f6a2a2SRichard Fitzgerald	imply SND_SOC_CS42L42_SDW
83fc918cbeSCharles Keepax	imply SND_SOC_CS42L43
84fc918cbeSCharles Keepax	imply SND_SOC_CS42L43_SDW
85ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L51_I2C
86ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L52
87ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L56
88ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L73
89250304a0SMartin Povišer	imply SND_SOC_CS42L84
90d4edae9cSLucas Tanure	imply SND_SOC_CS4234
91ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4265
92ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4270
93ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4271_I2C
94ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4271_SPI
95ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42XX8_I2C
963158f585SChancel Liu	imply SND_SOC_CS42XX8_SPI
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
109e7434adfSVitaly Rodionov	imply SND_SOC_CS530X_SPI
110ea00d952SGeert Uytterhoeven	imply SND_SOC_CX20442
111ea00d952SGeert Uytterhoeven	imply SND_SOC_CX2072X
112ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7210
113ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7213
114ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7218
115ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7219
116ea00d952SGeert Uytterhoeven	imply SND_SOC_DA732X
117ea00d952SGeert Uytterhoeven	imply SND_SOC_DA9055
118ea00d952SGeert Uytterhoeven	imply SND_SOC_DMIC
119ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8316
120b97391a6SBinbin Zhou	imply SND_SOC_ES8323
1215c439937SZhu Ning	imply SND_SOC_ES8326
122ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8328_SPI
123ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8328_I2C
124de2b3119SZhang Yi	imply SND_SOC_ES8375
1250319c268SZhang Yi	imply SND_SOC_ES8389
1265d9cb740SZhang Yi	imply SND_SOC_ES9356
127ea00d952SGeert Uytterhoeven	imply SND_SOC_ES7134
128ea00d952SGeert Uytterhoeven	imply SND_SOC_ES7241
129a9a0303dSHerve Codina	imply SND_SOC_FRAMER
13075611770SNick Li	imply SND_SOC_FS210X
131ea00d952SGeert Uytterhoeven	imply SND_SOC_GTM601
132ea00d952SGeert Uytterhoeven	imply SND_SOC_HDAC_HDMI
133ea00d952SGeert Uytterhoeven	imply SND_SOC_HDAC_HDA
134ea00d952SGeert Uytterhoeven	imply SND_SOC_ICS43432
135e5116699SHerve Codina	imply SND_SOC_IDT821034
136ea00d952SGeert Uytterhoeven	imply SND_SOC_INNO_RK3036
137ea00d952SGeert Uytterhoeven	imply SND_SOC_ISABELLE
138ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4740_CODEC
139ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4725B_CODEC
140d9cd22e9SChristophe Branchereau	imply SND_SOC_JZ4760_CODEC
141ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4770_CODEC
142ea00d952SGeert Uytterhoeven	imply SND_SOC_LM4857
143ea00d952SGeert Uytterhoeven	imply SND_SOC_LM49453
144ea00d952SGeert Uytterhoeven	imply SND_SOC_LOCHNAGAR_SC
145ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98088
146ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98090
147ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98095
148ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98357A
149ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98371
150ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98504
151f88ee76bSGeorge Song	imply SND_SOC_MAX98520
152ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9867
153ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98925
154ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98926
155ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98927
15618c0af94SRyan Lee	imply SND_SOC_MAX98363
157d7ee0c72SPierre-Louis Bossart	imply SND_SOC_MAX98373_I2C
15856a5b791SRyan Lee	imply SND_SOC_MAX98373_SDW
1596a8e1d46SRyan Lee	imply SND_SOC_MAX98388
160a6e3f4f3SSteve Lee	imply SND_SOC_MAX98390
161b5858113SRyan Lee	imply SND_SOC_MAX98396
162ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9850
163ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9860
164ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9759
165ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9768
166ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9877
167ea00d952SGeert Uytterhoeven	imply SND_SOC_MC13783
168ea00d952SGeert Uytterhoeven	imply SND_SOC_ML26124
169ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6351
1705e240449SNicolas Belin	imply SND_SOC_MT6357
171ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6358
1728061734aSJiaxin Yu	imply SND_SOC_MT6359
173ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6660
1744d1a9952SDavid Lin	imply SND_SOC_NAU8315
175cd41d342SJaroslav Kysela	imply SND_SOC_NAU8325
176ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8540
177ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8810
178aab1ad11SSeven Lee	imply SND_SOC_NAU8821
179ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8822
180ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8824
181ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8825
182ea00d952SGeert Uytterhoeven	imply SND_SOC_HDMI_CODEC
183ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM1681
1841217b573SAlvin Šipraga	imply SND_SOC_PCM1754
185ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM1789_I2C
186ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM179X_I2C
187ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM179X_SPI
188ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM186X_I2C
189ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM186X_SPI
190ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3008
191ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3060_I2C
192ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3060_SPI
193ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3168A_I2C
194ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3168A_SPI
195ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM5102A
196ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM512x_I2C
197ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM512x_SPI
1986bb1b706SShenghao Ding	imply SND_SOC_PCM6240
199227f609cSHerve Codina	imply SND_SOC_PEB2466
2008ad52948SAlexey Klimov	imply SND_SOC_PM4125_SDW
2014ed0915fSLuca Ceresoli	imply SND_SOC_RK3308
202ea00d952SGeert Uytterhoeven	imply SND_SOC_RK3328
2030d6a04daSChris Morgan	imply SND_SOC_RK817
204ea00d952SGeert Uytterhoeven	imply SND_SOC_RT274
205ea00d952SGeert Uytterhoeven	imply SND_SOC_RT286
206ea00d952SGeert Uytterhoeven	imply SND_SOC_RT298
207ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1011
208ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1015
209c07152d4STzung-Bi Shih	imply SND_SOC_RT1015P
210953b1388SStephen Kitt	imply SND_SOC_RT1016
2112b7aecd5SDerek Fang	imply SND_SOC_RT1017_SDCA_SDW
2127ec79d38SJack Yu	imply SND_SOC_RT1019
213ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1305
214ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1308
215ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5514
21642073911SOder Chiou	imply SND_SOC_RT5575
217ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5616
218ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5631
219ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5640
220ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5645
221ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5651
222ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5659
223ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5660
224ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5663
225ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5665
226ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5668
227ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5670
228ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5677
229a50067d4SArnd Bergmann	imply SND_SOC_RT5682_I2C
23003f6fc6dSOder Chiou	imply SND_SOC_RT5682_SDW
231bdd229abSDerek Fang	imply SND_SOC_RT5682S
232ea00d952SGeert Uytterhoeven	imply SND_SOC_RT700_SDW
233ea00d952SGeert Uytterhoeven	imply SND_SOC_RT711_SDW
2347ad4d237SShuming Fan	imply SND_SOC_RT711_SDCA_SDW
2356c39710dSShuming Fan	imply SND_SOC_RT712_SDCA_SDW
23663a51128SShuming Fan	imply SND_SOC_RT712_SDCA_DMIC_SDW
237ea00d952SGeert Uytterhoeven	imply SND_SOC_RT715_SDW
23820d17057SJack Yu	imply SND_SOC_RT715_SDCA_SDW
23986ce355cSJack Yu	imply SND_SOC_RT721_SDCA_SDW
2407f5d6036SJack Yu	imply SND_SOC_RT722_SDCA_SDW
241b50ecf58SShuming Fan	imply SND_SOC_RT766_SDCA_SDW
242ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1308_SDW
2432b719fd2SShuming Fan	imply SND_SOC_RT1316_SDW
244fe1ff614SJack Yu	imply SND_SOC_RT1318
2456ad73a2bSShuming Fan	imply SND_SOC_RT1318_SDW
246bad0a07aSShuming Fan	imply SND_SOC_RT1320_SDW
2477228d835SChiYuan Huang	imply SND_SOC_RT9120
2488bffd24eSChiYuan Huang	imply SND_SOC_RT9123
2491f5cdb6aSChiYuan Huang	imply SND_SOC_RTQ9124
250736064c6SChiYuan Huang	imply SND_SOC_RTQ9128
25181d3d3d0SPierre-Louis Bossart	imply SND_SOC_SDW_MOCKUP
252ea00d952SGeert Uytterhoeven	imply SND_SOC_SGTL5000
253ea00d952SGeert Uytterhoeven	imply SND_SOC_SI476X
254ea00d952SGeert Uytterhoeven	imply SND_SOC_SIMPLE_AMPLIFIER
255342fbb75SAlexandre Belloni	imply SND_SOC_SIMPLE_MUX
25668cd394eSKiseokJo	imply SND_SOC_SMA1303
257576c57e6SKiseok Jo	imply SND_SOC_SMA1307
258ea00d952SGeert Uytterhoeven	imply SND_SOC_SPDIF
2594e6bedd3SMatt Flax	imply SND_SOC_SRC4XXX_I2C
260ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2305
261ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2518
262ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2602_SPI
263ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2602_I2C
264ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM4567
265ea00d952SGeert Uytterhoeven	imply SND_SOC_STA32X
266ea00d952SGeert Uytterhoeven	imply SND_SOC_STA350
267ea00d952SGeert Uytterhoeven	imply SND_SOC_STA529
268ea00d952SGeert Uytterhoeven	imply SND_SOC_STAC9766
269ea00d952SGeert Uytterhoeven	imply SND_SOC_STI_SAS
27038c89fedSNiranjan H Y	imply SND_SOC_TAC5XX2_SDW
271ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2552
272ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2562
273827ed8a0SDan Murphy	imply SND_SOC_TAS2764
274ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2770
275eae9f9ceSRaphael-Xu	imply SND_SOC_TAS2780
276ef3bcde7SShenghao Ding	imply SND_SOC_TAS2781_I2C
2774cc9bd8dSNiranjan H Y	imply SND_SOC_TAS2783_SDW
278ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS5086
279ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS571X
280ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS5720
281ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS6424
282133c81f8SSen Wang	imply SND_SOC_TAS675X
283ea00d952SGeert Uytterhoeven	imply SND_SOC_TDA7419
284ea00d952SGeert Uytterhoeven	imply SND_SOC_TFA9879
285af00978aSStephan Gerhold	imply SND_SOC_TFA989X
286e9a3b57eSRicard Wanderlof	imply SND_SOC_TLV320ADC3XXX
287689c7655SDan Murphy	imply SND_SOC_TLV320ADCX140
288ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC23_I2C
289ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC23_SPI
290ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC26
291ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC31XX
292ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC32X4_I2C
293ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC32X4_SPI
294a96d2ba2SJiri Prchal	imply SND_SOC_TLV320AIC3X_I2C
295fd4daab3SJiri Prchal	imply SND_SOC_TLV320AIC3X_SPI
296ea00d952SGeert Uytterhoeven	imply SND_SOC_TPA6130A2
297ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320DAC33
298ea00d952SGeert Uytterhoeven	imply SND_SOC_TSCS42XX
299ea00d952SGeert Uytterhoeven	imply SND_SOC_TSCS454
300ea00d952SGeert Uytterhoeven	imply SND_SOC_TS3A227E
301ea00d952SGeert Uytterhoeven	imply SND_SOC_TWL4030
302ea00d952SGeert Uytterhoeven	imply SND_SOC_TWL6040
303ea00d952SGeert Uytterhoeven	imply SND_SOC_UDA1334
304de0fb25eSBinbin Zhou	imply SND_SOC_UDA1342
305ea00d952SGeert Uytterhoeven	imply SND_SOC_UDA1380
306ea00d952SGeert Uytterhoeven	imply SND_SOC_WCD9335
307ea00d952SGeert Uytterhoeven	imply SND_SOC_WCD934X
308313e978dSPrasad Kumpatla	imply SND_SOC_WCD937X_SDW
3092039cc1dSLukas Bulwahn	imply SND_SOC_WCD938X_SDW
310be2af391SNeil Armstrong	imply SND_SOC_WCD939X_SDW
3119e3d83c5SSrinivasa Rao Mandadapu	imply SND_SOC_LPASS_MACRO_COMMON
312af3d54b9SSrinivas Kandagatla	imply SND_SOC_LPASS_RX_MACRO
313c39667ddSSrinivas Kandagatla	imply SND_SOC_LPASS_TX_MACRO
314ea00d952SGeert Uytterhoeven	imply SND_SOC_WM0010
315ea00d952SGeert Uytterhoeven	imply SND_SOC_WM1250_EV1
316ea00d952SGeert Uytterhoeven	imply SND_SOC_WM2000
317ea00d952SGeert Uytterhoeven	imply SND_SOC_WM2200
318ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5100
319ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5102
320ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5110
321ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8350
322ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8400
323ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8510
324ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8523
325ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8524
326ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8580
327ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8711
328ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8727
329ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8728
3309dc15f81SMark Brown	imply SND_SOC_WM8731_I2C
3319dc15f81SMark Brown	imply SND_SOC_WM8731_SPI
332ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8737
333ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8741
334ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8750
335ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8753
336ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8770
337ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8776
338ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8782
339ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8804_I2C
340ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8804_SPI
341ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8900
342ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8903
343ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8904
344ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8940
345ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8955
346ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8960
347ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8961
348ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8962
349ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8971
350ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8974
351ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8978
352ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8983
353ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8985
354ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8988
355ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8990
356ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8991
357ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8993
358ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8994
359ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8995
360ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8996
361ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8997
362ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8998
363ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9081
364ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9090
365ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9705
366ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9712
367ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9713
368ea00d952SGeert Uytterhoeven	imply SND_SOC_WSA881X
36943b8c7dcSSrinivas Kandagatla	imply SND_SOC_WSA883X
370aa21a7d4SKrzysztof Kozlowski	imply SND_SOC_WSA884X
3711d0368c9SPrasad Kumpatla	imply SND_SOC_WSA885X
37252e8a94bSSven Van Asbroeck	imply SND_SOC_ZL38060
3730c941615SMark Brown	help
3740c941615SMark Brown	  Normally ASoC codec drivers are only built if a machine driver which
3750c941615SMark Brown	  uses them is also built since they are only usable with a machine
3760c941615SMark Brown	  driver.  Selecting this option will allow these drivers to be built
3770c941615SMark Brown	  without an explicit machine driver for test and development purposes.
3780c941615SMark Brown
379ca53fb24SMark Brown	  Support for the bus types used to access the codecs to be built must
380ca53fb24SMark Brown	  be selected separately.
381ca53fb24SMark Brown
3820c941615SMark Brown	  If unsure select "N".
3830c941615SMark Brown
384f213f4b5SHaojian Zhuangconfig SND_SOC_88PM860X
385f213f4b5SHaojian Zhuang	tristate
386ea00d952SGeert Uytterhoeven	depends on MFD_88PM860X
387f213f4b5SHaojian Zhuang
38807ed873eSMark Brownconfig SND_SOC_ARIZONA
38907ed873eSMark Brown	tristate
3906610550cSRichard Fitzgerald	default y if SND_SOC_CS47L24=y
39107ed873eSMark Brown	default y if SND_SOC_WM5102=y
3925c6af635SMark Brown	default y if SND_SOC_WM5110=y
39340843aeaSCharles Keepax	default y if SND_SOC_WM8997=y
3946ebbce0aSRichard Fitzgerald	default y if SND_SOC_WM8998=y
3956610550cSRichard Fitzgerald	default m if SND_SOC_CS47L24=m
39607ed873eSMark Brown	default m if SND_SOC_WM5102=m
3975c6af635SMark Brown	default m if SND_SOC_WM5110=m
39840843aeaSCharles Keepax	default m if SND_SOC_WM8997=m
3996ebbce0aSRichard Fitzgerald	default m if SND_SOC_WM8998=m
40007ed873eSMark Brown
401a2342ae3SMark Brownconfig SND_SOC_WM_HUBS
402a2342ae3SMark Brown	tristate
40341f9a314SChanwoo Choi	default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
40441f9a314SChanwoo Choi	default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
4050c941615SMark Brown
4062159ad93SMark Brownconfig SND_SOC_WM_ADSP
407bf2d44d0SRichard Fitzgerald	tristate "Cirrus Logic wm_adsp driver" if KUNIT
408d7cfdf17SRichard Fitzgerald	select FW_CS_DSP
4091d981e0aSCharles Keepax	select SND_SOC_COMPRESS
4102159ad93SMark Brown
411bf2d44d0SRichard Fitzgeraldconfig SND_SOC_WM_ADSP_TEST
412bf2d44d0SRichard Fitzgerald	tristate "KUnit tests for Cirrus Logic wm_adsp" if !KUNIT_ALL_TESTS
413bf2d44d0SRichard Fitzgerald	depends on KUNIT
414bf2d44d0SRichard Fitzgerald	depends on SND_SOC_WM_ADSP
415bf2d44d0SRichard Fitzgerald	default KUNIT_ALL_TESTS
416bf2d44d0SRichard Fitzgerald	help
417bf2d44d0SRichard Fitzgerald	  This builds KUnit tests for the Cirrus Logic wm_adsp library.
418bf2d44d0SRichard Fitzgerald	  For more information on KUnit and unit tests in general,
419bf2d44d0SRichard Fitzgerald	  please refer to the KUnit documentation in
420bf2d44d0SRichard Fitzgerald	  Documentation/dev-tools/kunit/.
421bf2d44d0SRichard Fitzgerald	  If in doubt, say "N".
422bf2d44d0SRichard Fitzgerald
423679d7abdSOla Liljaconfig SND_SOC_AB8500_CODEC
424679d7abdSOla Lilja	tristate
425d8dd3f92SGeert Uytterhoeven	depends on ABX500_CORE
426679d7abdSOla Lilja
4277f137ab6SRichard Purdieconfig SND_SOC_AC97_CODEC
428a60abdf9SMaciej S. Szmigiero	tristate "Build generic ASoC AC97 CODEC driver"
42989fe5117STakashi Iwai	select SND_AC97_CODEC
430a60abdf9SMaciej S. Szmigiero	select SND_SOC_AC97_BUS
4317f137ab6SRichard Purdie
4327eaae41eSBarry Songconfig SND_SOC_AD1836
4337eaae41eSBarry Song	tristate
434ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
4357eaae41eSBarry Song
436a1533d94SBarry Songconfig SND_SOC_AD193X
4371274738dSBarry Song	tristate
4381274738dSBarry Song
4396c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_SPI
4406c3d713eSLars-Peter Clausen	tristate
441ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
4426c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
4436c3d713eSLars-Peter Clausen
4446c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_I2C
4456c3d713eSLars-Peter Clausen	tristate
4461d0158f5SGeert Uytterhoeven	depends on I2C
4476c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
4486c3d713eSLars-Peter Clausen
4495f57dc8bSCliff Caiconfig SND_SOC_AD1980
4505f57dc8bSCliff Cai	tristate
451d8dd3f92SGeert Uytterhoeven	depends on SND_SOC_AC97_BUS
452d8dd3f92SGeert Uytterhoeven	select REGMAP_AC97
4535f57dc8bSCliff Cai
4540e77e784SCliff Caiconfig SND_SOC_AD73311
4550e77e784SCliff Cai	tristate
4560e77e784SCliff Cai
4570eadaa9cSLars-Peter Clausenconfig SND_SOC_ADAU_UTILS
4580eadaa9cSLars-Peter Clausen	tristate
4590eadaa9cSLars-Peter Clausen
4606cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372
4616cd4c645SLars-Peter Clausen	tristate
4626cd4c645SLars-Peter Clausen	select SND_SOC_ADAU_UTILS
4636cd4c645SLars-Peter Clausen
4646cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372_I2C
4656cd4c645SLars-Peter Clausen	tristate "Analog Devices ADAU1372 CODEC (I2C)"
466adc7d561SAlexandre Belloni	depends on I2C
4676cd4c645SLars-Peter Clausen	select SND_SOC_ADAU1372
4686cd4c645SLars-Peter Clausen	select REGMAP_I2C
4696cd4c645SLars-Peter Clausen
4706cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372_SPI
4716cd4c645SLars-Peter Clausen	tristate "Analog Devices ADAU1372 CODEC (SPI)"
472adc7d561SAlexandre Belloni	depends on SPI
4736cd4c645SLars-Peter Clausen	select SND_SOC_ADAU1372
4746cd4c645SLars-Peter Clausen	select REGMAP_SPI
4756cd4c645SLars-Peter Clausen
4764101866cSLars-Peter Clausenconfig SND_SOC_ADAU1373
477bebf0f45SNuno Sa	tristate "Analog Devices ADAU1373 CODEC"
4781d0158f5SGeert Uytterhoeven	depends on I2C
4790eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
4804101866cSLars-Peter Clausen
481631ed8a2SLars-Peter Clausenconfig SND_SOC_ADAU1701
4821291e141SMark Brown	tristate "Analog Devices ADAU1701 CODEC"
4831291e141SMark Brown	depends on I2C
4846b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_I2C
485631ed8a2SLars-Peter Clausen
4864101866cSLars-Peter Clausenconfig SND_SOC_ADAU17X1
487ddd7a260SLars-Peter Clausen	tristate
4886b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_REGMAP
4890eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
490ddd7a260SLars-Peter Clausen
491dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761
492dab464b6SLars-Peter Clausen	tristate
493dab464b6SLars-Peter Clausen	select SND_SOC_ADAU17X1
494dab464b6SLars-Peter Clausen
495dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_I2C
496e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - I2C"
497e54fde61SBryce Ferguson	depends on I2C
498dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
499dab464b6SLars-Peter Clausen	select REGMAP_I2C
500dab464b6SLars-Peter Clausen
501dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_SPI
502e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - SPI"
503e54fde61SBryce Ferguson	depends on SPI
504dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
505dab464b6SLars-Peter Clausen	select REGMAP_SPI
506dab464b6SLars-Peter Clausen
5072923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781
5082923af02SLars-Peter Clausen	select SND_SOC_ADAU17X1
5092923af02SLars-Peter Clausen	tristate
5102923af02SLars-Peter Clausen
5112923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_I2C
5122923af02SLars-Peter Clausen	tristate
5131d0158f5SGeert Uytterhoeven	depends on I2C
5142923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
5152923af02SLars-Peter Clausen	select REGMAP_I2C
5162923af02SLars-Peter Clausen
5172923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_SPI
5182923af02SLars-Peter Clausen	tristate
519ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
5202923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
5212923af02SLars-Peter Clausen	select REGMAP_SPI
5222dcf9fb9SGraeme Gregory
523603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977
524603597c9SLars-Peter Clausen	tristate
525603597c9SLars-Peter Clausen
526603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_SPI
527*0030f626SAlvin Šipraga	tristate "Analog Devices ADAU1977/ADAU1978/ADAU1979 CODEC - SPI"
528ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
529603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
530603597c9SLars-Peter Clausen	select REGMAP_SPI
531603597c9SLars-Peter Clausen
532603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_I2C
533*0030f626SAlvin Šipraga	tristate "Analog Devices ADAU1977/ADAU1978/ADAU1979 CODEC - I2C"
5341d0158f5SGeert Uytterhoeven	depends on I2C
535603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
536603597c9SLars-Peter Clausen	select REGMAP_I2C
537603597c9SLars-Peter Clausen
538a0d3546cSLars-Peter Clausenconfig SND_SOC_ADAU7002
539a0d3546cSLars-Peter Clausen	tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
540a0d3546cSLars-Peter Clausen
541ca514c0fSNuno Sáconfig SND_SOC_ADAU7118
542ca514c0fSNuno Sá	tristate
543ca514c0fSNuno Sá
544ca514c0fSNuno Sáconfig SND_SOC_ADAU7118_HW
545ca514c0fSNuno Sá	tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode"
546ca514c0fSNuno Sá	select SND_SOC_ADAU7118
547ca514c0fSNuno Sá	help
548ca514c0fSNuno Sá	  Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
549ca514c0fSNuno Sá	  Converter. In this mode, the device works in standalone mode which
5504ad2d3cfSColin Ian King	  means that there is no bus to communicate with it. Stereo mode is not
551ca514c0fSNuno Sá	  supported in this mode.
552ca514c0fSNuno Sá
553ca514c0fSNuno Sá	  To compile this driver as a module, choose M here: the module
554ca514c0fSNuno Sá	  will be called snd-soc-adau7118-hw.
555ca514c0fSNuno Sá
556ca514c0fSNuno Sáconfig SND_SOC_ADAU7118_I2C
557ca514c0fSNuno Sá	tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C"
558de729862SYueHaibing	depends on I2C
559ca514c0fSNuno Sá	select SND_SOC_ADAU7118
560ca514c0fSNuno Sá	select REGMAP_I2C
561ca514c0fSNuno Sá	help
562ca514c0fSNuno Sá	  Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
563ca514c0fSNuno Sá	  Converter over I2C. This gives full support over the device.
564ca514c0fSNuno Sá
565ca514c0fSNuno Sá	  To compile this driver as a module, choose M here: the module
566ca514c0fSNuno Sá	  will be called snd-soc-adau7118-i2c.
567ca514c0fSNuno Sá
5682dcf9fb9SGraeme Gregoryconfig SND_SOC_ADAV80X
5692dcf9fb9SGraeme Gregory	tristate
570a381934eSDaniel Mack
5710c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV801
5720c2d6964SLars-Peter Clausen	tristate
573ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
5740c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
5750c2d6964SLars-Peter Clausen
5760c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV803
5770c2d6964SLars-Peter Clausen	tristate
5781d0158f5SGeert Uytterhoeven	depends on I2C
5790c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
5800c2d6964SLars-Peter Clausen
581a381934eSDaniel Mackconfig SND_SOC_ADS117X
582a381934eSDaniel Mack	tristate
583796d2ca8SRichard Purdie
584796d2ca8SRichard Purdieconfig SND_SOC_AK4104
5851291e141SMark Brown	tristate "AKM AK4104 CODEC"
5861291e141SMark Brown	depends on SPI_MASTER
5873e860846SMark Brown
588bf897b44SAdrien Charruelconfig SND_SOC_AK4118
589bf897b44SAdrien Charruel	tristate "AKM AK4118 CODEC"
590bf897b44SAdrien Charruel	depends on I2C
591bf897b44SAdrien Charruel	select REGMAP_I2C
592bf897b44SAdrien Charruel
59353778b82SVincent Knechtconfig SND_SOC_AK4375
59453778b82SVincent Knecht	tristate "AKM AK4375 CODEC"
59553778b82SVincent Knecht	depends on I2C
59653778b82SVincent Knecht	select REGMAP_I2C
59753778b82SVincent Knecht	help
59853778b82SVincent Knecht	  Enable support for the Asahi-Kasei AK4375 codec.
59953778b82SVincent Knecht
60053778b82SVincent Knecht	  To compile this driver as a module, choose M here: the module
60153778b82SVincent Knecht	  will be called snd-soc-ak4375.
60253778b82SVincent Knecht
60308660086SCosmin-Gabriel Samoilaconfig SND_SOC_AK4458
60408660086SCosmin-Gabriel Samoila	tristate "AKM AK4458 CODEC"
60508660086SCosmin-Gabriel Samoila	depends on I2C
60608660086SCosmin-Gabriel Samoila	select REGMAP_I2C
60708660086SCosmin-Gabriel Samoila
608796d2ca8SRichard Purdieconfig SND_SOC_AK4535
609796d2ca8SRichard Purdie	tristate
6101d0158f5SGeert Uytterhoeven	depends on I2C
611796d2ca8SRichard Purdie
612a2911cdbSKuninori Morimotoconfig SND_SOC_AK4554
6131291e141SMark Brown	tristate "AKM AK4554 CODEC"
614a2911cdbSKuninori Morimoto
615b0757062SKuninori Morimotoconfig SND_SOC_AK4613
616b0757062SKuninori Morimoto	tristate "AKM AK4613 CODEC"
617b0757062SKuninori Morimoto	depends on I2C
618b0757062SKuninori Morimoto
619ca73d314SKhanh Leconfig SND_SOC_AK4619
620ca73d314SKhanh Le	tristate "AKM AK4619 CODEC"
621ca73d314SKhanh Le	depends on I2C
622ca73d314SKhanh Le
623a3a83d9aSKuninori Morimotoconfig SND_SOC_AK4642
6241291e141SMark Brown	tristate "AKM AK4642 CODEC"
6251291e141SMark Brown	depends on I2C
626a3a83d9aSKuninori Morimoto
6272312fd8fSJoonyoung Shimconfig SND_SOC_AK4671
6282312fd8fSJoonyoung Shim	tristate
6291d0158f5SGeert Uytterhoeven	depends on I2C
6302312fd8fSJoonyoung Shim
631cc289be8SDaniel Mackconfig SND_SOC_AK5386
6321291e141SMark Brown	tristate "AKM AK5638 CODEC"
633cc289be8SDaniel Mack
63492088477SDaniel Balutaconfig SND_SOC_AK5558
63592088477SDaniel Baluta	tristate "AKM AK5558 CODEC"
63692088477SDaniel Baluta	depends on I2C
63792088477SDaniel Baluta	select REGMAP_I2C
63892088477SDaniel Baluta
6396f4bc952SArnaud Patard (Rtp)config SND_SOC_ALC5623
6407d6d478fSAndrew Lunn	tristate "Realtek ALC5623 CODEC"
6415dc04f51STakashi Iwai	depends on I2C
6421291e141SMark Brown
64394d5f7c0SLeon Romanovskyconfig SND_SOC_ALC5632
64494d5f7c0SLeon Romanovsky	tristate
645ce0c97f8SGeert Uytterhoeven	depends on I2C
6466f4bc952SArnaud Patard (Rtp)
6471d298ad8SHerve Codinaconfig SND_SOC_AUDIO_IIO_AUX
6481d298ad8SHerve Codina	tristate "Audio IIO Auxiliary device"
6491d298ad8SHerve Codina	depends on IIO
6501d298ad8SHerve Codina	help
6511d298ad8SHerve Codina	  Enable support for Industrial I/O devices as audio auxiliary devices.
6521d298ad8SHerve Codina	  This allows to have an IIO device present in the audio path and
6531d298ad8SHerve Codina	  controlled using mixer controls.
6541d298ad8SHerve Codina
6551d298ad8SHerve Codina	  To compile this driver as a module, choose M here: the module
6561d298ad8SHerve Codina	  will be called snd-soc-audio-iio-aux.
6571d298ad8SHerve Codina
6586b4528b5SJonathan Albrieuxconfig SND_SOC_AW8738
6596b4528b5SJonathan Albrieux	tristate "Awinic AW8738 Audio Amplifier"
6606b4528b5SJonathan Albrieux	select GPIOLIB
6616b4528b5SJonathan Albrieux	help
6626b4528b5SJonathan Albrieux	  Enable support for the Awinic AW8738 audio amplifier (or similar).
6636b4528b5SJonathan Albrieux	  The driver supports simple audio amplifiers similar to
6646b4528b5SJonathan Albrieux	  SND_SOC_SIMPLE_AMPLIFIER, but additionally allows setting the
6656b4528b5SJonathan Albrieux	  operation mode using the Awinic-specific one-wire pulse control.
6666b4528b5SJonathan Albrieux
66714bd8572SWeidong Wangconfig SND_SOC_AW88395_LIB
6684717636fSWeidong Wang	select CRC8
66914bd8572SWeidong Wang	tristate
67014bd8572SWeidong Wang
67114bd8572SWeidong Wangconfig SND_SOC_AW88395
67214bd8572SWeidong Wang	tristate "Soc Audio for awinic aw88395"
67314bd8572SWeidong Wang	depends on I2C
67414bd8572SWeidong Wang	select CRC32
67514bd8572SWeidong Wang	select REGMAP_I2C
6764680716dSWeidong Wang	select GPIOLIB
67714bd8572SWeidong Wang	select SND_SOC_AW88395_LIB
67814bd8572SWeidong Wang	help
67914bd8572SWeidong Wang	  this option enables support for aw88395 Smart PA.
68014bd8572SWeidong Wang	  The Awinic AW88395 is an I2S/TDM input, high efficiency
68114bd8572SWeidong Wang	  digital Smart K audio amplifier with an integrated 10V
68214bd8572SWeidong Wang	  smart boost convert.
68314bd8572SWeidong Wang
68494e412c2SWeidong Wangconfig SND_SOC_AW88166
68594e412c2SWeidong Wang	tristate "Soc Audio for awinic aw88166"
68694e412c2SWeidong Wang	depends on I2C
68794e412c2SWeidong Wang	select REGMAP_I2C
68894e412c2SWeidong Wang	select GPIOLIB
68994e412c2SWeidong Wang	select SND_SOC_AW88395_LIB
69094e412c2SWeidong Wang	help
69194e412c2SWeidong Wang	  This option enables support for aw88166 Smart PA.
69294e412c2SWeidong Wang	  The awinic AW88166 is an I2S/TDM input, high efficiency
69394e412c2SWeidong Wang	  digital Smart K audio amplifier with sound quality
69494e412c2SWeidong Wang	  enhancement algorithms and speaker protection.
69594e412c2SWeidong Wang
696028a2ae2SWeidong Wangconfig SND_SOC_AW88261
697028a2ae2SWeidong Wang	tristate "Soc Audio for awinic aw88261"
698028a2ae2SWeidong Wang	depends on I2C
699028a2ae2SWeidong Wang	select REGMAP_I2C
700028a2ae2SWeidong Wang	select GPIOLIB
701028a2ae2SWeidong Wang	select SND_SOC_AW88395_LIB
702028a2ae2SWeidong Wang	help
703028a2ae2SWeidong Wang	  This option enables support for aw88261 Smart PA.
704028a2ae2SWeidong Wang	  The awinic AW88261 is an I2S/TDM input, high efficiency
705028a2ae2SWeidong Wang	  digital Smart K audio amplifier. The output voltage of
706028a2ae2SWeidong Wang	  boost converter can be adjusted smartly according to
707028a2ae2SWeidong Wang	  the input amplitude.
708028a2ae2SWeidong Wang
70988264e4fSWeidong Wangconfig SND_SOC_AW88081
710be947cc0SWeidong Wang	tristate "Soc Audio for awinic aw88081/aw88083"
71188264e4fSWeidong Wang	depends on I2C
71288264e4fSWeidong Wang	select REGMAP_I2C
71388264e4fSWeidong Wang	select SND_SOC_AW88395_LIB
71488264e4fSWeidong Wang	help
71588264e4fSWeidong Wang	  This option enables support for aw88081 Smart PA.
71688264e4fSWeidong Wang	  The awinic AW88081 is an I2S/TDM input, high efficiency
71788264e4fSWeidong Wang	  digital Smart K audio amplifier. Due to its 9uV noise
71888264e4fSWeidong Wang	  floor and ultra-low distortion, clean listening is guaranteed.
71988264e4fSWeidong Wang
7204717636fSWeidong Wangconfig SND_SOC_AW87390
7214717636fSWeidong Wang	tristate "Soc Audio for awinic aw87390"
7224717636fSWeidong Wang	depends on I2C
7234717636fSWeidong Wang	select REGMAP_I2C
7244717636fSWeidong Wang	select SND_SOC_AW88395_LIB
7254717636fSWeidong Wang	help
7264717636fSWeidong Wang	  The awinic aw87390 is specifically designed to improve
7274717636fSWeidong Wang	  the musical output dynamic range, enhance the overall
7284717636fSWeidong Wang	  sound quality, which is a new high efficiency, low
7294717636fSWeidong Wang	  noise, constant large volume, 6th Smart K audio amplifier.
7304717636fSWeidong Wang
7317fa44519SMarco Giuntaconfig SND_SOC_AW88399_LIB
7327fa44519SMarco Giunta	tristate
7337fa44519SMarco Giunta	select SND_SOC_AW88395_LIB
7347fa44519SMarco Giunta
7358ade6cc7SWeidong Wangconfig SND_SOC_AW88399
7368ade6cc7SWeidong Wang	tristate "Soc Audio for awinic aw88399"
7378ade6cc7SWeidong Wang	depends on I2C
7388ade6cc7SWeidong Wang	select CRC8
7398ade6cc7SWeidong Wang	select REGMAP_I2C
7408ade6cc7SWeidong Wang	select GPIOLIB
741cf046ecbSArnd Bergmann	select SND_SOC_AW88395_LIB
7427fa44519SMarco Giunta	select SND_SOC_AW88399_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
77693fa0af4SArd Biesheuvel	select CRYPTO_LIB_SHA256
777b291f42aSCheng-Yi Chiang	help
778b291f42aSCheng-Yi Chiang	  If you say yes here you will get support for the
779b291f42aSCheng-Yi Chiang	  ChromeOS Embedded Controller's Audio Codec.
780b291f42aSCheng-Yi Chiang
7811cad8725SRichard Fitzgeraldconfig SND_SOC_CS_AMP_LIB
7821cad8725SRichard Fitzgerald	tristate
7831cad8725SRichard Fitzgerald
7843f086a4fSRichard Fitzgeraldconfig SND_SOC_CS_AMP_LIB_TEST_HOOKS
7853f086a4fSRichard Fitzgerald	bool
7863f086a4fSRichard Fitzgerald	depends on SND_SOC_CS_AMP_LIB
7873f086a4fSRichard Fitzgerald
78817786231SRichard Fitzgeraldconfig SND_SOC_CS_AMP_LIB_TEST
78996014d91SRichard Fitzgerald	tristate "KUnit test for Cirrus Logic cs-amp-lib" if !KUNIT_ALL_TESTS
79096014d91SRichard Fitzgerald	depends on SND_SOC_CS_AMP_LIB && KUNIT
7913f086a4fSRichard Fitzgerald	select SND_SOC_CS_AMP_LIB_TEST_HOOKS
79217786231SRichard Fitzgerald	default KUNIT_ALL_TESTS
79317786231SRichard Fitzgerald	help
79417786231SRichard Fitzgerald	  This builds KUnit tests for the Cirrus Logic common
79517786231SRichard Fitzgerald	  amplifier library.
79617786231SRichard Fitzgerald	  For more information on KUnit and unit tests in general,
79717786231SRichard Fitzgerald	  please refer to the KUnit documentation in
79817786231SRichard Fitzgerald	  Documentation/dev-tools/kunit/.
79917786231SRichard Fitzgerald	  If in doubt, say "N".
80017786231SRichard Fitzgerald
801eef5bb24SBrian Austinconfig SND_SOC_CS35L32
802eef5bb24SBrian Austin	tristate "Cirrus Logic CS35L32 CODEC"
803eef5bb24SBrian Austin	depends on I2C
804eef5bb24SBrian Austin
8053333cb71SPaul Handriganconfig SND_SOC_CS35L33
8063333cb71SPaul Handrigan	tristate "Cirrus Logic CS35L33 CODEC"
8073333cb71SPaul Handrigan	depends on I2C
8083333cb71SPaul Handrigan
809c1124c09SPaul Handriganconfig SND_SOC_CS35L34
810c1124c09SPaul Handrigan	tristate "Cirrus Logic CS35L34 CODEC"
811c1124c09SPaul Handrigan	depends on I2C
812c1124c09SPaul Handrigan
8136387f866SBrian Austinconfig SND_SOC_CS35L35
8146387f866SBrian Austin	tristate "Cirrus Logic CS35L35 CODEC"
8156387f866SBrian Austin	depends on I2C
8166387f866SBrian Austin
8176ba9dd6cSJames Schulmanconfig SND_SOC_CS35L36
8186ba9dd6cSJames Schulman	tristate "Cirrus Logic CS35L36 CODEC"
8196ba9dd6cSJames Schulman	depends on I2C
8206ba9dd6cSJames Schulman
821a87d4222SLucas Tanureconfig SND_SOC_CS35L41_LIB
822a87d4222SLucas Tanure	tristate
823a87d4222SLucas Tanure
824a5e0091dSLucas Tanureconfig SND_SOC_CS35L41
825a5e0091dSLucas Tanure	tristate
826e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
827a5e0091dSLucas Tanure
8286450ef55SDavid Rhodesconfig SND_SOC_CS35L41_SPI
8296450ef55SDavid Rhodes	tristate "Cirrus Logic CS35L41 CODEC (SPI)"
8306450ef55SDavid Rhodes	depends on SPI_MASTER
831a87d4222SLucas Tanure	select SND_SOC_CS35L41_LIB
832a87d4222SLucas Tanure	select SND_SOC_CS35L41
8336450ef55SDavid Rhodes	select REGMAP_SPI
8346450ef55SDavid Rhodes
8356450ef55SDavid Rhodesconfig SND_SOC_CS35L41_I2C
8366450ef55SDavid Rhodes	tristate "Cirrus Logic CS35L41 CODEC (I2C)"
8376450ef55SDavid Rhodes	depends on I2C
838a87d4222SLucas Tanure	select SND_SOC_CS35L41_LIB
839a87d4222SLucas Tanure	select SND_SOC_CS35L41
8406450ef55SDavid Rhodes	select REGMAP_I2C
8416450ef55SDavid Rhodes
8420d463d01SJames Schulmanconfig SND_SOC_CS35L45
8430d463d01SJames Schulman	tristate
844d9ba2975SNathan Chancellor	select REGMAP_IRQ
845e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
8460d463d01SJames Schulman
8470d463d01SJames Schulmanconfig SND_SOC_CS35L45_SPI
8480d463d01SJames Schulman	tristate "Cirrus Logic CS35L45 CODEC (SPI)"
8490d463d01SJames Schulman	depends on SPI_MASTER
8500d463d01SJames Schulman	select REGMAP
8510d463d01SJames Schulman	select REGMAP_SPI
8520d463d01SJames Schulman	select SND_SOC_CS35L45
8530d463d01SJames Schulman	help
8540d463d01SJames Schulman	  Enable support for Cirrus Logic CS35L45 smart speaker amplifier
8550d463d01SJames Schulman	  with SPI control.
8560d463d01SJames Schulman
8570d463d01SJames Schulmanconfig SND_SOC_CS35L45_I2C
8580d463d01SJames Schulman	tristate "Cirrus Logic CS35L45 CODEC (I2C)"
8590d463d01SJames Schulman	depends on I2C
8600d463d01SJames Schulman	select REGMAP
8610d463d01SJames Schulman	select REGMAP_I2C
8620d463d01SJames Schulman	select SND_SOC_CS35L45
8630d463d01SJames Schulman	help
8640d463d01SJames Schulman	  Enable support for Cirrus Logic CS35L45 smart speaker amplifier
8650d463d01SJames Schulman	  with I2C control.
8660d463d01SJames Schulman
867e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56
868e4961125SRichard Fitzgerald	tristate
869e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
870e4961125SRichard Fitzgerald
871e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SHARED
872e1830f66SRichard Fitzgerald	select SND_SOC_CS_AMP_LIB
873e4961125SRichard Fitzgerald	tristate
874e4961125SRichard Fitzgerald
875e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_I2C
876e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (I2C)"
877e4961125SRichard Fitzgerald	depends on I2C
878e4961125SRichard Fitzgerald	depends on SOUNDWIRE || !SOUNDWIRE
879e4961125SRichard Fitzgerald	select REGMAP_I2C
880e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
881e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
882e4961125SRichard Fitzgerald	help
883e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with I2C control
884e4961125SRichard Fitzgerald
885e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SPI
886e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (SPI)"
887e4961125SRichard Fitzgerald	depends on SPI_MASTER
888e4961125SRichard Fitzgerald	depends on SOUNDWIRE || !SOUNDWIRE
889e4961125SRichard Fitzgerald	select REGMAP_SPI
890e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
891e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
892e4961125SRichard Fitzgerald	help
893e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with SPI control
894e4961125SRichard Fitzgerald
895e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SDW
896e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (SDW)"
897e4961125SRichard Fitzgerald	depends on SOUNDWIRE
898eb65b5adSRichard Fitzgerald	select REGMAP_SOUNDWIRE
899243ca1fbSRichard Fitzgerald	select IRQ_DOMAIN
900e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
901e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
902e4961125SRichard Fitzgerald	help
903e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with SoundWire control
904e4961125SRichard Fitzgerald
905f7097161SRichard Fitzgeraldconfig SND_SOC_CS35L56_CAL_DEBUGFS_COMMON
906f7097161SRichard Fitzgerald	bool
907f7097161SRichard Fitzgerald
908191a27faSRichard Fitzgeraldmenu "CS35L56 driver options"
909191a27faSRichard Fitzgerald	depends on SND_SOC_CS35L56
910191a27faSRichard Fitzgerald
911191a27faSRichard Fitzgeraldconfig SND_SOC_CS35L56_CAL_DEBUGFS
912191a27faSRichard Fitzgerald	bool "CS35L56 create debugfs for factory calibration"
913191a27faSRichard Fitzgerald	depends on DEBUG_FS
914191a27faSRichard Fitzgerald	select SND_SOC_CS35L56_CAL_DEBUGFS_COMMON
915191a27faSRichard Fitzgerald	help
916191a27faSRichard Fitzgerald	  Create debugfs entries used during factory-line manufacture
917191a27faSRichard Fitzgerald	  for factory calibration.
918191a27faSRichard Fitzgerald
919191a27faSRichard Fitzgerald	  If unsure select "N".
92032172cf3SRichard Fitzgerald
92132172cf3SRichard Fitzgeraldconfig SND_SOC_CS35L56_CAL_SET_CTRL
92232172cf3SRichard Fitzgerald	bool "CS35L56 ALSA control to restore factory calibration"
923a061deb0SRichard Fitzgerald	select SND_SOC_CS35L56_CAL_DEBUGFS_COMMON
92432172cf3SRichard Fitzgerald	help
92532172cf3SRichard Fitzgerald	  Allow restoring factory calibration data through an ALSA
92632172cf3SRichard Fitzgerald	  control. This is only needed on platforms without UEFI or
92732172cf3SRichard Fitzgerald	  some other method of non-volatile storage that the driver
92832172cf3SRichard Fitzgerald	  can access directly.
92932172cf3SRichard Fitzgerald
93032172cf3SRichard Fitzgerald	  On most platforms this is not needed.
93132172cf3SRichard Fitzgerald
93232172cf3SRichard Fitzgerald	  If unsure select "N".
933d0ab8995SRichard Fitzgerald
934ee7d655dSRichard Fitzgeraldconfig SND_SOC_CS35L56_CAL_PERFORM_CTRL
935ee7d655dSRichard Fitzgerald	bool "CS35L56 ALSA control to perform factory calibration"
936ee7d655dSRichard Fitzgerald	select SND_SOC_CS35L56_CAL_DEBUGFS_COMMON
937ee7d655dSRichard Fitzgerald	help
938ee7d655dSRichard Fitzgerald	  Allow performing factory calibration data through an ALSA
939ee7d655dSRichard Fitzgerald	  control. It is recommended to use the debugfs method instead
940ee7d655dSRichard Fitzgerald	  because debugfs has restricted access permissions.
941ee7d655dSRichard Fitzgerald
942ee7d655dSRichard Fitzgerald	  On most platforms this is not needed.
943ee7d655dSRichard Fitzgerald
944ee7d655dSRichard Fitzgerald	  If unsure select "N".
945ee7d655dSRichard Fitzgerald
946d0ab8995SRichard Fitzgeraldconfig SND_SOC_CS35L56_TEST
947d0ab8995SRichard Fitzgerald	tristate "KUnit test for Cirrus Logic cs35l56 driver" if !KUNIT_ALL_TESTS
948d0ab8995SRichard Fitzgerald	depends on SND_SOC_CS35L56 && KUNIT
949d0ab8995SRichard Fitzgerald	default KUNIT_ALL_TESTS
950d0ab8995SRichard Fitzgerald	select SND_SOC_CS_AMP_LIB_TEST_HOOKS
951d0ab8995SRichard Fitzgerald	help
952d0ab8995SRichard Fitzgerald	  This builds KUnit tests for the Cirrus Logic cs35l56
953d0ab8995SRichard Fitzgerald	  codec driver.
9549bca0f05SRichard Fitzgerald
9559bca0f05SRichard Fitzgerald	  For more information on KUnit and unit tests in general,
9569bca0f05SRichard Fitzgerald	  please refer to the KUnit documentation in
9579bca0f05SRichard Fitzgerald	  Documentation/dev-tools/kunit/.
9589bca0f05SRichard Fitzgerald	  If in doubt, say "N".
9599bca0f05SRichard Fitzgerald
9609bca0f05SRichard Fitzgeraldconfig SND_SOC_CS35L56_SHARED_TEST
9619bca0f05SRichard Fitzgerald	tristate "KUnit test for Cirrus Logic cs35l56-shared" if !KUNIT_ALL_TESTS
9629bca0f05SRichard Fitzgerald	depends on SND_SOC_CS35L56_SHARED && KUNIT
9639bca0f05SRichard Fitzgerald	default KUNIT_ALL_TESTS
9649bca0f05SRichard Fitzgerald	help
9659bca0f05SRichard Fitzgerald	  This builds KUnit tests for the Cirrus Logic cs35l56-shared
9669bca0f05SRichard Fitzgerald	  module.
9679bca0f05SRichard Fitzgerald
968d0ab8995SRichard Fitzgerald	  For more information on KUnit and unit tests in general,
969d0ab8995SRichard Fitzgerald	  please refer to the KUnit documentation in
970d0ab8995SRichard Fitzgerald	  Documentation/dev-tools/kunit/.
971d0ab8995SRichard Fitzgerald	  If in doubt, say "N".
972191a27faSRichard Fitzgeraldendmenu
973191a27faSRichard Fitzgerald
974c486def5SJames Ogletreeconfig SND_SOC_CS40L50
975c486def5SJames Ogletree	tristate "Cirrus Logic CS40L50 CODEC"
976c486def5SJames Ogletree	depends on MFD_CS40L50_CORE
977c486def5SJames Ogletree	help
978c486def5SJames Ogletree	  This option enables support for I2S streaming to Cirrus Logic CS40L50.
979c486def5SJames Ogletree
980c486def5SJames Ogletree	  CS40L50 is a haptic driver with waveform memory, an integrated
981c486def5SJames Ogletree	  DSP, and closed-loop algorithms. If built as a module, it will be
982c486def5SJames Ogletree	  called snd-soc-cs40l50.
983c486def5SJames Ogletree
984ae9f5e60SRichard Fitzgeraldconfig SND_SOC_CS42L42_CORE
985ae9f5e60SRichard Fitzgerald	tristate
986ae9f5e60SRichard Fitzgerald
9872c394ca7SJames Schulmanconfig SND_SOC_CS42L42
988ae9f5e60SRichard Fitzgerald	tristate "Cirrus Logic CS42L42 CODEC (I2C)"
9892c394ca7SJames Schulman	depends on I2C
990ae9f5e60SRichard Fitzgerald	select REGMAP
991ae9f5e60SRichard Fitzgerald	select REGMAP_I2C
992ae9f5e60SRichard Fitzgerald	select SND_SOC_CS42L42_CORE
9932c394ca7SJames Schulman
99490f6a2a2SRichard Fitzgeraldconfig SND_SOC_CS42L42_SDW
99590f6a2a2SRichard Fitzgerald	tristate "Cirrus Logic CS42L42 CODEC on Soundwire"
99690f6a2a2SRichard Fitzgerald	depends on SOUNDWIRE
99790f6a2a2SRichard Fitzgerald	select SND_SOC_CS42L42_CORE
99890f6a2a2SRichard Fitzgerald	help
99990f6a2a2SRichard Fitzgerald	  Enable support for Cirrus Logic CS42L42 codec with Soundwire control
100090f6a2a2SRichard Fitzgerald
1001fc918cbeSCharles Keepaxconfig SND_SOC_CS42L43
1002fc918cbeSCharles Keepax	tristate "Cirrus Logic CS42L43 CODEC"
1003fc918cbeSCharles Keepax	depends on MFD_CS42L43
1004fc918cbeSCharles Keepax	help
1005fc918cbeSCharles Keepax	  Select this to support the audio functions of the Cirrus Logic
1006fc918cbeSCharles Keepax	  CS42L43 PC CODEC.
1007fc918cbeSCharles Keepax
1008fc918cbeSCharles Keepaxconfig SND_SOC_CS42L43_SDW
1009fc918cbeSCharles Keepax	tristate "Cirrus Logic CS42L43 CODEC (SoundWire)"
1010fc918cbeSCharles Keepax	depends on SND_SOC_CS42L43 && MFD_CS42L43_SDW
1011fc918cbeSCharles Keepax	help
1012fc918cbeSCharles Keepax	  Select this to support the audio functions of the Cirrus Logic
1013fc918cbeSCharles Keepax	  CS42L43 PC CODEC over SoundWire.
1014fc918cbeSCharles Keepax
101572ed5a8cSapatard@mandriva.comconfig SND_SOC_CS42L51
101672ed5a8cSapatard@mandriva.com	tristate
101772ed5a8cSapatard@mandriva.com
1018a1253ef6SBrian Austinconfig SND_SOC_CS42L51_I2C
10194e449238SThomas Petazzoni	tristate "Cirrus Logic CS42L51 CODEC (I2C)"
1020e894beb8SRandy Dunlap	depends on I2C
1021a1253ef6SBrian Austin	select SND_SOC_CS42L51
1022a1253ef6SBrian Austin
1023dfe0f98bSBrian Austinconfig SND_SOC_CS42L52
10241291e141SMark Brown	tristate "Cirrus Logic CS42L52 CODEC"
1025a2915d4fSArnd Bergmann	depends on I2C && INPUT
1026dfe0f98bSBrian Austin
1027272b5eddSBrian Austinconfig SND_SOC_CS42L56
1028272b5eddSBrian Austin	tristate "Cirrus Logic CS42L56 CODEC"
1029272b5eddSBrian Austin	depends on I2C && INPUT
10303e860846SMark Brown
10313e860846SMark Brownconfig SND_SOC_CS42L73
10321291e141SMark Brown	tristate "Cirrus Logic CS42L73 CODEC"
10331291e141SMark Brown	depends on I2C
10343e860846SMark Brown
103594d5f62aSMartin Povišerconfig SND_SOC_CS42L83
103694d5f62aSMartin Povišer	tristate "Cirrus Logic CS42L83 CODEC"
103794d5f62aSMartin Povišer	depends on I2C
103894d5f62aSMartin Povišer	select REGMAP
103994d5f62aSMartin Povišer	select REGMAP_I2C
104094d5f62aSMartin Povišer	select SND_SOC_CS42L42_CORE
104194d5f62aSMartin Povišer
1042250304a0SMartin Povišerconfig SND_SOC_CS42L84
1043250304a0SMartin Povišer	tristate "Cirrus Logic CS42L84 CODEC"
1044250304a0SMartin Povišer	depends on I2C
1045250304a0SMartin Povišer	select REGMAP
1046250304a0SMartin Povišer	select REGMAP_I2C
1047250304a0SMartin Povišer
1048d4edae9cSLucas Tanureconfig SND_SOC_CS4234
1049d4edae9cSLucas Tanure	tristate "Cirrus Logic CS4234 CODEC"
1050d4edae9cSLucas Tanure	depends on I2C
1051d4edae9cSLucas Tanure	select REGMAP_I2C
1052d4edae9cSLucas Tanure
1053fb6f8069SPaul Handriganconfig SND_SOC_CS4265
1054fb6f8069SPaul Handrigan	tristate "Cirrus Logic CS4265 CODEC"
1055fb6f8069SPaul Handrigan	depends on I2C
1056fb6f8069SPaul Handrigan	select REGMAP_I2C
1057fb6f8069SPaul Handrigan
10583e860846SMark Brown# Cirrus Logic CS4270 Codec
10593e860846SMark Brownconfig SND_SOC_CS4270
10601291e141SMark Brown	tristate "Cirrus Logic CS4270 CODEC"
10611291e141SMark Brown	depends on I2C
10623e860846SMark Brown
10633e860846SMark Brown# Cirrus Logic CS4270 Codec VD = 3.3V Errata
10643e860846SMark Brown# Select if you are affected by the errata where the part will not function
10653e860846SMark Brown# if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
10663e860846SMark Brown# not select any sample rates that require MCLK to be divided by 1.5.
10673e860846SMark Brownconfig SND_SOC_CS4270_VD33_ERRATA
10683e860846SMark Brown	bool
10693e860846SMark Brown	depends on SND_SOC_CS4270
10703e860846SMark Brown
107167b22517SAlexander Sverdlinconfig SND_SOC_CS4271
1072c973b8a7SAxel Lin	tristate
1073c973b8a7SAxel Lin
1074c973b8a7SAxel Linconfig SND_SOC_CS4271_I2C
1075c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (I2C)"
1076c973b8a7SAxel Lin	depends on I2C
1077c973b8a7SAxel Lin	select SND_SOC_CS4271
1078c973b8a7SAxel Lin	select REGMAP_I2C
1079c973b8a7SAxel Lin
1080c973b8a7SAxel Linconfig SND_SOC_CS4271_SPI
1081c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (SPI)"
1082c973b8a7SAxel Lin	depends on SPI_MASTER
1083c973b8a7SAxel Lin	select SND_SOC_CS4271
1084c973b8a7SAxel Lin	select REGMAP_SPI
108567b22517SAlexander Sverdlin
10860c516b4fSNicolin Chenconfig SND_SOC_CS42XX8
10870c516b4fSNicolin Chen	tristate
10880c516b4fSNicolin Chen
10893158f585SChancel Liuconfig SND_SOC_CS42XX8_SPI
10903158f585SChancel Liu	tristate "Cirrus Logic CS42448/CS42888 CODEC (SPI)"
10913158f585SChancel Liu	depends on SPI_MASTER
10923158f585SChancel Liu	select SND_SOC_CS42XX8
10933158f585SChancel Liu	select REGMAP_SPI
10943158f585SChancel Liu
10950c516b4fSNicolin Chenconfig SND_SOC_CS42XX8_I2C
10960c516b4fSNicolin Chen	tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
10970c516b4fSNicolin Chen	depends on I2C
10980c516b4fSNicolin Chen	select SND_SOC_CS42XX8
10990c516b4fSNicolin Chen	select REGMAP_I2C
11000c516b4fSNicolin Chen
11018f1e5bf9SLi Xu# Cirrus Logic CS43130 HiFi DAC
11028f1e5bf9SLi Xuconfig SND_SOC_CS43130
11038f1e5bf9SLi Xu	tristate "Cirrus Logic CS43130 CODEC"
11048f1e5bf9SLi Xu	depends on I2C
11058f1e5bf9SLi Xu
11060f68c396SAlexander Shiyanconfig SND_SOC_CS4341
11070f68c396SAlexander Shiyan	tristate "Cirrus Logic CS4341 CODEC"
11083e8c45f5SAnders Roxell	depends on SND_SOC_I2C_AND_SPI
11090f68c396SAlexander Shiyan	select REGMAP_I2C if I2C
11100f68c396SAlexander Shiyan	select REGMAP_SPI if SPI_MASTER
11110f68c396SAlexander Shiyan
1112e40da86aSTim Howe# Cirrus Logic CS4349 HiFi DAC
1113e40da86aSTim Howeconfig SND_SOC_CS4349
1114e40da86aSTim Howe	tristate "Cirrus Logic CS4349 CODEC"
1115e40da86aSTim Howe	depends on I2C
1116e40da86aSTim Howe
11179cba2d6aSRichard Fitzgeraldconfig SND_SOC_CS47L15
11189cba2d6aSRichard Fitzgerald	tristate
1119ec29170cSCharles Keepax	depends on MFD_CS47L15
11209cba2d6aSRichard Fitzgerald
11216610550cSRichard Fitzgeraldconfig SND_SOC_CS47L24
11226610550cSRichard Fitzgerald	tristate
112333d55070SHans de Goede	depends on MFD_CS47L24 && MFD_ARIZONA
1124e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
11256610550cSRichard Fitzgerald
1126e6a2b5c0SRichard Fitzgeraldconfig SND_SOC_CS47L35
1127e6a2b5c0SRichard Fitzgerald	tristate
1128ec29170cSCharles Keepax	depends on MFD_CS47L35
1129e6a2b5c0SRichard Fitzgerald
113095a9049bSRichard Fitzgeraldconfig SND_SOC_CS47L85
113195a9049bSRichard Fitzgerald	tristate
1132ec29170cSCharles Keepax	depends on MFD_CS47L85
113395a9049bSRichard Fitzgerald
1134f1572a44SRichard Fitzgeraldconfig SND_SOC_CS47L90
1135f1572a44SRichard Fitzgerald	tristate
1136ec29170cSCharles Keepax	depends on MFD_CS47L90
1137f1572a44SRichard Fitzgerald
11386535e831SStuart Hendersonconfig SND_SOC_CS47L92
11396535e831SStuart Henderson	tristate
1140ec29170cSCharles Keepax	depends on MFD_CS47L92
11416535e831SStuart Henderson
1142e2bcbf99SRichard Fitzgeraldconfig SND_SOC_CS48L32
1143e2bcbf99SRichard Fitzgerald	tristate "Cirrus Logic CS48L32 audio DSP"
1144e2bcbf99SRichard Fitzgerald	depends on SPI_MASTER
1145e2bcbf99SRichard Fitzgerald	select REGMAP_SPI
1146e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
1147e2bcbf99SRichard Fitzgerald	help
1148e2bcbf99SRichard Fitzgerald	  Build the codec driver for the Cirrus Logic CS48L32 audio DSP.
1149e2bcbf99SRichard Fitzgerald
1150de9b1214SNicolin Chen# Cirrus Logic Quad-Channel ADC
1151de9b1214SNicolin Chenconfig SND_SOC_CS53L30
1152de9b1214SNicolin Chen	tristate "Cirrus Logic CS53L30 CODEC"
1153de9b1214SNicolin Chen	depends on I2C
1154de9b1214SNicolin Chen
11552884c291SPaul Handriganconfig SND_SOC_CS530X
11562884c291SPaul Handrigan	tristate
11572884c291SPaul Handrigan
11582884c291SPaul Handriganconfig SND_SOC_CS530X_I2C
11592884c291SPaul Handrigan	tristate "Cirrus Logic CS530x ADCs (I2C)"
11602884c291SPaul Handrigan	depends on I2C
11612884c291SPaul Handrigan	select REGMAP
11622884c291SPaul Handrigan	select REGMAP_I2C
11632884c291SPaul Handrigan	select SND_SOC_CS530X
11642884c291SPaul Handrigan	help
11652884c291SPaul Handrigan	  Enable support for Cirrus Logic CS530X ADCs
11662884c291SPaul Handrigan	  with I2C control.
11672884c291SPaul Handrigan
1168e7434adfSVitaly Rodionovconfig SND_SOC_CS530X_SPI
1169e7434adfSVitaly Rodionov	tristate "Cirrus Logic CS530x ADCs (SPI)"
1170e7434adfSVitaly Rodionov	depends on SPI_MASTER
1171e7434adfSVitaly Rodionov	select REGMAP_SPI
1172e7434adfSVitaly Rodionov	select SND_SOC_CS530X
1173e7434adfSVitaly Rodionov	help
1174e7434adfSVitaly Rodionov	  Enable support for Cirrus Logic CS530X ADCs
1175e7434adfSVitaly Rodionov	  with SPI control.
1176e7434adfSVitaly Rodionov
1177459dc352SJanusz Krzysztofikconfig SND_SOC_CX20442
1178459dc352SJanusz Krzysztofik	tristate
11794f73bc4dSJoe Millenbach	depends on TTY
1180459dc352SJanusz Krzysztofik
1181a497a436SSimon Hoconfig SND_SOC_CX2072X
1182a497a436SSimon Ho	tristate "Conexant CX2072X CODEC"
1183a497a436SSimon Ho	depends on I2C
1184a497a436SSimon Ho	help
1185a497a436SSimon Ho	  Enable support for Conexant CX20721 and CX20723 codec chips.
1186a497a436SSimon Ho
11873b097d64SLars-Peter Clausenconfig SND_SOC_JZ4740_CODEC
1188bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1189e6825baeSPaul Cercueil	depends on OF
1190dd1b18abSLars-Peter Clausen	select REGMAP_MMIO
1191edcd3ed1SPaul Cercueil	tristate "Ingenic JZ4740 internal CODEC"
1192edcd3ed1SPaul Cercueil	help
1193edcd3ed1SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4740 SoC
1194edcd3ed1SPaul Cercueil	  from Ingenic.
1195edcd3ed1SPaul Cercueil
1196edcd3ed1SPaul Cercueil	  This driver can also be built as a module. If so, the module
1197edcd3ed1SPaul Cercueil	  will be called snd-soc-jz4740-codec.
11983b097d64SLars-Peter Clausen
1199e9d97b05SPaul Cercueilconfig SND_SOC_JZ4725B_CODEC
1200bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1201e6825baeSPaul Cercueil	depends on OF
1202e9d97b05SPaul Cercueil	select REGMAP
1203e9d97b05SPaul Cercueil	tristate "Ingenic JZ4725B internal CODEC"
1204e9d97b05SPaul Cercueil	help
1205e9d97b05SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4725B SoC
1206e9d97b05SPaul Cercueil	  from Ingenic.
1207e9d97b05SPaul Cercueil
1208e9d97b05SPaul Cercueil	  This driver can also be built as a module. If so, the module
1209e9d97b05SPaul Cercueil	  will be called snd-soc-jz4725b-codec.
1210e9d97b05SPaul Cercueil
1211d9cd22e9SChristophe Branchereauconfig SND_SOC_JZ4760_CODEC
1212d9cd22e9SChristophe Branchereau	depends on MACH_INGENIC || COMPILE_TEST
1213d9cd22e9SChristophe Branchereau	depends on OF
1214d9cd22e9SChristophe Branchereau	select REGMAP
1215d9cd22e9SChristophe Branchereau	tristate "Ingenic JZ4760 internal CODEC"
1216d9cd22e9SChristophe Branchereau	help
1217d9cd22e9SChristophe Branchereau	  Enable support for the internal CODEC found in the JZ4760 SoC
1218d9cd22e9SChristophe Branchereau	  from Ingenic.
1219d9cd22e9SChristophe Branchereau
1220d9cd22e9SChristophe Branchereau	  This driver can also be built as a module. If so, the module
1221d9cd22e9SChristophe Branchereau	  will be called snd-soc-jz4760-codec.
1222d9cd22e9SChristophe Branchereau
12232159a681SPaul Cercueilconfig SND_SOC_JZ4770_CODEC
1224bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1225e6825baeSPaul Cercueil	depends on OF
12262159a681SPaul Cercueil	select REGMAP
12272159a681SPaul Cercueil	tristate "Ingenic JZ4770 internal CODEC"
12282159a681SPaul Cercueil	help
12292159a681SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4770 SoC
12302159a681SPaul Cercueil	  from Ingenic.
12312159a681SPaul Cercueil
12322159a681SPaul Cercueil	  This driver can also be built as a module. If so, the module
12332159a681SPaul Cercueil	  will be called snd-soc-jz4770-codec.
12342159a681SPaul Cercueil
1235b4541665SMark Brownconfig SND_SOC_DA7210
1236b4541665SMark Brown	tristate
1237c1c050eeSWei Li	depends on SND_SOC_I2C_AND_SPI
1238b4541665SMark Brown
1239ef5c2ebaSAdam Thomsonconfig SND_SOC_DA7213
124036da6763SSebastian Reichel	tristate "Dialog DA7213 CODEC"
124136da6763SSebastian Reichel	depends on I2C
1242ef5c2ebaSAdam Thomson
12434d50934aSAdam Thomsonconfig SND_SOC_DA7218
12444d50934aSAdam Thomson	tristate
1245ce0c97f8SGeert Uytterhoeven	depends on I2C
12464d50934aSAdam Thomson
12476d817c0eSAdam Thomsonconfig SND_SOC_DA7219
12486d817c0eSAdam Thomson	tristate
1249ce0c97f8SGeert Uytterhoeven	depends on I2C
12506d817c0eSAdam Thomson
125148e27874SAdam Thomsonconfig SND_SOC_DA732X
125248e27874SAdam Thomson	tristate
1253ce0c97f8SGeert Uytterhoeven	depends on I2C
125448e27874SAdam Thomson
12559911f7f7SAshish Chavanconfig SND_SOC_DA9055
12569911f7f7SAshish Chavan	tristate
1257ce0c97f8SGeert Uytterhoeven	depends on I2C
12589911f7f7SAshish Chavan
1259a710770eSDavid Lambertconfig SND_SOC_DMIC
126026bcf1c3SJerome Brunet	tristate "Generic Digital Microphone CODEC"
126126bcf1c3SJerome Brunet	help
126226bcf1c3SJerome Brunet	  Enable support for the Generic Digital Microphone CODEC.
126326bcf1c3SJerome Brunet	  Select this if your sound card has DMICs.
1264a710770eSDavid Lambert
126509184118SJyri Sarhaconfig SND_SOC_HDMI_CODEC
126609184118SJyri Sarha	tristate
126709184118SJyri Sarha	select SND_PCM_ELD
126809184118SJyri Sarha	select SND_PCM_IEC958
12696de7df8dSArnd Bergmann	select HDMI
127009184118SJyri Sarha
12719000b59dSJerome Brunetconfig SND_SOC_ES7134
12729000b59dSJerome Brunet	tristate "Everest Semi ES7134 CODEC"
12739000b59dSJerome Brunet
12745f7bdc46SJerome Brunetconfig SND_SOC_ES7241
12755f7bdc46SJerome Brunet	tristate "Everest Semi ES7241 CODEC"
12765f7bdc46SJerome Brunet
12779c8bec3bSPierre-Louis Bossartconfig SND_SOC_ES83XX_DSM_COMMON
12789c8bec3bSPierre-Louis Bossart	depends on ACPI
12799c8bec3bSPierre-Louis Bossart	tristate
12809c8bec3bSPierre-Louis Bossart
1281baf98991SMatteo Martelliconfig SND_SOC_ES8311
1282baf98991SMatteo Martelli	tristate "Everest Semi ES8311 CODEC"
1283baf98991SMatteo Martelli	depends on I2C
1284baf98991SMatteo Martelli
1285b8b88b70SDaniel Drakeconfig SND_SOC_ES8316
1286b8b88b70SDaniel Drake	tristate "Everest Semi ES8316 CODEC"
1287664d00d1SArnd Bergmann	depends on I2C
1288b8b88b70SDaniel Drake
1289b97391a6SBinbin Zhouconfig SND_SOC_ES8323
1290b97391a6SBinbin Zhou	tristate "Everest Semi ES8323 CODEC"
1291b97391a6SBinbin Zhou	depends on I2C
1292b97391a6SBinbin Zhou
12935c439937SZhu Ningconfig SND_SOC_ES8326
12945c439937SZhu Ning	tristate "Everest Semi ES8326 CODEC"
12955c439937SZhu Ning	depends on I2C
12965c439937SZhu Ning
1297567e4f98SSean Crossconfig SND_SOC_ES8328
1298245c5c7bSArnd Bergmann	tristate
1299567e4f98SSean Cross
1300567e4f98SSean Crossconfig SND_SOC_ES8328_I2C
1301245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (I2C)"
1302245c5c7bSArnd Bergmann	depends on I2C
1303567e4f98SSean Cross	select SND_SOC_ES8328
1304567e4f98SSean Cross
1305567e4f98SSean Crossconfig SND_SOC_ES8328_SPI
1306245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (SPI)"
1307245c5c7bSArnd Bergmann	depends on SPI_MASTER
1308567e4f98SSean Cross	select SND_SOC_ES8328
1309567e4f98SSean Cross
1310de2b3119SZhang Yiconfig SND_SOC_ES8375
1311de2b3119SZhang Yi	tristate "Everest Semi ES8375 CODEC"
1312de2b3119SZhang Yi	depends on I2C
1313de2b3119SZhang Yi
13140319c268SZhang Yiconfig SND_SOC_ES8389
13150319c268SZhang Yi	tristate "Everest Semi ES8389 CODEC"
13160319c268SZhang Yi	depends on I2C
13170319c268SZhang Yi
13185d9cb740SZhang Yiconfig SND_SOC_ES9356
13195d9cb740SZhang Yi	tristate "Everest Semi ES9356 CODEC SDW"
132074baa9dfSNathan Chancellor	depends on SND_SOC_SDCA
13215d9cb740SZhang Yi	depends on SOUNDWIRE
13225d9cb740SZhang Yi	select REGMAP_SOUNDWIRE
13235d9cb740SZhang Yi	select REGMAP_SOUNDWIRE_MBQ
13245d9cb740SZhang Yi
1325a9a0303dSHerve Codinaconfig SND_SOC_FRAMER
1326a9a0303dSHerve Codina	tristate "Framer codec"
1327a9a0303dSHerve Codina	depends on GENERIC_FRAMER
1328a9a0303dSHerve Codina	help
1329a9a0303dSHerve Codina	  Enable support for the framer codec.
1330a9a0303dSHerve Codina	  The framer codec uses the generic framer infrastructure to transport
1331a9a0303dSHerve Codina	  some audio data over an analog E1/T1/J1 line.
1332a9a0303dSHerve Codina	  This codec allows to use some of the time slots available on the TDM
1333a9a0303dSHerve Codina	  bus on which the framer is connected to transport the audio data.
1334a9a0303dSHerve Codina
1335a9a0303dSHerve Codina	  To compile this driver as a module, choose M here: the module
1336a9a0303dSHerve Codina	  will be called snd-soc-framer.
1337a9a0303dSHerve Codina
1338e0bbbcacSNick Liconfig SND_SOC_FS_AMP_LIB
1339e0bbbcacSNick Li	select CRC16
1340e0bbbcacSNick Li	tristate
1341a9a0303dSHerve Codina
134275611770SNick Liconfig SND_SOC_FS210X
134375611770SNick Li	tristate 'FourSemi FS2104/5S digital audio amplifier'
134475611770SNick Li	depends on I2C
134575611770SNick Li	select GPIOLIB
134675611770SNick Li	select REGMAP_I2C
134775611770SNick Li	select SND_SOC_FS_AMP_LIB
134875611770SNick Li	help
134975611770SNick Li	  Enable support for FourSemi FS2104/5S digital audio amplifier.
135075611770SNick Li	  The FS2104/5S are Inductor-Less, Stereo, Closed-Loop,
135175611770SNick Li	  Digital Input Class-D Power Amplifiers with Enhanced Signal Processing.
135275611770SNick Li	  The amplifiers support I2C and I2S/TDM.
1353b5df2a7dSCezary Rojewski
1354b5df2a7dSCezary Rojewskiconfig SND_SOC_GTM601
1355b5df2a7dSCezary Rojewski	tristate 'GTM601 UMTS modem audio codec'
1356b5df2a7dSCezary Rojewski
1357b5df2a7dSCezary Rojewskiconfig SND_SOC_HDAC_HDMI
1358b5df2a7dSCezary Rojewski	tristate
1359b5df2a7dSCezary Rojewski	select SND_HDA_EXT_CORE
1360b5df2a7dSCezary Rojewski	select SND_PCM_ELD
1361b5df2a7dSCezary Rojewski	select HDMI
13623b7ce997SRicard Wanderlof
136343d2c498SAngelo Dureghelloconfig SND_SOC_HDAC_HDA
13643b7ce997SRicard Wanderlof	tristate
1365e5116699SHerve Codina	select SND_HDA
1366e5116699SHerve Codina
1367e5116699SHerve Codinaconfig SND_SOC_HDA
1368e5116699SHerve Codina	tristate "HD-Audio codec driver"
1369e5116699SHerve Codina	select SND_HDA_EXT_CORE
1370e5116699SHerve Codina	select SND_HDA
1371e5116699SHerve Codina	help
1372e5116699SHerve Codina	  This enables HD-Audio codec support in ASoC subsystem. Compared
1373e5116699SHerve Codina	  to SND_SOC_HDAC_HDA, driver's behavior is identical to HD-Audio
1374e5116699SHerve Codina	  legacy solution - including the dynamic resource allocation
1375decbc00eSZhengShunQian	  based on actual codec capabilities.
1376decbc00eSZhengShunQian
13777315917fSAntonio Ospiteconfig SND_SOC_ICS43432
1378decbc00eSZhengShunQian	tristate "ICS43423 and compatible i2s microphones"
13792f989f7eSM R Swami Reddy
13802f989f7eSM R Swami Reddyconfig SND_SOC_IDT821034
1381ce0c97f8SGeert Uytterhoeven	tristate "Renesas IDT821034 quad PCM codec"
13822f989f7eSM R Swami Reddy	depends on SPI
1383dbf7a733SM R Swami Reddy	help
1384dbf7a733SM R Swami Reddy	  Enable support for the Renesas IDT821034 quad PCM with
1385ce0c97f8SGeert Uytterhoeven	  programmable gain codec.
1386dbf7a733SM R Swami Reddy
138716123412SPiotr Stankiewicz	  To compile this driver as a module, choose M here: the module
138816123412SPiotr Stankiewicz	  will be called snd-soc-idt821034.
13895b7f4e5dSKrzysztof Kozlowski
139016123412SPiotr Stankiewiczconfig SND_SOC_INNO_RK3036
139116123412SPiotr Stankiewicz	tristate "Inno codec driver for RK3036 SoC"
13929fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
1393e86e1244SMark Brown	select REGMAP_MMIO
139482a5a936SPeter Hsiang
139582a5a936SPeter Hsiangconfig SND_SOC_ISABELLE
139682a5a936SPeter Hsiang	tristate
13970e45cab6SChristian Glindkamp	depends on I2C
13980e45cab6SChristian Glindkamp
13990e45cab6SChristian Glindkampconfig SND_SOC_LM49453
14001c0090c2SHugo Villeneuve	tristate
14011c0090c2SHugo Villeneuve	depends on I2C
140283f7cbc4SKuninori Morimoto
140316123412SPiotr Stankiewiczconfig SND_SOC_LOCHNAGAR_SC
140416123412SPiotr Stankiewicz	tristate "Lochnagar Sound Card"
140516123412SPiotr Stankiewicz	depends on MFD_LOCHNAGAR || COMPILE_TEST
140616123412SPiotr Stankiewicz	help
140716123412SPiotr Stankiewicz	  This driver support the sound card functionality of the Cirrus
140816123412SPiotr Stankiewicz	  Logic Lochnagar audio development board.
140916123412SPiotr Stankiewicz
14102735b683SRichard Fitzgeraldconfig SND_SOC_MADERA
14112735b683SRichard Fitzgerald	tristate
1412e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
14139cba2d6aSRichard Fitzgerald	default y if SND_SOC_CS47L15=y
1414e6a2b5c0SRichard Fitzgerald	default y if SND_SOC_CS47L35=y
141595a9049bSRichard Fitzgerald	default y if SND_SOC_CS47L85=y
1416f1572a44SRichard Fitzgerald	default y if SND_SOC_CS47L90=y
14176535e831SStuart Henderson	default y if SND_SOC_CS47L92=y
14189cba2d6aSRichard Fitzgerald	default m if SND_SOC_CS47L15=m
1419e6a2b5c0SRichard Fitzgerald	default m if SND_SOC_CS47L35=m
142095a9049bSRichard Fitzgerald	default m if SND_SOC_CS47L85=m
1421f1572a44SRichard Fitzgerald	default m if SND_SOC_CS47L90=m
14226535e831SStuart Henderson	default m if SND_SOC_CS47L92=m
14232735b683SRichard Fitzgerald
1424be461ba8SChaithrika U Sconfig SND_SOC_MAX98088
142524ae67c5SMarco Felsch	tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
14269641faa2SArnd Bergmann	depends on I2C
14271c0090c2SHugo Villeneuve
142883f7cbc4SKuninori Morimotoconfig SND_SOC_MAX98090
14299e868ca1SMaxim Kochetkov	tristate "Maxim MAX98090 CODEC"
1430ce0c97f8SGeert Uytterhoeven	depends on I2C
143183f7cbc4SKuninori Morimoto
14321c0090c2SHugo Villeneuveconfig SND_SOC_MAX98095
14339b34e6ccSZeng Zhaoming	tristate
1434ce0c97f8SGeert Uytterhoeven	depends on I2C
14353e860846SMark Brown
1436af5adf12SKenneth Westfieldconfig SND_SOC_MAX98357A
143799afc8dfSMaxime Jourdan	tristate "Maxim MAX98357A CODEC"
1438af5adf12SKenneth Westfield
1439ca2cd6bcSanish kumarconfig SND_SOC_MAX98371
1440ca2cd6bcSanish kumar	tristate
1441ce0c97f8SGeert Uytterhoeven	depends on I2C
1442ca2cd6bcSanish kumar
14434c5d1469SSylwester Nawrockiconfig SND_SOC_MAX98504
14444c5d1469SSylwester Nawrocki	tristate "Maxim MAX98504 speaker amplifier"
14454c5d1469SSylwester Nawrocki	depends on I2C
14464c5d1469SSylwester Nawrocki
1447805d132dSanish kumarconfig SND_SOC_MAX9867
14483ac9ce88SLadislav Michl	tristate "Maxim MAX9867 CODEC"
14493ac9ce88SLadislav Michl	depends on I2C
1450805d132dSanish kumar
14511ff27651SAnish Kumarconfig SND_SOC_MAX98925
14521ff27651SAnish Kumar	tristate
1453ce0c97f8SGeert Uytterhoeven	depends on I2C
14541ff27651SAnish Kumar
1455a2e2876aSanish kumarconfig SND_SOC_MAX98926
1456a2e2876aSanish kumar	tristate
1457ce0c97f8SGeert Uytterhoeven	depends on I2C
1458a2e2876aSanish kumar
14597c0c2000SRyan Leeconfig SND_SOC_MAX98927
14607c0c2000SRyan Lee	tristate "Maxim Integrated MAX98927 Speaker Amplifier"
14617c0c2000SRyan Lee	depends on I2C
14627c0c2000SRyan Lee
1463f88ee76bSGeorge Songconfig SND_SOC_MAX98520
1464f88ee76bSGeorge Song	tristate "Maxim Integrated MAX98520 Speaker Amplifier"
1465f88ee76bSGeorge Song	depends on I2C
1466f88ee76bSGeorge Song	help
1467f88ee76bSGeorge Song	  Enable support for Maxim Integrated MAX98520 audio
1468f88ee76bSGeorge Song	  amplifier, which implements a tripler charge pump
1469f88ee76bSGeorge Song	  based boost converter and supports sample rates of
1470f88ee76bSGeorge Song	  8KHz to 192KHz.
1471f88ee76bSGeorge Song
1472f88ee76bSGeorge Song	  To compile this driver as a module, choose M here.
1473f88ee76bSGeorge Song
147418c0af94SRyan Leeconfig SND_SOC_MAX98363
147518c0af94SRyan Lee	tristate "Analog Devices MAX98363 Soundwire Speaker Amplifier"
147618c0af94SRyan Lee	depends on SOUNDWIRE
147718c0af94SRyan Lee	select REGMAP_SOUNDWIRE
147818c0af94SRyan Lee	help
147918c0af94SRyan Lee	  Enable support for Analog Devices MAX98363 Soundwire
148018c0af94SRyan Lee	  amplifier. MAX98363 supports the MIPI SoundWire v1.2
148118c0af94SRyan Lee	  compatible interface for audio and control data.
148218c0af94SRyan Lee	  This amplifier does not support I2C and I2S.
148318c0af94SRyan Lee
14842f3d24a1SRyan Leeconfig SND_SOC_MAX98373
1485d7ee0c72SPierre-Louis Bossart	tristate
1486d7ee0c72SPierre-Louis Bossart
1487d7ee0c72SPierre-Louis Bossartconfig SND_SOC_MAX98373_I2C
14882f3d24a1SRyan Lee	tristate "Maxim Integrated MAX98373 Speaker Amplifier"
14892f3d24a1SRyan Lee	depends on I2C
1490d7ee0c72SPierre-Louis Bossart	select SND_SOC_MAX98373
14912f3d24a1SRyan Lee
149256a5b791SRyan Leeconfig SND_SOC_MAX98373_SDW
149356a5b791SRyan Lee	tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW"
149456a5b791SRyan Lee	depends on SOUNDWIRE
149556a5b791SRyan Lee	select SND_SOC_MAX98373
149656a5b791SRyan Lee	select REGMAP_SOUNDWIRE
149756a5b791SRyan Lee	help
149856a5b791SRyan Lee	  Enable support for Maxim Integrated MAX98373 Soundwire
149956a5b791SRyan Lee	  amplifier. MAX98373 supports either the MIPI SoundWire
150056a5b791SRyan Lee	  compatible interface for audio and control data, or
150156a5b791SRyan Lee	  the PCM interface for audio data and a standard I2C
150256a5b791SRyan Lee	  interface for control data. Select this if MAX98373 is
150356a5b791SRyan Lee	  connected via soundwire.
150456a5b791SRyan Lee
15056a8e1d46SRyan Leeconfig SND_SOC_MAX98388
15066a8e1d46SRyan Lee	tristate "Analog Devices MAX98388 Speaker Amplifier"
15076a8e1d46SRyan Lee	depends on I2C
15086a8e1d46SRyan Lee	help
15096a8e1d46SRyan Lee	  Enable support for Analog Devices MAX98388 audio
15106a8e1d46SRyan Lee	  amplifier. The device provides a PCM interface for
15116a8e1d46SRyan Lee	  audio data and a standard I2C interface for control
15126a8e1d46SRyan Lee	  data communication.
15136a8e1d46SRyan Lee
1514a6e3f4f3SSteve Leeconfig SND_SOC_MAX98390
1515a6e3f4f3SSteve Lee	tristate "Maxim Integrated MAX98390 Speaker Amplifier"
1516a6e3f4f3SSteve Lee	depends on I2C
1517a6e3f4f3SSteve Lee
1518b5858113SRyan Leeconfig SND_SOC_MAX98396
1519b5858113SRyan Lee	tristate "Analog Devices MAX98396 Speaker Amplifier"
1520b5858113SRyan Lee	depends on I2C
1521b5858113SRyan Lee	help
1522b5858113SRyan Lee	  Enable support for Analog Devices MAX98396 audio
1523b5858113SRyan Lee	  amplifier. The device provides a PCM interface for
1524b5858113SRyan Lee	  audio data and a standard I2C interface for control
1525b5858113SRyan Lee	  data communication.
1526b5858113SRyan Lee
15273e860846SMark Brownconfig SND_SOC_MAX9850
1528c1f27190SArun KS	tristate
1529ce0c97f8SGeert Uytterhoeven	depends on I2C
15309b34e6ccSZeng Zhaoming
15313b2af7f7SPeter Rosinconfig SND_SOC_MAX9860
15323b2af7f7SPeter Rosin	tristate "Maxim MAX9860 Mono Audio Voice Codec"
15333b2af7f7SPeter Rosin	depends on I2C
15343b2af7f7SPeter Rosin	select REGMAP_I2C
15353b2af7f7SPeter Rosin
1536585e881eSSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_ANALOG
1537585e881eSSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD Analog Codec"
1538585e881eSSrinivas Kandagatla	depends on SPMI || COMPILE_TEST
1539585e881eSSrinivas Kandagatla
1540150db8c5SSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_DIGITAL
1541150db8c5SSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
15425b86fa6dSAxel Lin	select REGMAP_MMIO
1543150db8c5SSrinivas Kandagatla
154495169d08SMarek Beliskoconfig SND_SOC_PCM1681
15451291e141SMark Brown	tristate "Texas Instruments PCM1681 CODEC"
15461291e141SMark Brown	depends on I2C
154795169d08SMarek Belisko
15481217b573SAlvin Šipragaconfig SND_SOC_PCM1754
15491217b573SAlvin Šipraga	tristate "Texas Instruments PCM1754 CODEC"
15501217b573SAlvin Šipraga	depends on GPIOLIB
15511217b573SAlvin Šipraga
15524ae340d1SMylène Josserandconfig SND_SOC_PCM1789
15534ae340d1SMylène Josserand	tristate
15544ae340d1SMylène Josserand
15554ae340d1SMylène Josserandconfig SND_SOC_PCM1789_I2C
15564ae340d1SMylène Josserand	tristate "Texas Instruments PCM1789 CODEC (I2C)"
15574ae340d1SMylène Josserand	depends on I2C
15584ae340d1SMylène Josserand	select SND_SOC_PCM1789
15594ae340d1SMylène Josserand	help
15604ae340d1SMylène Josserand	  Enable support for Texas Instruments PCM1789 CODEC.
15614ae340d1SMylène Josserand	  Select this if your PCM1789 is connected via an I2C bus.
15624ae340d1SMylène Josserand
15630471cd93SMichael Trimarchiconfig SND_SOC_PCM179X
15641b347b68SJacob Siverskog	tristate
15651b347b68SJacob Siverskog
156670e3e56eSJacob Siverskogconfig SND_SOC_PCM179X_I2C
156770e3e56eSJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (I2C)"
156870e3e56eSJacob Siverskog	depends on I2C
156970e3e56eSJacob Siverskog	select SND_SOC_PCM179X
157070e3e56eSJacob Siverskog	help
157170e3e56eSJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
157270e3e56eSJacob Siverskog	  Select this if your PCM179x is connected via an I2C bus.
157370e3e56eSJacob Siverskog
15741b347b68SJacob Siverskogconfig SND_SOC_PCM179X_SPI
15751b347b68SJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (SPI)"
15761291e141SMark Brown	depends on SPI_MASTER
15771b347b68SJacob Siverskog	select SND_SOC_PCM179X
15781b347b68SJacob Siverskog	help
15791b347b68SJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
15801b347b68SJacob Siverskog	  Select this if your PCM179x is connected via an SPI bus.
158113b02fa0SMichael Trimarchi
1582993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X
1583993a3450SAndreas Dannenberg	tristate
1584993a3450SAndreas Dannenberg
1585993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_I2C
1586993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - I2C"
1587993a3450SAndreas Dannenberg	depends on I2C
1588993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
1589993a3450SAndreas Dannenberg	select REGMAP_I2C
1590993a3450SAndreas Dannenberg
1591993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_SPI
1592993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - SPI"
1593993a3450SAndreas Dannenberg	depends on SPI_MASTER
1594993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
1595993a3450SAndreas Dannenberg	select REGMAP_SPI
1596993a3450SAndreas Dannenberg
15973e860846SMark Brownconfig SND_SOC_PCM3008
15983e860846SMark Brown	tristate
1599c1f27190SArun KS
16006ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060
16016ee47d4aSKirill Marinushkin	tristate
16026ee47d4aSKirill Marinushkin
16036ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_I2C
16046ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - I2C"
16056ee47d4aSKirill Marinushkin	depends on I2C
16066ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
16076ee47d4aSKirill Marinushkin	select REGMAP_I2C
16086ee47d4aSKirill Marinushkin
16096ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_SPI
16106ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - SPI"
16116ee47d4aSKirill Marinushkin	depends on SPI_MASTER
16126ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
16136ee47d4aSKirill Marinushkin	select REGMAP_SPI
16146ee47d4aSKirill Marinushkin
1615a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A
1616a9b17a63SDamien.Horsley	tristate
1617a9b17a63SDamien.Horsley
1618a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_I2C
1619a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - I2C"
1620a9b17a63SDamien.Horsley	depends on I2C
1621a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
1622a9b17a63SDamien.Horsley	select REGMAP_I2C
1623a9b17a63SDamien.Horsley
1624a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_SPI
1625a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - SPI"
1626a9b17a63SDamien.Horsley	depends on SPI_MASTER
1627a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
1628a9b17a63SDamien.Horsley	select REGMAP_SPI
1629a9b17a63SDamien.Horsley
163097d3ddd7SFlorian Meierconfig SND_SOC_PCM5102A
163176b5f68bSCodrin Ciubotariu	tristate "Texas Instruments PCM5102A CODEC"
163297d3ddd7SFlorian Meier
16335a3af129SMark Brownconfig SND_SOC_PCM512x
163422066226SMark Brown	tristate
163522066226SMark Brown
163622066226SMark Brownconfig SND_SOC_PCM512x_I2C
163722066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - I2C"
163822066226SMark Brown	depends on I2C
163922066226SMark Brown	select SND_SOC_PCM512x
164022066226SMark Brown	select REGMAP_I2C
164122066226SMark Brown
164222066226SMark Brownconfig SND_SOC_PCM512x_SPI
164322066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - SPI"
164422066226SMark Brown	depends on SPI_MASTER
164522066226SMark Brown	select SND_SOC_PCM512x
164622066226SMark Brown	select REGMAP_SPI
16475a3af129SMark Brown
16486bb1b706SShenghao Dingconfig SND_SOC_PCM6240
16496bb1b706SShenghao Ding	tristate "Texas Instruments PCM6240 Family Audio chips based on I2C"
16506bb1b706SShenghao Ding	depends on I2C
16516bb1b706SShenghao Ding	help
16526bb1b706SShenghao Ding	  Enable support for Texas Instruments PCM6240 Family Audio chips.
16536bb1b706SShenghao Ding	  Note the PCM6240 driver implements a flexible and configurable
16546bb1b706SShenghao Ding	  setting for register and filter coefficients, to one, two or
16556bb1b706SShenghao Ding	  even multiple PCM6240 Family Audio chips.
16566bb1b706SShenghao Ding
1657227f609cSHerve Codinaconfig SND_SOC_PEB2466
1658227f609cSHerve Codina	tristate "Infineon PEB2466 quad PCM codec"
1659227f609cSHerve Codina	depends on SPI
1660227f609cSHerve Codina	select REGMAP_SPI
1661227f609cSHerve Codina	help
1662227f609cSHerve Codina	  Enable support for the Infineon PEB2466 quad PCM codec,
1663227f609cSHerve Codina	  also named SICOFI 4-uC.
1664227f609cSHerve Codina
1665227f609cSHerve Codina	  To compile this driver as a module, choose M here: the module
1666227f609cSHerve Codina	  will be called snd-soc-peb2466.
1667227f609cSHerve Codina
16688ad52948SAlexey Klimovconfig SND_SOC_PM4125
16698ad52948SAlexey Klimov	depends on SND_SOC_PM4125_SDW
16706951be39SSrinivas Kandagatla	select SND_SOC_WCD_COMMON
16718ad52948SAlexey Klimov	tristate
16728ad52948SAlexey Klimov	depends on SOUNDWIRE || !SOUNDWIRE
16738ad52948SAlexey Klimov
16748ad52948SAlexey Klimovconfig SND_SOC_PM4125_SDW
16758ad52948SAlexey Klimov	tristate "PM4125 audio codec - SDW"
16768ad52948SAlexey Klimov	select SND_SOC_PM4125
16778ad52948SAlexey Klimov	select SND_SOC_WCD_MBHC
16788ad52948SAlexey Klimov	select REGMAP_IRQ
16796951be39SSrinivas Kandagatla	select SND_SOC_WCD_COMMON
16808ad52948SAlexey Klimov	depends on SOUNDWIRE
16818ad52948SAlexey Klimov	select REGMAP_SOUNDWIRE
16828ad52948SAlexey Klimov	help
16838ad52948SAlexey Klimov	  The PMIC PM4125 has an in-built audio codec IC used with SoCs
16848ad52948SAlexey Klimov	  like QCM2290, and it is connected via soundwire and SPMI.
16858ad52948SAlexey Klimov	  To compile this codec driver say Y or m.
16868ad52948SAlexey Klimov
16874ed0915fSLuca Ceresoliconfig SND_SOC_RK3308
16884ed0915fSLuca Ceresoli	tristate "Rockchip RK3308 audio CODEC"
168903246adeSLuca Ceresoli	depends on ARM64 || COMPILE_TEST
16909fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
16914ed0915fSLuca Ceresoli	select REGMAP_MMIO
16924ed0915fSLuca Ceresoli	help
16934ed0915fSLuca Ceresoli	  This is a device driver for the audio codec embedded in the
16944ed0915fSLuca Ceresoli	  Rockchip RK3308 SoC.
16954ed0915fSLuca Ceresoli
16964ed0915fSLuca Ceresoli	  It has 8 24-bit ADCs and 2 24-bit DACs. The maximum supported
16974ed0915fSLuca Ceresoli	  sampling rate is 192 kHz.
16984ed0915fSLuca Ceresoli
1699c3275903SKatsuhiro Suzukiconfig SND_SOC_RK3328
1700c3275903SKatsuhiro Suzuki	tristate "Rockchip RK3328 audio CODEC"
17019fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
1702c3275903SKatsuhiro Suzuki	select REGMAP_MMIO
1703c3275903SKatsuhiro Suzuki
17040d6a04daSChris Morganconfig SND_SOC_RK817
17050d6a04daSChris Morgan	tristate "Rockchip RK817 audio CODEC"
1706c20e8c5bSSebastian Reichel	depends on MFD_RK8XX || COMPILE_TEST
17070d6a04daSChris Morgan
170849ef7925SOder Chiouconfig SND_SOC_RL6231
170949ef7925SOder Chiou	tristate
17104a6180eaSOder Chiou	default y if SND_SOC_RT5514=y
1711b1d15059SBard Liao	default y if SND_SOC_RT5616=y
171249ef7925SOder Chiou	default y if SND_SOC_RT5640=y
171349ef7925SOder Chiou	default y if SND_SOC_RT5645=y
171449ef7925SOder Chiou	default y if SND_SOC_RT5651=y
1715d3cb2de2SBard Liao	default y if SND_SOC_RT5659=y
17162b26dd4cSOder Chiou	default y if SND_SOC_RT5660=y
1717df7c5216SBard Liao	default y if SND_SOC_RT5663=y
1718c7f87f96SAxel Lin	default y if SND_SOC_RT5665=y
1719d59fb285SBard Liao	default y if SND_SOC_RT5668=y
17205e8351deSBard Liao	default y if SND_SOC_RT5670=y
172130f14b43SAxel Lin	default y if SND_SOC_RT5677=y
17220ddce71cSBard Liao	default y if SND_SOC_RT5682=y
1723d6e65bb7SShuming Fan	default y if SND_SOC_RT1011=y
1724df310074SJack Yu	default y if SND_SOC_RT1015=y
1725c07152d4STzung-Bi Shih	default y if SND_SOC_RT1015P=y
17267ec79d38SJack Yu	default y if SND_SOC_RT1019=y
172729bc643dSShuming Fan	default y if SND_SOC_RT1305=y
17282b9def8cSDerek Fang	default y if SND_SOC_RT1308=y
17294a6180eaSOder Chiou	default m if SND_SOC_RT5514=m
1730b1d15059SBard Liao	default m if SND_SOC_RT5616=m
173149ef7925SOder Chiou	default m if SND_SOC_RT5640=m
173249ef7925SOder Chiou	default m if SND_SOC_RT5645=m
173349ef7925SOder Chiou	default m if SND_SOC_RT5651=m
1734d3cb2de2SBard Liao	default m if SND_SOC_RT5659=m
17352b26dd4cSOder Chiou	default m if SND_SOC_RT5660=m
1736df7c5216SBard Liao	default m if SND_SOC_RT5663=m
1737c7f87f96SAxel Lin	default m if SND_SOC_RT5665=m
1738d59fb285SBard Liao	default m if SND_SOC_RT5668=m
17395e8351deSBard Liao	default m if SND_SOC_RT5670=m
174030f14b43SAxel Lin	default m if SND_SOC_RT5677=m
17410ddce71cSBard Liao	default m if SND_SOC_RT5682=m
1742d6e65bb7SShuming Fan	default m if SND_SOC_RT1011=m
1743df310074SJack Yu	default m if SND_SOC_RT1015=m
1744c07152d4STzung-Bi Shih	default m if SND_SOC_RT1015P=m
17457ec79d38SJack Yu	default m if SND_SOC_RT1019=m
174629bc643dSShuming Fan	default m if SND_SOC_RT1305=m
17472b9def8cSDerek Fang	default m if SND_SOC_RT1308=m
174849ef7925SOder Chiou
1749bbca8e70SJack Yuconfig SND_SOC_RT_SDW_COMMON
1750bbca8e70SJack Yu	tristate
1751bbca8e70SJack Yu	default y if SND_SOC_RT721_SDCA_SDW=y
1752bbca8e70SJack Yu	default m if SND_SOC_RT721_SDCA_SDW=m
1753bbca8e70SJack Yu
1754bc08f96bSOder Chiouconfig SND_SOC_RL6347A
1755bc08f96bSOder Chiou	tristate
1756c7e79b2bSBard Liao	default y if SND_SOC_RT274=y
1757bc08f96bSOder Chiou	default y if SND_SOC_RT286=y
17586adcafaeSBard Liao	default y if SND_SOC_RT298=y
1759c7e79b2bSBard Liao	default m if SND_SOC_RT274=m
1760bc08f96bSOder Chiou	default m if SND_SOC_RT286=m
17616adcafaeSBard Liao	default m if SND_SOC_RT298=m
1762bc08f96bSOder Chiou
1763c7e79b2bSBard Liaoconfig SND_SOC_RT274
1764c7e79b2bSBard Liao	tristate
1765c7e79b2bSBard Liao	depends on I2C
1766c7e79b2bSBard Liao
176707cf7cbaSBard Liaoconfig SND_SOC_RT286
176807cf7cbaSBard Liao	tristate
1769a577483bSBard Liao	depends on I2C
177007cf7cbaSBard Liao
17716adcafaeSBard Liaoconfig SND_SOC_RT298
17726adcafaeSBard Liao	tristate
17736adcafaeSBard Liao	depends on I2C
17746adcafaeSBard Liao
1775d6e65bb7SShuming Fanconfig SND_SOC_RT1011
1776d6e65bb7SShuming Fan	tristate
1777ce0c97f8SGeert Uytterhoeven	depends on I2C
1778d6e65bb7SShuming Fan
1779df310074SJack Yuconfig SND_SOC_RT1015
1780df310074SJack Yu	tristate
1781ce0c97f8SGeert Uytterhoeven	depends on I2C
1782df310074SJack Yu
1783c07152d4STzung-Bi Shihconfig SND_SOC_RT1015P
1784c07152d4STzung-Bi Shih	tristate
1785c07152d4STzung-Bi Shih
1786953b1388SStephen Kittconfig SND_SOC_RT1016
1787953b1388SStephen Kitt	tristate
1788953b1388SStephen Kitt	depends on I2C
1789953b1388SStephen Kitt
17902b7aecd5SDerek Fangconfig SND_SOC_RT1017_SDCA_SDW
17912b7aecd5SDerek Fang	tristate "Realtek RT1017 SDCA Codec - SDW"
17922b7aecd5SDerek Fang	depends on SOUNDWIRE
17932b7aecd5SDerek Fang	select REGMAP_SOUNDWIRE
17942b7aecd5SDerek Fang
17957ec79d38SJack Yuconfig SND_SOC_RT1019
17967ec79d38SJack Yu	tristate
17977ec79d38SJack Yu	depends on I2C
17987ec79d38SJack Yu
179929bc643dSShuming Fanconfig SND_SOC_RT1305
180029bc643dSShuming Fan	tristate
1801ce0c97f8SGeert Uytterhoeven	depends on I2C
180229bc643dSShuming Fan
18032b9def8cSDerek Fangconfig SND_SOC_RT1308
18042b9def8cSDerek Fang	tristate
1805ce0c97f8SGeert Uytterhoeven	depends on I2C
18062b9def8cSDerek Fang
1807a87a6653SShuming Fanconfig SND_SOC_RT1308_SDW
1808a87a6653SShuming Fan	tristate "Realtek RT1308 Codec - SDW"
1809ce0c97f8SGeert Uytterhoeven	depends on I2C && SOUNDWIRE
1810a87a6653SShuming Fan	select REGMAP_SOUNDWIRE
1811a87a6653SShuming Fan
18122b719fd2SShuming Fanconfig SND_SOC_RT1316_SDW
18132b719fd2SShuming Fan	tristate "Realtek RT1316 Codec - SDW"
18142b719fd2SShuming Fan	depends on SOUNDWIRE
18152b719fd2SShuming Fan	select REGMAP_SOUNDWIRE
18162b719fd2SShuming Fan
1817fe1ff614SJack Yuconfig SND_SOC_RT1318
1818fe1ff614SJack Yu	tristate
1819fe1ff614SJack Yu	depends on I2C
1820fe1ff614SJack Yu
18216ad73a2bSShuming Fanconfig SND_SOC_RT1318_SDW
18226ad73a2bSShuming Fan	tristate "Realtek RT1318 Codec - SDW"
18236ad73a2bSShuming Fan	depends on SOUNDWIRE
18246ad73a2bSShuming Fan	select REGMAP_SOUNDWIRE
18256ad73a2bSShuming Fan
1826bad0a07aSShuming Fanconfig SND_SOC_RT1320_SDW
1827bad0a07aSShuming Fan	tristate "Realtek RT1320 Codec - SDW"
1828bad0a07aSShuming Fan	depends on SOUNDWIRE
1829bad0a07aSShuming Fan	select REGMAP_SOUNDWIRE
1830bad0a07aSShuming Fan	select REGMAP_SOUNDWIRE_MBQ
1831bad0a07aSShuming Fan
18324a6180eaSOder Chiouconfig SND_SOC_RT5514
1833b1d15059SBard Liao	tristate
1834ce0c97f8SGeert Uytterhoeven	depends on I2C
1835b1d15059SBard Liao
18366eebf35bSOder Chiouconfig SND_SOC_RT5514_SPI
18376eebf35bSOder Chiou	tristate
1838ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
18396eebf35bSOder Chiou
1840c5630877SArnd Bergmannconfig SND_SOC_RT5514_SPI_BUILTIN
1841c5630877SArnd Bergmann	bool # force RT5514_SPI to be built-in to avoid link errors
1842c5630877SArnd Bergmann	default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
1843c5630877SArnd Bergmann
184442073911SOder Chiouconfig SND_SOC_RT5575
184542073911SOder Chiou	tristate "Realtek ALC5575 Codec - I2C"
184642073911SOder Chiou	depends on I2C
184742073911SOder Chiou
184842073911SOder Chiouconfig SND_SOC_RT5575_SPI
18491db63f6aSArnd Bergmann	bool "Realtek ALC5575 Codec - SPI"
185042073911SOder Chiou	depends on SPI_MASTER && I2C
185142073911SOder Chiou	depends on SND_SOC_RT5575
18521db63f6aSArnd Bergmann	depends on SPI_MASTER=y || SND_SOC_RT5575=m
185342073911SOder Chiou
1854997b0520SBard Liaoconfig SND_SOC_RT5616
1855288bc356SCaesar Wang	tristate "Realtek RT5616 CODEC"
1856af139d55SArnd Bergmann	depends on I2C
1857997b0520SBard Liao
18581319b2f6SOder Chiouconfig SND_SOC_RT5631
18591319b2f6SOder Chiou	tristate "Realtek ALC5631/RT5631 CODEC"
18601319b2f6SOder Chiou	depends on I2C
186140bc18a2SBard Liao
186240bc18a2SBard Liaoconfig SND_SOC_RT5640
186308c56cabSMartin Blumenstingl	tristate "Realtek RT5640/RT5639 Codec"
1864ce0c97f8SGeert Uytterhoeven	depends on I2C
18659b34e6ccSZeng Zhaoming
186640bc18a2SBard Liaoconfig SND_SOC_RT5645
186758885264SRudi Heitbaum	tristate "Realtek RT5645/RT5650 Codec"
1868ce0c97f8SGeert Uytterhoeven	depends on I2C
18694dc69be2SVinod Koul
18704dc69be2SVinod Koulconfig SND_SOC_RT5651
18711291e141SMark Brown	tristate
1872ce0c97f8SGeert Uytterhoeven	depends on I2C
18731291e141SMark Brown
1874d3cb2de2SBard Liaoconfig SND_SOC_RT5659
1875563c2681SSameer Pujar	tristate "Realtek RT5658/RT5659 Codec"
1876ce0c97f8SGeert Uytterhoeven	depends on I2C
1877d3cb2de2SBard Liao
18782b26dd4cSOder Chiouconfig SND_SOC_RT5660
18792b26dd4cSOder Chiou	tristate
1880ce0c97f8SGeert Uytterhoeven	depends on I2C
18812b26dd4cSOder Chiou
1882c7f87f96SAxel Linconfig SND_SOC_RT5663
188333ada14aSBard Liao	tristate
1884ce0c97f8SGeert Uytterhoeven	depends on I2C
188533ada14aSBard Liao
1886c7f87f96SAxel Linconfig SND_SOC_RT5665
1887df7c5216SBard Liao	tristate
1888ce0c97f8SGeert Uytterhoeven	depends on I2C
1889df7c5216SBard Liao
1890d59fb285SBard Liaoconfig SND_SOC_RT5668
1891d59fb285SBard Liao	tristate
1892ce0c97f8SGeert Uytterhoeven	depends on I2C
1893d59fb285SBard Liao
18945e8351deSBard Liaoconfig SND_SOC_RT5670
18955e8351deSBard Liao	tristate
1896ce0c97f8SGeert Uytterhoeven	depends on I2C
18975e8351deSBard Liao
18980e826e86SOder Chiouconfig SND_SOC_RT5677
1899a5edc45dSDiogo Ivo	tristate "Realtek RT5677 Codec"
19001d0158f5SGeert Uytterhoeven	depends on I2C
1901359ff7ffSBen Zhang	select REGMAP_I2C
1902359ff7ffSBen Zhang	select REGMAP_IRQ
19030e826e86SOder Chiou
1904e29bee09SBen Zhangconfig SND_SOC_RT5677_SPI
1905e29bee09SBen Zhang	tristate
19064c121129SArnd Bergmann	default SND_SOC_RT5677 && SPI
1907e29bee09SBen Zhang
19080ddce71cSBard Liaoconfig SND_SOC_RT5682
19090ddce71cSBard Liao	tristate
1910a50067d4SArnd Bergmann
1911a50067d4SArnd Bergmannconfig SND_SOC_RT5682_I2C
1912a50067d4SArnd Bergmann	tristate
1913a50067d4SArnd Bergmann	depends on I2C
1914a50067d4SArnd Bergmann	select SND_SOC_RT5682
19150ddce71cSBard Liao
191603f6fc6dSOder Chiouconfig SND_SOC_RT5682_SDW
191703f6fc6dSOder Chiou	tristate "Realtek RT5682 Codec - SDW"
191803f6fc6dSOder Chiou	depends on SOUNDWIRE
191903f6fc6dSOder Chiou	select SND_SOC_RT5682
192003f6fc6dSOder Chiou	select REGMAP_SOUNDWIRE
192103f6fc6dSOder Chiou
1922bdd229abSDerek Fangconfig SND_SOC_RT5682S
1923bdd229abSDerek Fang	tristate
1924bdd229abSDerek Fang	depends on I2C
1925bdd229abSDerek Fang
19267d2a5f9aSShuming Fanconfig SND_SOC_RT700
19277d2a5f9aSShuming Fan	tristate
19287d2a5f9aSShuming Fan
19297d2a5f9aSShuming Fanconfig SND_SOC_RT700_SDW
19307d2a5f9aSShuming Fan	tristate "Realtek RT700 Codec - SDW"
19317d2a5f9aSShuming Fan	depends on SOUNDWIRE
19327d2a5f9aSShuming Fan	select SND_SOC_RT700
19337d2a5f9aSShuming Fan	select REGMAP_SOUNDWIRE
19347d2a5f9aSShuming Fan
1935320b8b0dSShuming Fanconfig SND_SOC_RT711
1936320b8b0dSShuming Fan	tristate
1937320b8b0dSShuming Fan
1938320b8b0dSShuming Fanconfig SND_SOC_RT711_SDW
1939320b8b0dSShuming Fan	tristate "Realtek RT711 Codec - SDW"
1940320b8b0dSShuming Fan	depends on SOUNDWIRE
1941320b8b0dSShuming Fan	select SND_SOC_RT711
1942320b8b0dSShuming Fan	select REGMAP_SOUNDWIRE
1943320b8b0dSShuming Fan
19447ad4d237SShuming Fanconfig SND_SOC_RT711_SDCA_SDW
19457ad4d237SShuming Fan	tristate "Realtek RT711 SDCA Codec - SDW"
19467ad4d237SShuming Fan	depends on SOUNDWIRE
19477ad4d237SShuming Fan	select REGMAP_SOUNDWIRE
19487ad4d237SShuming Fan	select REGMAP_SOUNDWIRE_MBQ
19497ad4d237SShuming Fan
19506c39710dSShuming Fanconfig SND_SOC_RT712_SDCA_SDW
19516c39710dSShuming Fan	tristate "Realtek RT712 SDCA Codec - SDW"
19526c39710dSShuming Fan	depends on SOUNDWIRE
19536c39710dSShuming Fan	select REGMAP_SOUNDWIRE
19546c39710dSShuming Fan	select REGMAP_SOUNDWIRE_MBQ
19556c39710dSShuming Fan
195663a51128SShuming Fanconfig SND_SOC_RT712_SDCA_DMIC_SDW
195763a51128SShuming Fan	tristate "Realtek RT712 SDCA DMIC Codec - SDW"
195863a51128SShuming Fan	depends on SOUNDWIRE
195963a51128SShuming Fan	select REGMAP_SOUNDWIRE
196063a51128SShuming Fan	select REGMAP_SOUNDWIRE_MBQ
196163a51128SShuming Fan
196286ce355cSJack Yuconfig SND_SOC_RT721_SDCA_SDW
196386ce355cSJack Yu	tristate "Realtek RT721 SDCA Codec - SDW"
196486ce355cSJack Yu	depends on SOUNDWIRE
196586ce355cSJack Yu	select REGMAP_SOUNDWIRE
196686ce355cSJack Yu	select REGMAP_SOUNDWIRE_MBQ
196786ce355cSJack Yu
19687f5d6036SJack Yuconfig SND_SOC_RT722_SDCA_SDW
19697f5d6036SJack Yu	tristate "Realtek RT722 SDCA Codec - SDW"
19707f5d6036SJack Yu	depends on SOUNDWIRE
19717f5d6036SJack Yu	select REGMAP_SOUNDWIRE
19727f5d6036SJack Yu	select REGMAP_SOUNDWIRE_MBQ
19737f5d6036SJack Yu
1974d1ede064SJack Yuconfig SND_SOC_RT715
1975d1ede064SJack Yu	tristate
1976d1ede064SJack Yu
1977d1ede064SJack Yuconfig SND_SOC_RT715_SDW
1978d1ede064SJack Yu	tristate "Realtek RT715 Codec - SDW"
1979d1ede064SJack Yu	depends on SOUNDWIRE
1980d1ede064SJack Yu	select SND_SOC_RT715
1981d1ede064SJack Yu	select REGMAP_SOUNDWIRE
1982d1ede064SJack Yu
198320d17057SJack Yuconfig SND_SOC_RT715_SDCA_SDW
198420d17057SJack Yu	tristate "Realtek RT715 SDCA Codec - SDW"
198520d17057SJack Yu	depends on SOUNDWIRE
198620d17057SJack Yu	select REGMAP_SOUNDWIRE
198720d17057SJack Yu	select REGMAP_SOUNDWIRE_MBQ
198820d17057SJack Yu
1989b50ecf58SShuming Fanconfig SND_SOC_RT766_SDCA_SDW
1990b50ecf58SShuming Fan	tristate "Realtek RT766 SDCA Codec - SDW"
1991b50ecf58SShuming Fan	depends on SOUNDWIRE
1992b50ecf58SShuming Fan	depends on SND_SOC_SDCA
1993b50ecf58SShuming Fan	select SND_SOC_SDCA_HID
1994b50ecf58SShuming Fan	select SND_SOC_SDCA_IRQ
1995b50ecf58SShuming Fan	select REGMAP_SOUNDWIRE
1996b50ecf58SShuming Fan	select REGMAP_SOUNDWIRE_MBQ
1997b50ecf58SShuming Fan
19987228d835SChiYuan Huangconfig SND_SOC_RT9120
19997228d835SChiYuan Huang	tristate "Richtek RT9120 Stereo Class-D Amplifier"
20007228d835SChiYuan Huang	depends on I2C
20017228d835SChiYuan Huang	select REGMAP_I2C
20027228d835SChiYuan Huang	help
20037228d835SChiYuan Huang	  Enable support for Richtek RT9120 20W, stereo, inductor-less,
20047228d835SChiYuan Huang	  high-efficiency Class-D audio amplifier.
20057228d835SChiYuan Huang
20068bffd24eSChiYuan Huangconfig SND_SOC_RT9123
20078bffd24eSChiYuan Huang	tristate "Richtek RT9123 Mono Class-D Amplifier"
20088bffd24eSChiYuan Huang	depends on I2C
20098bffd24eSChiYuan Huang	select REGMAP_I2C
20108bffd24eSChiYuan Huang	help
20118bffd24eSChiYuan Huang	  Enable support for the I2C control mode of Richtek RT9123 3.2W mono
20128bffd24eSChiYuan Huang	  Class-D audio amplifier.
20138bffd24eSChiYuan Huang
201438c2585cSChiYuan Huangconfig SND_SOC_RT9123P
201538c2585cSChiYuan Huang	tristate "Richtek RT9123P Mono Class-D Amplifier"
201638c2585cSChiYuan Huang	help
201738c2585cSChiYuan Huang	  Enable support for the HW control mode of Richtek RT9123P 3.2W mono
201838c2585cSChiYuan Huang	  Class-D audio amplifier.
201938c2585cSChiYuan Huang
20201f5cdb6aSChiYuan Huangconfig SND_SOC_RTQ9124
20211f5cdb6aSChiYuan Huang	tristate "Richtek RTQ9124 Mono Class-D Amplifier"
20221f5cdb6aSChiYuan Huang	depends on I2C
20231f5cdb6aSChiYuan Huang	select REGMAP
20241f5cdb6aSChiYuan Huang	help
20251f5cdb6aSChiYuan Huang	  Enable support for Richtek RTQ9124 1x30W digital input automotive
20261f5cdb6aSChiYuan Huang	  audio amplifier with current sense and real-time load diagnostics.
20271f5cdb6aSChiYuan Huang
2028736064c6SChiYuan Huangconfig SND_SOC_RTQ9128
2029736064c6SChiYuan Huang	tristate "Richtek RTQ9128 45W Digital Input Amplifier"
2030736064c6SChiYuan Huang	depends on I2C
2031736064c6SChiYuan Huang	select REGMAP
2032736064c6SChiYuan Huang	help
2033736064c6SChiYuan Huang	  Enable support for Richtek RTQ9128 digital input 4-channel
2034736064c6SChiYuan Huang	  automotive audio amplifier.  It is a ultra-low output noise,
2035736064c6SChiYuan Huang	  high-efficiency, four-channel class-D audio power amplifier
2036736064c6SChiYuan Huang	  that can deliver over 87% power efficienty at 4x75W into 4Ohm,
2037736064c6SChiYuan Huang	  25V supply in automotive applications.
2038736064c6SChiYuan Huang
2039736064c6SChiYuan Huang	  To compile this driver as a module, choose M here: the module
2040736064c6SChiYuan Huang	  will be called snd-soc-rtq9128.
2041736064c6SChiYuan Huang
204281d3d3d0SPierre-Louis Bossartconfig SND_SOC_SDW_MOCKUP
204381d3d3d0SPierre-Louis Bossart	tristate "SoundWire mockup codec"
204481d3d3d0SPierre-Louis Bossart	depends on EXPERT
204581d3d3d0SPierre-Louis Bossart	depends on SOUNDWIRE
204681d3d3d0SPierre-Louis Bossart	help
204781d3d3d0SPierre-Louis Bossart	  This option enables a SoundWire mockup codec that does not drive the
204881d3d3d0SPierre-Louis Bossart	  bus, take part in the command/command protocol or generate data on a
204981d3d3d0SPierre-Louis Bossart	  Source port.
205081d3d3d0SPierre-Louis Bossart	  This option is only intended to be used for tests on a device
205181d3d3d0SPierre-Louis Bossart	  with a connector, in combination with a bus analyzer, or to test new
205281d3d3d0SPierre-Louis Bossart	  topologies that differ from the actual hardware layout.
205381d3d3d0SPierre-Louis Bossart	  This mockup device could be totally virtual but could also be a
205481d3d3d0SPierre-Louis Bossart	  real physical one with one key restriction: it is not allowed by the
205581d3d3d0SPierre-Louis Bossart	  SoundWire specification to be configured via a sideband mechanism and
205681d3d3d0SPierre-Louis Bossart	  generate audio data for capture. However, nothing prevents such a
205781d3d3d0SPierre-Louis Bossart	  peripheral device from snooping the bus.
205881d3d3d0SPierre-Louis Bossart
2059be461ba8SChaithrika U S#Freescale sgtl5000 codec
2060330345ebSAndrey Smirnovconfig SND_SOC_SGTL5000
2061330345ebSAndrey Smirnov	tristate "Freescale SGTL5000 CODEC"
2062330345ebSAndrey Smirnov	depends on I2C
206340216ce7SLars-Peter Clausen
206440216ce7SLars-Peter Clausenconfig SND_SOC_SI476X
206540216ce7SLars-Peter Clausen	tristate
2066e399d779SArnd Bergmann	depends on MFD_SI476X_CORE
206740216ce7SLars-Peter Clausen
2068be461ba8SChaithrika U Sconfig SND_SOC_SIGMADSP
2069be461ba8SChaithrika U S	tristate
20703e860846SMark Brown	select CRC32
20713e860846SMark Brown
20726b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_I2C
20736b10998dSLars-Peter Clausen	tristate
20746b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
20756b10998dSLars-Peter Clausen
20766b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_REGMAP
20776b10998dSLars-Peter Clausen	tristate
20786b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
20796b10998dSLars-Peter Clausen
20808d881bb6SJerome Brunetconfig SND_SOC_SIMPLE_AMPLIFIER
20818d881bb6SJerome Brunet	tristate "Simple Audio Amplifier"
20828d881bb6SJerome Brunet
2083342fbb75SAlexandre Belloniconfig SND_SOC_SIMPLE_MUX
2084342fbb75SAlexandre Belloni	tristate "Simple Audio Mux"
2085805fff75SMark Brown	depends on GPIOLIB
2086342fbb75SAlexandre Belloni
208768cd394eSKiseokJoconfig SND_SOC_SMA1303
208868cd394eSKiseokJo	tristate "Iron Device SMA1303 Audio Amplifier"
208968cd394eSKiseokJo	depends on I2C
209068cd394eSKiseokJo	help
209168cd394eSKiseokJo	  Enable support for Iron Device SMA1303 Boosted Class-D amplifier
209268cd394eSKiseokJo
2093576c57e6SKiseok Joconfig SND_SOC_SMA1307
2094576c57e6SKiseok Jo	tristate "Iron Device SMA1307 Audio Amplifier"
2095576c57e6SKiseok Jo	depends on I2C
2096576c57e6SKiseok Jo	help
2097576c57e6SKiseok Jo	  Enable support for Iron Device SMA1307 boosted digital speaker
2098576c57e6SKiseok Jo	  amplifier with feedback-loop.
2099576c57e6SKiseok Jo	  If you are using a system with an SMA1307 amplifier connected
2100576c57e6SKiseok Jo	  via I2C, enable this option.
2101576c57e6SKiseok Jo
21023e860846SMark Brownconfig SND_SOC_SPDIF
21031291e141SMark Brown	tristate "S/PDIF CODEC"
21043c166c7fSJon Smirl
21054e6bedd3SMatt Flaxconfig SND_SOC_SRC4XXX_I2C
21064e6bedd3SMatt Flax	tristate "Texas Instruments SRC4XXX DIR/DIT and SRC codecs"
21074e6bedd3SMatt Flax	depends on I2C
21084e6bedd3SMatt Flax	select SND_SOC_SRC4XXX
21094e6bedd3SMatt Flax	help
21104e6bedd3SMatt Flax	  Enable support for the TI SRC4XXX family of codecs. These include the
21114e6bedd3SMatt Flax	  scr4392 which has digital receivers, transmitters, and
21124e6bedd3SMatt Flax	  a sample rate converter, including numerous ports.
21134e6bedd3SMatt Flax
21144e6bedd3SMatt Flaxconfig SND_SOC_SRC4XXX
21154e6bedd3SMatt Flax	tristate
21164e6bedd3SMatt Flax
211774f24d87SMarco Felschconfig SND_SOC_SSM2305
211874f24d87SMarco Felsch	tristate "Analog Devices SSM2305 Class-D Amplifier"
211974f24d87SMarco Felsch	help
212074f24d87SMarco Felsch	  Enable support for Analog Devices SSM2305 filterless
212174f24d87SMarco Felsch	  high-efficiency mono Class-D audio power amplifiers.
212274f24d87SMarco Felsch
2123b6b5e76bSLars-Peter Clausenconfig SND_SOC_SSM2518
21242c70ff56SLucas Stach	tristate "Analog Devices SSM2518 Class-D Amplifier"
2125ce0c97f8SGeert Uytterhoeven	depends on I2C
2126b6b5e76bSLars-Peter Clausen
21273e860846SMark Brownconfig SND_SOC_SSM2602
21283e860846SMark Brown	tristate
21293e860846SMark Brown
2130c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_SPI
2131555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - SPI"
2132555b9ee1SStefan Kristiansson	depends on SPI_MASTER
2133c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
2134555b9ee1SStefan Kristiansson	select REGMAP_SPI
2135c924dc68SLars-Peter Clausen
2136c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_I2C
2137555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - I2C"
2138555b9ee1SStefan Kristiansson	depends on I2C
2139c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
2140555b9ee1SStefan Kristiansson	select REGMAP_I2C
2141c924dc68SLars-Peter Clausen
21424ac690bbSMartin Povišerconfig SND_SOC_SSM3515
21434ac690bbSMartin Povišer	tristate "Analog Devices SSM3515 amplifier driver"
21444ac690bbSMartin Povišer	select REGMAP_I2C
21454ac690bbSMartin Povišer	depends on I2C
21464ac690bbSMartin Povišer	depends on OF
21474ac690bbSMartin Povišer
21481ee44ce0SAnatol Pomozovconfig SND_SOC_SSM4567
21491ee44ce0SAnatol Pomozov	tristate "Analog Devices ssm4567 amplifier driver support"
21501ee44ce0SAnatol Pomozov	depends on I2C
2151c1f27190SArun KS
2152c1f27190SArun KSconfig SND_SOC_STA32X
21536fad6259SThomas Niederprüm	tristate "STA326, STA328 and STA329 speaker amplifier"
21546fad6259SThomas Niederprüm	depends on I2C
2155a1be4ceaSThomas Niederprüm	select REGMAP_I2C
2156c1f27190SArun KS
21572439ea1fSSven Brandauconfig SND_SOC_STA350
21582439ea1fSSven Brandau	tristate "STA350 speaker amplifier"
21592439ea1fSSven Brandau	depends on I2C
21602439ea1fSSven Brandau
2161c1f27190SArun KSconfig SND_SOC_STA529
21623e860846SMark Brown	tristate
2163ce0c97f8SGeert Uytterhoeven	depends on I2C
21643e860846SMark Brown
21653e860846SMark Brownconfig SND_SOC_STAC9766
21663e860846SMark Brown	tristate
2167d8dd3f92SGeert Uytterhoeven	depends on SND_SOC_AC97_BUS
2168c70064b9SRandy Dunlap	select REGMAP_AC97
21693e860846SMark Brown
217032a726b2SArnaud Pouliquenconfig SND_SOC_STI_SAS
217132a726b2SArnaud Pouliquen	tristate "codec Audio support for STI SAS codec"
217232a726b2SArnaud Pouliquen
217338c89fedSNiranjan H Yconfig SND_SOC_TAC5XX2_SDW
217438c89fedSNiranjan H Y	tristate "Texas Instruments TAC5XX2 SoundWire Smart Amplifier"
217538c89fedSNiranjan H Y	depends on SOUNDWIRE
217638c89fedSNiranjan H Y	depends on SND_SOC_SDCA
217778983d82SNiranjan H Y	select REGMAP_SOUNDWIRE_MBQ
217838c89fedSNiranjan H Y	help
217938c89fedSNiranjan H Y	  This option enables support for Texas Instruments TAC5XX2 family
218038c89fedSNiranjan H Y	  of SoundWire Smart Amplifiers. This includes TAC5572, TAC5672,
218138c89fedSNiranjan H Y	  TAC5682 and TAS2883. To compile this driver as a module, choose
218238c89fedSNiranjan H Y	  M here: the module will be called snd-soc-tac5xx2.
218338c89fedSNiranjan H Y
21845df7f71dSDan Murphyconfig SND_SOC_TAS2552
21855df7f71dSDan Murphy	tristate "Texas Instruments TAS2552 Mono Audio amplifier"
21865df7f71dSDan Murphy	depends on I2C
21875df7f71dSDan Murphy
2188c173dba4SDan Murphyconfig SND_SOC_TAS2562
2189c173dba4SDan Murphy	tristate "Texas Instruments TAS2562 Mono Audio amplifier"
2190c173dba4SDan Murphy	depends on I2C
2191c173dba4SDan Murphy
2192827ed8a0SDan Murphyconfig SND_SOC_TAS2764
2193827ed8a0SDan Murphy	tristate "Texas Instruments TAS2764 Mono Audio amplifier"
2194827ed8a0SDan Murphy	depends on I2C
2195827ed8a0SDan Murphy
21961a476abcSFrank Shiconfig SND_SOC_TAS2770
21971a476abcSFrank Shi	tristate "Texas Instruments TAS2770 speaker amplifier"
21981a476abcSFrank Shi	depends on I2C
21991a476abcSFrank Shi
2200eae9f9ceSRaphael-Xuconfig SND_SOC_TAS2780
2201eae9f9ceSRaphael-Xu	tristate "Texas Instruments TAS2780 Mono Audio amplifier"
2202eae9f9ceSRaphael-Xu	depends on I2C
2203eae9f9ceSRaphael-Xu	help
2204eae9f9ceSRaphael-Xu	  Enable support for Texas Instruments TAS2780 high-efficiency
2205eae9f9ceSRaphael-Xu	  digital input mono Class-D audio power amplifiers.
2206eae9f9ceSRaphael-Xu
2207ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_COMLIB
22089fa6a693SShenghao Ding	tristate
22099fa6a693SShenghao Ding
22109fa6a693SShenghao Dingconfig SND_SOC_TAS2781_COMLIB_I2C
2211ef3bcde7SShenghao Ding	depends on I2C
2212ef3bcde7SShenghao Ding	select CRC8
2213ef3bcde7SShenghao Ding	select REGMAP_I2C
2214ef3bcde7SShenghao Ding	tristate
2215ef3bcde7SShenghao Ding
2216ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_FMWLIB
22179fa6a693SShenghao Ding	select SND_SOC_TAS2781_COMLIB
2218f0ccc717SArnd Bergmann	select CRC8
2219ef3bcde7SShenghao Ding	tristate
2220ef3bcde7SShenghao Ding	default n
2221ef3bcde7SShenghao Ding
2222ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_I2C
2223ef3bcde7SShenghao Ding	tristate "Texas Instruments TAS2781 speaker amplifier based on I2C"
2224ef3bcde7SShenghao Ding	depends on I2C
22259fa6a693SShenghao Ding	select SND_SOC_TAS2781_COMLIB_I2C
2226ef3bcde7SShenghao Ding	select SND_SOC_TAS2781_FMWLIB
2227ef3bcde7SShenghao Ding	help
2228ef3bcde7SShenghao Ding	  Enable support for Texas Instruments TAS2781 Smart Amplifier
2229ef3bcde7SShenghao Ding	  Digital input mono Class-D and DSP-inside audio power amplifiers.
2230ef3bcde7SShenghao Ding	  Note the TAS2781 driver implements a flexible and configurable
2231ef3bcde7SShenghao Ding	  algo coefficient setting, for one, two or even multiple TAS2781
2232ef3bcde7SShenghao Ding	  chips.
2233ef3bcde7SShenghao Ding
22344cc9bd8dSNiranjan H Yconfig SND_SOC_TAS2783_SDW
22354cc9bd8dSNiranjan H Y	tristate "Texas Instruments TAS2783 speaker amplifier (sdw)"
22364cc9bd8dSNiranjan H Y	depends on SOUNDWIRE
2237ca8f3611SNiranjan H Y	depends on SND_SOC_SDCA
22384cc9bd8dSNiranjan H Y	depends on EFI
22394cc9bd8dSNiranjan H Y	select REGMAP_SOUNDWIRE
22404cc9bd8dSNiranjan H Y	select REGMAP_SOUNDWIRE_MBQ
22414cc9bd8dSNiranjan H Y	select CRC32
22424cc9bd8dSNiranjan H Y	help
22434cc9bd8dSNiranjan H Y	  Enable support for Texas Instruments TAS2783A Digital input
22444cc9bd8dSNiranjan H Y	  mono Class-D and DSP-inside audio power amplifiers. TAS2783
22454cc9bd8dSNiranjan H Y	  driver implements a flexible and configurable algorithm
22464cc9bd8dSNiranjan H Y	  cofficient setting, for one, two or multiple TAS2783 chips.
22474cc9bd8dSNiranjan H Y
22483e860846SMark Brownconfig SND_SOC_TAS5086
22493e860846SMark Brown	tristate "Texas Instruments TAS5086 speaker amplifier"
22503e860846SMark Brown	depends on I2C
22513e860846SMark Brown
22523fd6e7d9SKevin Cernekeeconfig SND_SOC_TAS571X
2253f516d322SJerome Brunet	tristate "Texas Instruments TAS571x power amplifiers"
22543fd6e7d9SKevin Cernekee	depends on I2C
2255f516d322SJerome Brunet	help
2256f516d322SJerome Brunet	  Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
2257f516d322SJerome Brunet	  TAS5719 and TAS5721 power amplifiers
22583fd6e7d9SKevin Cernekee
2259bd023adaSAndreas Dannenbergconfig SND_SOC_TAS5720
2260bd023adaSAndreas Dannenberg	tristate "Texas Instruments TAS5720 Mono Audio amplifier"
2261bd023adaSAndreas Dannenberg	depends on I2C
2262bd023adaSAndreas Dannenberg	help
2263bd023adaSAndreas Dannenberg	  Enable support for Texas Instruments TAS5720L/M high-efficiency mono
2264bd023adaSAndreas Dannenberg	  Class-D audio power amplifiers.
2265bd023adaSAndreas Dannenberg
2266ec452684SDaniel Beerconfig SND_SOC_TAS5805M
2267ec452684SDaniel Beer	tristate "Texas Instruments TAS5805M speaker amplifier"
2268ec452684SDaniel Beer	depends on I2C
2269ec452684SDaniel Beer	help
2270ec452684SDaniel Beer	  Enable support for Texas Instruments TAS5805M Class-D
2271ec452684SDaniel Beer	  amplifiers. This is a speaker amplifier with an integrated
2272ec452684SDaniel Beer	  DSP. DSP configuration for each instance needs to be supplied
2273ec452684SDaniel Beer	  via a device-tree attribute.
2274ec452684SDaniel Beer
2275157b68baSAndreas Dannenbergconfig SND_SOC_TAS6424
2276157b68baSAndreas Dannenberg	tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
2277157b68baSAndreas Dannenberg	depends on I2C
2278157b68baSAndreas Dannenberg	help
2279157b68baSAndreas Dannenberg	  Enable support for Texas Instruments TAS6424 high-efficiency
2280157b68baSAndreas Dannenberg	  digital input quad-channel Class-D audio power amplifiers.
2281157b68baSAndreas Dannenberg
2282133c81f8SSen Wangconfig SND_SOC_TAS675X
2283133c81f8SSen Wang	tristate "Texas Instruments TAS675x Quad-Channel Audio Amplifier"
2284133c81f8SSen Wang	depends on I2C
2285133c81f8SSen Wang	select REGMAP_I2C
2286133c81f8SSen Wang	help
2287133c81f8SSen Wang	  Enable support for Texas Instruments TAS675x quad-channel Class-D
2288133c81f8SSen Wang	  audio power amplifiers (TAS6754, TAS67524). The devices support I2S
2289133c81f8SSen Wang	  and TDM interfaces with real-time voltage and current sense feedback
2290133c81f8SSen Wang	  via SDOUT, and provide DC/AC/real-time load diagnostics for speaker
2291133c81f8SSen Wang	  monitoring.
2292133c81f8SSen Wang
22933d3db943SMatt Porterconfig SND_SOC_TDA7419
22943d3db943SMatt Porter	tristate "ST TDA7419 audio processor"
22953d3db943SMatt Porter	depends on I2C
22963d3db943SMatt Porter	select REGMAP_I2C
22973d3db943SMatt Porter
2298fbace43eSPeter Rosinconfig SND_SOC_TFA9879
2299fbace43eSPeter Rosin	tristate "NXP Semiconductors TFA9879 amplifier"
2300fbace43eSPeter Rosin	depends on I2C
2301fbace43eSPeter Rosin
2302af00978aSStephan Gerholdconfig SND_SOC_TFA989X
2303af00978aSStephan Gerhold	tristate "NXP/Goodix TFA989X (TFA1) amplifiers"
2304af00978aSStephan Gerhold	depends on I2C
2305af00978aSStephan Gerhold	select REGMAP_I2C
2306af00978aSStephan Gerhold	help
2307af00978aSStephan Gerhold	  Enable support for NXP (now Goodix) TFA989X (TFA1 family) speaker
2308af00978aSStephan Gerhold	  amplifiers, e.g. TFA9895.
2309af00978aSStephan Gerhold	  Note that the driver currently bypasses the built-in "CoolFlux DSP"
2310af00978aSStephan Gerhold	  and does not support (hardware) volume control.
2311af00978aSStephan Gerhold
2312e9a3b57eSRicard Wanderlofconfig SND_SOC_TLV320ADC3XXX
2313e9a3b57eSRicard Wanderlof	tristate "Texas Instruments TLV320ADC3001/3101 audio ADC"
2314e9a3b57eSRicard Wanderlof	depends on I2C
2315551f2994SRandy Dunlap	depends on GPIOLIB
2316e9a3b57eSRicard Wanderlof	help
2317e9a3b57eSRicard Wanderlof	  Enable support for Texas Instruments TLV320ADC3001 and TLV320ADC3101
2318e9a3b57eSRicard Wanderlof	  ADCs.
2319e9a3b57eSRicard Wanderlof
23203e860846SMark Brownconfig SND_SOC_TLV320AIC23
23213e860846SMark Brown	tristate
23223e860846SMark Brown
2323b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_I2C
2324d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
2325bf9706feSMax Filippov	depends on I2C
2326b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
2327b3fc5725SMax Filippov
2328b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_SPI
2329d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
2330bf9706feSMax Filippov	depends on SPI_MASTER
2331b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
2332b3fc5725SMax Filippov
23333e860846SMark Brownconfig SND_SOC_TLV320AIC26
2334379cf397SPaul Bolle	tristate
2335446e0f69STakashi Iwai	depends on SPI
23363e860846SMark Brown
2337e00447faSJyri Sarhaconfig SND_SOC_TLV320AIC31XX
233896665e31SPeter Ujfalusi	tristate "Texas Instruments TLV320AIC31xx CODECs"
2339a9ef83f2SPeter Ujfalusi	depends on I2C
2340a9ef83f2SPeter Ujfalusi	select REGMAP_I2C
2341e00447faSJyri Sarha
2342684a65d4SWolfram Sangconfig SND_SOC_TLV320AIC32X4
23431d471cd1SJavier Martin	tristate
2344514b044cSAnnaliese McDermond	depends on COMMON_CLK
23451d471cd1SJavier Martin
23463bcfd222SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_I2C
23479245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
23483bcfd222SJeremy McDermond	depends on I2C
234964f01d2bSMark Brown	depends on COMMON_CLK
23503bcfd222SJeremy McDermond	select SND_SOC_TLV320AIC32X4
23513bcfd222SJeremy McDermond
2352125bc681SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_SPI
23539245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
2354125bc681SJeremy McDermond	depends on SPI_MASTER
235564f01d2bSMark Brown	depends on COMMON_CLK
2356125bc681SJeremy McDermond	select SND_SOC_TLV320AIC32X4
2357125bc681SJeremy McDermond
23583e860846SMark Brownconfig SND_SOC_TLV320AIC3X
2359a96d2ba2SJiri Prchal	tristate
2360a96d2ba2SJiri Prchal
2361a96d2ba2SJiri Prchalconfig SND_SOC_TLV320AIC3X_I2C
2362a96d2ba2SJiri Prchal	tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C"
23631291e141SMark Brown	depends on I2C
2364a96d2ba2SJiri Prchal	select SND_SOC_TLV320AIC3X
2365a96d2ba2SJiri Prchal	select REGMAP_I2C
23663e860846SMark Brown
2367fd4daab3SJiri Prchalconfig SND_SOC_TLV320AIC3X_SPI
2368fd4daab3SJiri Prchal	tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI"
2369fd4daab3SJiri Prchal	depends on SPI_MASTER
2370fd4daab3SJiri Prchal	select SND_SOC_TLV320AIC3X
2371fd4daab3SJiri Prchal	select REGMAP_SPI
2372fd4daab3SJiri Prchal
2373c8bf93f0SPeter Ujfalusiconfig SND_SOC_TLV320DAC33
2374c8bf93f0SPeter Ujfalusi	tristate
2375ce0c97f8SGeert Uytterhoeven	depends on I2C
23765383d67eSArnd Bergmann	depends on GPIOLIB_LEGACY
2377c8bf93f0SPeter Ujfalusi
2378689c7655SDan Murphyconfig SND_SOC_TLV320ADCX140
2379689c7655SDan Murphy	tristate "Texas Instruments TLV320ADCX140 CODEC family"
2380689c7655SDan Murphy	depends on I2C
2381689c7655SDan Murphy	select REGMAP_I2C
2382689c7655SDan Murphy	help
2383689c7655SDan Murphy	  Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and
2384689c7655SDan Murphy	  tlv320adc6140 quad channel ADCs.
2385689c7655SDan Murphy
23862880fc87SDylan Reidconfig SND_SOC_TS3A227E
23872880fc87SDylan Reid	tristate "TI Headset/Mic detect and keypress chip"
23882880fc87SDylan Reid	depends on I2C
23892880fc87SDylan Reid
2390ba6c2959SSteven Eckhoffconfig SND_SOC_TSCS42XX
2391ba6c2959SSteven Eckhoff	tristate "Tempo Semiconductor TSCS42xx CODEC"
2392ba6c2959SSteven Eckhoff	depends on I2C
2393ba6c2959SSteven Eckhoff	select REGMAP_I2C
2394ba6c2959SSteven Eckhoff	help
2395ba6c2959SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
2396ba6c2959SSteven Eckhoff
23970e725b48SSteven Eckhoffconfig SND_SOC_TSCS454
23980e725b48SSteven Eckhoff	tristate "Tempo Semiconductor TSCS454 CODEC"
23990e725b48SSteven Eckhoff	depends on I2C
24000e725b48SSteven Eckhoff	select REGMAP_I2C
24010e725b48SSteven Eckhoff	help
24020e725b48SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS454 audio CODEC.
24030e725b48SSteven Eckhoff
2404cc17557eSSteve Sakomanconfig SND_SOC_TWL4030
2405cc17557eSSteve Sakoman	tristate
2406ea00d952SGeert Uytterhoeven	depends on TWL4030_CORE
2407ea00d952SGeert Uytterhoeven	select MFD_TWL4030_AUDIO
2408cc17557eSSteve Sakoman
24098ecbabd9SMisael Lopez Cruzconfig SND_SOC_TWL6040
24108ecbabd9SMisael Lopez Cruz	tristate
2411ea00d952SGeert Uytterhoeven	depends on TWL6040_CORE
24128ecbabd9SMisael Lopez Cruz
2413caa918efSAndra Danciuconfig SND_SOC_UDA1334
2414caa918efSAndra Danciu	tristate "NXP UDA1334 DAC"
2415caa918efSAndra Danciu	depends on GPIOLIB
2416caa918efSAndra Danciu	help
2417caa918efSAndra Danciu	  The UDA1334 is an NXP audio codec, supports the I2S-bus data format
2418caa918efSAndra Danciu	  and has basic features such as de-emphasis (at 44.1 kHz sampling
2419caa918efSAndra Danciu	  rate) and mute.
2420caa918efSAndra Danciu
2421de0fb25eSBinbin Zhouconfig SND_SOC_UDA1342
2422de0fb25eSBinbin Zhou	tristate "NXP UDA1342 CODEC"
2423de0fb25eSBinbin Zhou	depends on I2C
2424de0fb25eSBinbin Zhou	help
2425de0fb25eSBinbin Zhou	  The UDA1342 is an NXP audio codec, support 2x Stereo audio ADC (4x PGA
2426de0fb25eSBinbin Zhou	  mic inputs), stereo audio DAC, with basic audio processing.
2427de0fb25eSBinbin Zhou
2428b7482f52SPhilipp Zabelconfig SND_SOC_UDA1380
24290cb7aa96SLinus Walleij	tristate "Philips UDA1380 CODEC"
24304a5cf132SKuninori Morimoto	depends on I2C
24310cb7aa96SLinus Walleij	help
24320cb7aa96SLinus Walleij	  The UDA1380 codec is used in the HTC Magician and on a number of
24330cb7aa96SLinus Walleij	  Samsung reference boards, as well as the LPC32xx series.
2434b7482f52SPhilipp Zabel
243511b0b802SKrzysztof Kozlowskiconfig SND_SOC_WCD_CLASSH
243611b0b802SKrzysztof Kozlowski	tristate
243711b0b802SKrzysztof Kozlowski
24384f16b635SSrinivas Kandagatlaconfig SND_SOC_WCD_COMMON
24394f16b635SSrinivas Kandagatla	tristate
24404f16b635SSrinivas Kandagatla
244120aedafdSSrinivas Kandagatlaconfig SND_SOC_WCD9335
244220aedafdSSrinivas Kandagatla	tristate "WCD9335 Codec"
2443a8233b6cSMark Brown	depends on SLIMBUS
244420aedafdSSrinivas Kandagatla	select REGMAP_SLIMBUS
2445ac71317eSMarc Gonzalez	select REGMAP_IRQ
244611b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
244720aedafdSSrinivas Kandagatla	help
244820aedafdSSrinivas Kandagatla	  The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
244920aedafdSSrinivas Kandagatla	  Qualcomm Technologies, Inc. (QTI) multimedia solutions,
245020aedafdSSrinivas Kandagatla	  including the MSM8996, MSM8976, and MSM8956 chipsets.
245120aedafdSSrinivas Kandagatla
24520e5c9e7fSSrinivas Kandagatlaconfig SND_SOC_WCD_MBHC
24530e5c9e7fSSrinivas Kandagatla	tristate
24540e5c9e7fSSrinivas Kandagatla
2455a61f3b4fSSrinivas Kandagatlaconfig SND_SOC_WCD934X
2456a61f3b4fSSrinivas Kandagatla	tristate "WCD9340/WCD9341 Codec"
245742b71635SSrinivas Kandagatla	depends on COMMON_CLK
24589815746cSKrzysztof Kozlowski	depends on SLIMBUS
2459a3d8f733SSrinivas Kandagatla	depends on SOUNDWIRE || !SOUNDWIRE
2460e231cd83SGeert Uytterhoeven	select REGMAP_IRQ
24614d73b97bSRen Zhijie	select REGMAP_SLIMBUS
246211b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
24634f16b635SSrinivas Kandagatla	select SND_SOC_WCD_COMMON
24649fb9b169SSrinivas Kandagatla	select SND_SOC_WCD_MBHC
24655b7f4e5dSKrzysztof Kozlowski	depends on MFD_WCD934X || COMPILE_TEST
2466a61f3b4fSSrinivas Kandagatla	help
2467a61f3b4fSSrinivas Kandagatla	  The WCD9340/9341 is a audio codec IC Integrated in
2468a61f3b4fSSrinivas Kandagatla	  Qualcomm SoCs like SDM845.
2469a61f3b4fSSrinivas Kandagatla
2470313e978dSPrasad Kumpatlaconfig SND_SOC_WCD937X
2471313e978dSPrasad Kumpatla	depends on SND_SOC_WCD937X_SDW
2472313e978dSPrasad Kumpatla	tristate
2473313e978dSPrasad Kumpatla	depends on SOUNDWIRE || !SOUNDWIRE
2474313e978dSPrasad Kumpatla	select SND_SOC_WCD_CLASSH
24754f16b635SSrinivas Kandagatla	select SND_SOC_WCD_COMMON
2476313e978dSPrasad Kumpatla
2477313e978dSPrasad Kumpatlaconfig SND_SOC_WCD937X_SDW
2478313e978dSPrasad Kumpatla	tristate "WCD9370/WCD9375 Codec - SDW"
2479313e978dSPrasad Kumpatla	select SND_SOC_WCD937X
2480313e978dSPrasad Kumpatla	select SND_SOC_WCD_MBHC
2481313e978dSPrasad Kumpatla	select REGMAP_IRQ
2482313e978dSPrasad Kumpatla	depends on SOUNDWIRE
2483313e978dSPrasad Kumpatla	select REGMAP_SOUNDWIRE
2484313e978dSPrasad Kumpatla	help
2485313e978dSPrasad Kumpatla	  The WCD9370/9375 is an audio codec IC used with SoCs
2486313e978dSPrasad Kumpatla	  like SC7280 or QCM6490 chipsets, and it connected
2487313e978dSPrasad Kumpatla	  via soundwire.
2488313e978dSPrasad Kumpatla	  To compile this codec driver say Y or m.
2489313e978dSPrasad Kumpatla
249004544222SSrinivas Kandagatlaconfig SND_SOC_WCD938X
24919431f8dfSSrinivas Kandagatla	depends on SND_SOC_WCD938X_SDW
249204544222SSrinivas Kandagatla	tristate
2493b9a4b57fSArnd Bergmann	depends on SOUNDWIRE || !SOUNDWIRE
249411b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
24954f16b635SSrinivas Kandagatla	select SND_SOC_WCD_COMMON
2496eec611d2SSrinivas Kandagatla	select MULTIPLEXER
249704544222SSrinivas Kandagatla
249804544222SSrinivas Kandagatlaconfig SND_SOC_WCD938X_SDW
249904544222SSrinivas Kandagatla	tristate "WCD9380/WCD9385 Codec - SDW"
250004544222SSrinivas Kandagatla	select SND_SOC_WCD938X
2501bcee7ed0SSrinivas Kandagatla	select SND_SOC_WCD_MBHC
2502214174d9SSrinivasa Rao Mandadapu	select REGMAP_IRQ
250304544222SSrinivas Kandagatla	depends on SOUNDWIRE
250404544222SSrinivas Kandagatla	select REGMAP_SOUNDWIRE
250504544222SSrinivas Kandagatla	help
250604544222SSrinivas Kandagatla	  The WCD9380/9385 is a audio codec IC Integrated in
250704544222SSrinivas Kandagatla	  Qualcomm SoCs like SM8250.
250804544222SSrinivas Kandagatla
250910f514bdSNeil Armstrongconfig SND_SOC_WCD939X
251010f514bdSNeil Armstrong	depends on SND_SOC_WCD939X_SDW
251110f514bdSNeil Armstrong	tristate
251210f514bdSNeil Armstrong	depends on SOUNDWIRE || !SOUNDWIRE
251310f514bdSNeil Armstrong	depends on TYPEC || !TYPEC
251410f514bdSNeil Armstrong	select SND_SOC_WCD_CLASSH
25154f16b635SSrinivas Kandagatla	select SND_SOC_WCD_COMMON
251610f514bdSNeil Armstrong
2517be2af391SNeil Armstrongconfig SND_SOC_WCD939X_SDW
2518be2af391SNeil Armstrong	tristate "WCD9390/WCD9395 Codec - SDW"
2519b4956275SArnd Bergmann	depends on TYPEC || !TYPEC
252010f514bdSNeil Armstrong	select SND_SOC_WCD939X
252110f514bdSNeil Armstrong	select SND_SOC_WCD_MBHC
2522be2af391SNeil Armstrong	select REGMAP_IRQ
2523be2af391SNeil Armstrong	depends on SOUNDWIRE
2524be2af391SNeil Armstrong	select REGMAP_SOUNDWIRE
2525be2af391SNeil Armstrong	help
2526be2af391SNeil Armstrong	  The WCD9390/9395 is a audio codec IC Integrated in
2527be2af391SNeil Armstrong	  Qualcomm SoCs like SM8650.
2528be2af391SNeil Armstrong
2529e3523e01SDimitris Papastamosconfig SND_SOC_WM0010
2530e3523e01SDimitris Papastamos	tristate
2531ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
2532e3523e01SDimitris Papastamos
25334bb3f43cSMark Brownconfig SND_SOC_WM1250_EV1
25344bb3f43cSMark Brown	tristate
2535ce0c97f8SGeert Uytterhoeven	depends on I2C
25364bb3f43cSMark Brown
25374911ccdbSMark Brownconfig SND_SOC_WM2000
25384911ccdbSMark Brown	tristate
2539ce0c97f8SGeert Uytterhoeven	depends on I2C
25404911ccdbSMark Brown
2541d5315a23SMark Brownconfig SND_SOC_WM2200
2542d5315a23SMark Brown	tristate
2543ce0c97f8SGeert Uytterhoeven	depends on I2C
2544e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
2545d5315a23SMark Brown
25466d4baf08SMark Brownconfig SND_SOC_WM5100
25476d4baf08SMark Brown	tristate
2548ce0c97f8SGeert Uytterhoeven	depends on I2C
25496d4baf08SMark Brown
255093e8791dSMark Brownconfig SND_SOC_WM5102
255193e8791dSMark Brown	tristate
255233d55070SHans de Goede	depends on MFD_WM5102 && MFD_ARIZONA
2553e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
255493e8791dSMark Brown
25555c6af635SMark Brownconfig SND_SOC_WM5110
25565c6af635SMark Brown	tristate
255733d55070SHans de Goede	depends on MFD_WM5110 && MFD_ARIZONA
2558e3f1ce07SArnd Bergmann	select SND_SOC_WM_ADSP
25595c6af635SMark Brown
256040aa4a30SMark Brownconfig SND_SOC_WM8350
256140aa4a30SMark Brown	tristate
2562ea00d952SGeert Uytterhoeven	depends on MFD_WM8350
256340aa4a30SMark Brown
2564aaf1e176SMark Brownconfig SND_SOC_WM8400
2565aaf1e176SMark Brown	tristate
2566ea00d952SGeert Uytterhoeven	# FIXME nothing selects SND_SOC_WM8400??
2567ea00d952SGeert Uytterhoeven	depends on MFD_WM8400
2568aaf1e176SMark Brown
25695d421516SMark Brownconfig SND_SOC_WM8510
25701291e141SMark Brown	tristate "Wolfson Microelectronics WM8510 CODEC"
25711291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
25725d421516SMark Brown
25731dcf98ffSMark Brownconfig SND_SOC_WM8523
25741291e141SMark Brown	tristate "Wolfson Microelectronics WM8523 DAC"
25751291e141SMark Brown	depends on I2C
25761dcf98ffSMark Brown
2577007b6a54SMihai Serbanconfig SND_SOC_WM8524
2578007b6a54SMihai Serban	tristate "Wolfson Microelectronics WM8524 DAC"
2579007b6a54SMihai Serban	depends on GPIOLIB
2580007b6a54SMihai Serban
2581e88ba015SMark Brownconfig SND_SOC_WM8580
2582028f5a5bSMatt Flax	tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
25831291e141SMark Brown	depends on I2C
2584e88ba015SMark Brown
2585bd6d4177SMike Arthurconfig SND_SOC_WM8711
25861291e141SMark Brown	tristate "Wolfson Microelectronics WM8711 CODEC"
25871291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2588bd6d4177SMike Arthur
258989933deeSNeil Jonesconfig SND_SOC_WM8727
259089933deeSNeil Jones	tristate
259189933deeSNeil Jones
259271cfc902SMark Brownconfig SND_SOC_WM8728
25931291e141SMark Brown	tristate "Wolfson Microelectronics WM8728 DAC"
25941291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
259571cfc902SMark Brown
25967f137ab6SRichard Purdieconfig SND_SOC_WM8731
25979dc15f81SMark Brown	tristate
25989dc15f81SMark Brown
25999dc15f81SMark Brownconfig SND_SOC_WM8731_I2C
26009dc15f81SMark Brown	tristate "Wolfson Microelectronics WM8731 CODEC with I2C"
26019dc15f81SMark Brown	depends on I2C
26029dc15f81SMark Brown	select REGMAP
26039dc15f81SMark Brown	select SND_SOC_WM8731
26049dc15f81SMark Brown
26059dc15f81SMark Brownconfig SND_SOC_WM8731_SPI
26069dc15f81SMark Brown	tristate "Wolfson Microelectronics WM8731 CODEC with SPI"
26079dc15f81SMark Brown	depends on SPI
26089dc15f81SMark Brown	select REGMAP
26099dc15f81SMark Brown	select SND_SOC_WM8731
26107f137ab6SRichard Purdie
26112a9ae13aSMark Brownconfig SND_SOC_WM8737
26121291e141SMark Brown	tristate "Wolfson Microelectronics WM8737 ADC"
26131291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
26142a9ae13aSMark Brown
2615992bee40SIan Larteyconfig SND_SOC_WM8741
26163fb83cbeSAxel Lin	tristate "Wolfson Microelectronics WM8741 DAC"
26171291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2618992bee40SIan Lartey
26197f137ab6SRichard Purdieconfig SND_SOC_WM8750
26201291e141SMark Brown	tristate "Wolfson Microelectronics WM8750 CODEC"
26211291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
26227f137ab6SRichard Purdie
262333703b73SLiam Girdwoodconfig SND_SOC_WM8753
26241291e141SMark Brown	tristate "Wolfson Microelectronics WM8753 CODEC"
26251291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
262633703b73SLiam Girdwood
2627c046fd4dSDimitris Papastamosconfig SND_SOC_WM8770
26281291e141SMark Brown	tristate "Wolfson Microelectronics WM8770 CODEC"
2629e479d85cSMark Brown	depends on SPI_MASTER
2630c046fd4dSDimitris Papastamos
2631924914eeSMark Brownconfig SND_SOC_WM8776
26321291e141SMark Brown	tristate "Wolfson Microelectronics WM8776 CODEC"
26331291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2634924914eeSMark Brown
2635ec3ea54cSJohannes Stezenbachconfig SND_SOC_WM8782
26362da48013SDaniel Mack	tristate "Wolfson Microelectronics WM8782 ADC"
2637ec3ea54cSJohannes Stezenbach
263833cf45c8SDimitris Papastamosconfig SND_SOC_WM8804
2639bbed297dSCharles Keepax	tristate
2640bbed297dSCharles Keepax
2641bbed297dSCharles Keepaxconfig SND_SOC_WM8804_I2C
2642bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
2643bbed297dSCharles Keepax	depends on I2C
2644bbed297dSCharles Keepax	select SND_SOC_WM8804
2645bbed297dSCharles Keepax	select REGMAP_I2C
2646bbed297dSCharles Keepax
2647bbed297dSCharles Keepaxconfig SND_SOC_WM8804_SPI
2648bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
2649bbed297dSCharles Keepax	depends on SPI_MASTER
2650bbed297dSCharles Keepax	select SND_SOC_WM8804
2651bbed297dSCharles Keepax	select REGMAP_SPI
265233cf45c8SDimitris Papastamos
26530e0e16a8SMark Brownconfig SND_SOC_WM8900
26540e0e16a8SMark Brown	tristate
265591e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
26560e0e16a8SMark Brown
2657f1c0a02fSMark Brownconfig SND_SOC_WM8903
26581291e141SMark Brown	tristate "Wolfson Microelectronics WM8903 CODEC"
26591291e141SMark Brown	depends on I2C
2660f1c0a02fSMark Brown
2661a91eb199SMark Brownconfig SND_SOC_WM8904
26622bb853f6SMichał Mirosław	tristate "Wolfson Microelectronics WM8904 CODEC"
26632bb853f6SMichał Mirosław	depends on I2C
2664a91eb199SMark Brown
26650b5e92c5SJonathan Cameronconfig SND_SOC_WM8940
26663a3610aaSLukasz Majewski	tristate "Wolfson Microelectronics WM8940 codec"
2667ce0c97f8SGeert Uytterhoeven	depends on I2C
26680b5e92c5SJonathan Cameron
2669b35a28afSMark Brownconfig SND_SOC_WM8955
2670b35a28afSMark Brown	tristate
2671ce0c97f8SGeert Uytterhoeven	depends on I2C
2672b35a28afSMark Brown
2673f2644a2cSMark Brownconfig SND_SOC_WM8960
2674465011fcSFabio Estevam	tristate "Wolfson Microelectronics WM8960 CODEC"
26753fcdfc9dSMark Brown	depends on I2C
2676f2644a2cSMark Brown
267774dc55edSMark Brownconfig SND_SOC_WM8961
267874a6a948SDoug Brown	tristate "Wolfson Microelectronics WM8961 CODEC"
2679ce0c97f8SGeert Uytterhoeven	depends on I2C
268074dc55edSMark Brown
26819a76f1ffSMark Brownconfig SND_SOC_WM8962
26821291e141SMark Brown	tristate "Wolfson Microelectronics WM8962 CODEC"
2683a2915d4fSArnd Bergmann	depends on I2C && INPUT
26849a76f1ffSMark Brown
26858bae3e23SKenneth Kiralyconfig SND_SOC_WM8971
26868bae3e23SKenneth Kiraly	tristate
2687ce0c97f8SGeert Uytterhoeven	depends on I2C
26888bae3e23SKenneth Kiraly
26890a1bf553SMark Brownconfig SND_SOC_WM8974
26902005bd88SMans Rullgard	tristate "Wolfson Microelectronics WM8974 codec"
26912005bd88SMans Rullgard	depends on I2C
26920a1bf553SMark Brown
26930d34e915SGuennadi Liakhovetskiconfig SND_SOC_WM8978
269477c54539SGeert Uytterhoeven	tristate "Wolfson Microelectronics WM8978 codec"
269577c54539SGeert Uytterhoeven	depends on I2C
26960d34e915SGuennadi Liakhovetski
26976b3860b0SDimitris Papastamosconfig SND_SOC_WM8983
26986b3860b0SDimitris Papastamos	tristate
2699c1c050eeSWei Li	depends on SND_SOC_I2C_AND_SPI
27006b3860b0SDimitris Papastamos
27016d6f8b83SDimitris Papastamosconfig SND_SOC_WM8985
2702811e66deSPetr Kulhavy	tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
2703b82d67f4SArnd Bergmann	depends on SND_SOC_I2C_AND_SPI
27046d6f8b83SDimitris Papastamos
27055409fb4eSMark Brownconfig SND_SOC_WM8988
27065409fb4eSMark Brown	tristate
270791e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
27085409fb4eSMark Brown
2709f10485e7SMark Brownconfig SND_SOC_WM8990
2710f10485e7SMark Brown	tristate
2711ce0c97f8SGeert Uytterhoeven	depends on I2C
2712f10485e7SMark Brown
2713203db220SDimitris Papastamosconfig SND_SOC_WM8991
2714203db220SDimitris Papastamos	tristate
2715ce0c97f8SGeert Uytterhoeven	depends on I2C
2716203db220SDimitris Papastamos
2717942c435bSMark Brownconfig SND_SOC_WM8993
2718942c435bSMark Brown	tristate
2719ce0c97f8SGeert Uytterhoeven	depends on I2C
2720942c435bSMark Brown
27219e6e96a1SMark Brownconfig SND_SOC_WM8994
27229e6e96a1SMark Brown	tristate
27235ed01155SCharles Keepax	depends on MFD_WM8994
27249e6e96a1SMark Brown
27256a504a75SDimitris Papastamosconfig SND_SOC_WM8995
27266a504a75SDimitris Papastamos	tristate
272791e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
27286a504a75SDimitris Papastamos
2729a9ba6151SMark Brownconfig SND_SOC_WM8996
2730a9ba6151SMark Brown	tristate
2731ce0c97f8SGeert Uytterhoeven	depends on I2C
2732a9ba6151SMark Brown
273340843aeaSCharles Keepaxconfig SND_SOC_WM8997
273440843aeaSCharles Keepax	tristate
273533d55070SHans de Goede	depends on MFD_WM8997 && MFD_ARIZONA
273640843aeaSCharles Keepax
27376ebbce0aSRichard Fitzgeraldconfig SND_SOC_WM8998
27389ef24511SAndré Apitzsch	tristate "Wolfson Microelectronics WM8998 codec driver"
273933d55070SHans de Goede	depends on MFD_WM8998 && MFD_ARIZONA
27406ebbce0aSRichard Fitzgerald
274186ed3669SMark Brownconfig SND_SOC_WM9081
274286ed3669SMark Brown	tristate
2743e2d57591SKuninori Morimoto	depends on I2C
274486ed3669SMark Brown
274559792aa9SMark Brownconfig SND_SOC_WM9090
274659792aa9SMark Brown	tristate
2747ce0c97f8SGeert Uytterhoeven	depends on I2C
274859792aa9SMark Brown
27492aceefefSIan Moltonconfig SND_SOC_WM9705
27502aceefefSIan Molton	tristate
2751ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2752206964e8SLars-Peter Clausen	select REGMAP_AC97
2753aaafcfedSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
27542aceefefSIan Molton
27557f137ab6SRichard Purdieconfig SND_SOC_WM9712
27567f137ab6SRichard Purdie	tristate
2757ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2758b4f4f2ebSLars-Peter Clausen	select REGMAP_AC97
27592ed1a8e0SRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
2760b0c813ceSTimur Tabi
276183ac08c0SLiam Girdwoodconfig SND_SOC_WM9713
276283ac08c0SLiam Girdwood	tristate
2763ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2764700dadfeSRobert Jarzmik	select REGMAP_AC97
27659bd400caSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
27669db9ed97SJoonyoung Shim
2767a0aab9e1SSrinivas Kandagatlaconfig SND_SOC_WSA881X
2768a0aab9e1SSrinivas Kandagatla	tristate "WSA881X Codec"
2769a0aab9e1SSrinivas Kandagatla	depends on SOUNDWIRE
2770a0aab9e1SSrinivas Kandagatla	select REGMAP_SOUNDWIRE
2771a0aab9e1SSrinivas Kandagatla	help
2772a0aab9e1SSrinivas Kandagatla	  This enables support for Qualcomm WSA8810/WSA8815 Class-D
2773a0aab9e1SSrinivas Kandagatla	  Smart Speaker Amplifier.
2774a0aab9e1SSrinivas Kandagatla
277543b8c7dcSSrinivas Kandagatlaconfig SND_SOC_WSA883X
277643b8c7dcSSrinivas Kandagatla	tristate "WSA883X Codec"
277743b8c7dcSSrinivas Kandagatla	depends on SOUNDWIRE
277843b8c7dcSSrinivas Kandagatla	select REGMAP_SOUNDWIRE
277943b8c7dcSSrinivas Kandagatla	help
278043b8c7dcSSrinivas Kandagatla	  This enables support for Qualcomm WSA8830/WSA8835 Class-D
278143b8c7dcSSrinivas Kandagatla	  Smart Speaker Amplifier.
278243b8c7dcSSrinivas Kandagatla
2783aa21a7d4SKrzysztof Kozlowskiconfig SND_SOC_WSA884X
2784aa21a7d4SKrzysztof Kozlowski	tristate "WSA884X Codec"
2785aa21a7d4SKrzysztof Kozlowski	depends on SOUNDWIRE
2786aa21a7d4SKrzysztof Kozlowski	select REGMAP_SOUNDWIRE
2787aa21a7d4SKrzysztof Kozlowski	help
2788aa21a7d4SKrzysztof Kozlowski	  This enables support for Qualcomm WSA8840/WSA8845/WSA8845H Class-D
2789aa21a7d4SKrzysztof Kozlowski	  Smart Speaker Amplifier.
2790aa21a7d4SKrzysztof Kozlowski
27911d0368c9SPrasad Kumpatlaconfig SND_SOC_WSA885X
27921d0368c9SPrasad Kumpatla	tristate "WSA885X Codec"
27931d0368c9SPrasad Kumpatla	depends on I2C
27941d0368c9SPrasad Kumpatla	select REGMAP_I2C
27951d0368c9SPrasad Kumpatla	help
27961d0368c9SPrasad Kumpatla	  This enables support for Qualcomm WSA885X Stereo Smart Speaker
27971d0368c9SPrasad Kumpatla	  Amplifier. The codec driver programs the amplifier register
27981d0368c9SPrasad Kumpatla	  map and exposes the DAI and mixer controls used by Qualcomm
27991d0368c9SPrasad Kumpatla	  audio machine drivers.
28001d0368c9SPrasad Kumpatla
280152e8a94bSSven Van Asbroeckconfig SND_SOC_ZL38060
280252e8a94bSSven Van Asbroeck	tristate "Microsemi ZL38060 Connected Home Audio Processor"
280352e8a94bSSven Van Asbroeck	depends on SPI_MASTER
28040de2cc37SArnd Bergmann	depends on GPIOLIB
280552e8a94bSSven Van Asbroeck	select REGMAP
280652e8a94bSSven Van Asbroeck	help
280752e8a94bSSven Van Asbroeck	  Support for ZL38060 Connected Home Audio Processor from Microsemi,
280852e8a94bSSven Van Asbroeck	  which consists of a Digital Signal Processor (DSP), several Digital
280952e8a94bSSven Van Asbroeck	  Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs.
281052e8a94bSSven Van Asbroeck
28119db9ed97SJoonyoung Shim# Amp
28129b0a25f0SLars-Peter Clausenconfig SND_SOC_LM4857
28139b0a25f0SLars-Peter Clausen	tristate
2814ce0c97f8SGeert Uytterhoeven	depends on I2C
28159b0a25f0SLars-Peter Clausen
2816fa8d9151SNeil Armstrongconfig SND_SOC_MAX9759
2817fa8d9151SNeil Armstrong	tristate "Maxim MAX9759 speaker Amplifier"
2818c2974487SMark Brown	depends on GPIOLIB
2819fa8d9151SNeil Armstrong
2820394d2bbaSWolfram Sangconfig SND_SOC_MAX9768
2821394d2bbaSWolfram Sang	tristate
2822ce0c97f8SGeert Uytterhoeven	depends on I2C
2823394d2bbaSWolfram Sang
28249db9ed97SJoonyoung Shimconfig SND_SOC_MAX9877
28259db9ed97SJoonyoung Shim	tristate
2826ce0c97f8SGeert Uytterhoeven	depends on I2C
2827493b67efSPeter Ujfalusi
28288b908b86SPhilippe Rétornazconfig SND_SOC_MC13783
28298b908b86SPhilippe Rétornaz	tristate
2830d8dd3f92SGeert Uytterhoeven	depends on MFD_MC13XXX
28318b908b86SPhilippe Rétornaz
2832d808fe9fSTomoya MORINAGAconfig SND_SOC_ML26124
2833d808fe9fSTomoya MORINAGA	tristate
2834ce0c97f8SGeert Uytterhoeven	depends on I2C
2835d808fe9fSTomoya MORINAGA
2836a74d51baSKai Chieh Chuangconfig SND_SOC_MT6351
2837a74d51baSKai Chieh Chuang	tristate "MediaTek MT6351 Codec"
2838a74d51baSKai Chieh Chuang
28395e240449SNicolas Belinconfig SND_SOC_MT6357
28405e240449SNicolas Belin	tristate "MediaTek MT6357 Codec"
28415e240449SNicolas Belin	help
28425e240449SNicolas Belin	  Enable support for the platform which uses MT6357 as
28435e240449SNicolas Belin	  external codec device.
28445e240449SNicolas Belin
28456a8d4198SShunli Wangconfig SND_SOC_MT6358
28466a8d4198SShunli Wang	tristate "MediaTek MT6358 Codec"
28476a8d4198SShunli Wang	help
28486a8d4198SShunli Wang	  Enable support for the platform which uses MT6358 as
28496a8d4198SShunli Wang	  external codec device.
28506a8d4198SShunli Wang
28518061734aSJiaxin Yuconfig SND_SOC_MT6359
28528061734aSJiaxin Yu	tristate "MediaTek MT6359 Codec"
28538061734aSJiaxin Yu	depends on MTK_PMIC_WRAP
28548061734aSJiaxin Yu	help
28558061734aSJiaxin Yu	  Enable support for the platform which uses MT6359 as
28568061734aSJiaxin Yu	  external codec device.
28578061734aSJiaxin Yu
2858eef07b9eSArgus Linconfig SND_SOC_MT6359_ACCDET
2859eef07b9eSArgus Lin	tristate "MediaTek MT6359 ACCDET driver"
2860eef07b9eSArgus Lin	depends on MTK_PMIC_WRAP
2861eef07b9eSArgus Lin	help
2862eef07b9eSArgus Lin	  ACCDET means Accessory Detection technology, MediaTek develop it
2863eef07b9eSArgus Lin	  for ASoC codec soc-jack detection mechanism.
2864eef07b9eSArgus Lin	  Select N if you don't have jack on board.
2865eef07b9eSArgus Lin
2866f289e55cSJeff Changconfig SND_SOC_MT6660
2867f289e55cSJeff Chang	tristate "Mediatek MT6660 Speaker Amplifier"
2868f289e55cSJeff Chang	depends on I2C
2869f289e55cSJeff Chang	help
2870f289e55cSJeff Chang	  MediaTek MT6660 is a smart power amplifier which contain
2871f289e55cSJeff Chang	  speaker protection, multi-band DRC, equalizer functions.
2872f289e55cSJeff Chang	  Select N if you don't have MT6660 on board.
2873f289e55cSJeff Chang	  Select M to build this as module.
2874f289e55cSJeff Chang
28754d1a9952SDavid Linconfig SND_SOC_NAU8315
28764d1a9952SDavid Lin	tristate "Nuvoton Technology Corporation NAU8315 CODEC"
28774d1a9952SDavid Lin
2878cd41d342SJaroslav Kyselaconfig SND_SOC_NAU8325
2879cd41d342SJaroslav Kysela	tristate "Nuvoton Technology Corporation NAU8325 CODEC"
2880cd41d342SJaroslav Kysela	depends on I2C
2881cd41d342SJaroslav Kysela
2882c1644e3dSJohn Hsuconfig SND_SOC_NAU8540
2883c1644e3dSJohn Hsu	tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
2884c1644e3dSJohn Hsu	depends on I2C
2885c1644e3dSJohn Hsu
2886b6970b48SJohn Hsuconfig SND_SOC_NAU8810
2887b6970b48SJohn Hsu	tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
2888b6970b48SJohn Hsu	depends on I2C
2889b6970b48SJohn Hsu
2890aab1ad11SSeven Leeconfig SND_SOC_NAU8821
2891aab1ad11SSeven Lee	tristate "Nuvoton Technology Corporation NAU88L21 CODEC"
2892aab1ad11SSeven Lee	depends on I2C
2893aab1ad11SSeven Lee
28941e3cb6c3SDavid Linconfig SND_SOC_NAU8822
28951e3cb6c3SDavid Lin	tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
28961e3cb6c3SDavid Lin	depends on I2C
28971e3cb6c3SDavid Lin
2898dfeabdedSJohn Hsuconfig SND_SOC_NAU8824
2899dfeabdedSJohn Hsu	tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
2900dfeabdedSJohn Hsu	depends on I2C
2901dfeabdedSJohn Hsu
290234ca27f3SAnatol Pomozovconfig SND_SOC_NAU8825
290334ca27f3SAnatol Pomozov	tristate
2904ce0c97f8SGeert Uytterhoeven	depends on I2C
290534ca27f3SAnatol Pomozov
2906ba1850dcSIgor Prusovconfig SND_SOC_NTPFW
2907ba1850dcSIgor Prusov	tristate
2908ba1850dcSIgor Prusov
29092bd61fffSIgor Prusovconfig SND_SOC_NTP8918
29102bd61fffSIgor Prusov	select SND_SOC_NTPFW
29112bd61fffSIgor Prusov	tristate "NeoFidelity NTP8918 amplifier"
29122bd61fffSIgor Prusov	depends on I2C
29132bd61fffSIgor Prusov
2914dc9004eaSIgor Prusovconfig SND_SOC_NTP8835
2915dc9004eaSIgor Prusov	select SND_SOC_NTPFW
2916dc9004eaSIgor Prusov	tristate "NeoFidelity NTP8835 and NTP8835C amplifiers"
2917dc9004eaSIgor Prusov	depends on I2C
2918dc9004eaSIgor Prusov
2919493b67efSPeter Ujfalusiconfig SND_SOC_TPA6130A2
29201291e141SMark Brown	tristate "Texas Instruments TPA6130A2 headphone amplifier"
29211291e141SMark Brown	depends on I2C
29224d1a7722SMark Brown
29239e3d83c5SSrinivasa Rao Mandadapuconfig SND_SOC_LPASS_MACRO_COMMON
29249e3d83c5SSrinivasa Rao Mandadapu	tristate
29259e3d83c5SSrinivasa Rao Mandadapu
2926809bcbceSSrinivas Kandagatlaconfig SND_SOC_LPASS_WSA_MACRO
2927809bcbceSSrinivas Kandagatla	depends on COMMON_CLK
2928cd054a6eSAjay Kumar Nandam	depends on PM_CLK
2929e78f36bcSBertrand Jacquin	select REGMAP_MMIO
293036ac1e29SKrzysztof Kozlowski	select SND_SOC_LPASS_MACRO_COMMON
2931809bcbceSSrinivas Kandagatla	tristate "Qualcomm WSA Macro in LPASS(Low Power Audio SubSystem)"
2932809bcbceSSrinivas Kandagatla
2933908e6b1dSSrinivas Kandagatlaconfig SND_SOC_LPASS_VA_MACRO
2934908e6b1dSSrinivas Kandagatla	depends on COMMON_CLK
2935eb667d0fSAjay Kumar Nandam	depends on PM_CLK
2936e78f36bcSBertrand Jacquin	select REGMAP_MMIO
29379e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2938908e6b1dSSrinivas Kandagatla	tristate "Qualcomm VA Macro in LPASS(Low Power Audio SubSystem)"
2939908e6b1dSSrinivas Kandagatla
2940af3d54b9SSrinivas Kandagatlaconfig SND_SOC_LPASS_RX_MACRO
2941af3d54b9SSrinivas Kandagatla	depends on COMMON_CLK
2942b9b23e72SAjay Kumar Nandam	depends on PM_CLK
2943e78f36bcSBertrand Jacquin	select REGMAP_MMIO
29449e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2945af3d54b9SSrinivas Kandagatla	tristate "Qualcomm RX Macro in LPASS(Low Power Audio SubSystem)"
2946af3d54b9SSrinivas Kandagatla
2947c39667ddSSrinivas Kandagatlaconfig SND_SOC_LPASS_TX_MACRO
2948c39667ddSSrinivas Kandagatla	depends on COMMON_CLK
2949b9b23e72SAjay Kumar Nandam	depends on PM_CLK
2950e78f36bcSBertrand Jacquin	select REGMAP_MMIO
29519e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2952c39667ddSSrinivas Kandagatla	tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)"
2953c39667ddSSrinivas Kandagatla
29544d1a7722SMark Brownendmenu
2955