xref: /linux-6.15/sound/soc/codecs/Kconfig (revision 96014d91)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2227b4dc6SMark Brown# Helper to resolve issues with configs that have SPI enabled but I2C
3227b4dc6SMark Brown# modular, meaning we can't build the codec driver in with I2C support.
4227b4dc6SMark Brown# We use an ordered list of conditional defaults to pick the appropriate
5227b4dc6SMark Brown# setting - SPI can't be modular so that case doesn't need to be covered.
6227b4dc6SMark Brownconfig SND_SOC_I2C_AND_SPI
7227b4dc6SMark Brown	tristate
8227b4dc6SMark Brown	default m if I2C=m
9227b4dc6SMark Brown	default y if I2C=y
10227b4dc6SMark Brown	default y if SPI_MASTER=y
11227b4dc6SMark Brown
124d1a7722SMark Brownmenu "CODEC drivers"
134d1a7722SMark Brown
140c941615SMark Brownconfig SND_SOC_ALL_CODECS
150c941615SMark Brown	tristate "Build all ASoC CODEC drivers"
1664b0c282SMark Brown	depends on COMPILE_TEST
17ea00d952SGeert Uytterhoeven	imply SND_SOC_88PM860X
18ea00d952SGeert Uytterhoeven	imply SND_SOC_AB8500_CODEC
19ea00d952SGeert Uytterhoeven	imply SND_SOC_AC97_CODEC
20ea00d952SGeert Uytterhoeven	imply SND_SOC_AD1836
21ea00d952SGeert Uytterhoeven	imply SND_SOC_AD193X_SPI
22ea00d952SGeert Uytterhoeven	imply SND_SOC_AD193X_I2C
23ea00d952SGeert Uytterhoeven	imply SND_SOC_AD1980
24ea00d952SGeert Uytterhoeven	imply SND_SOC_AD73311
256cd4c645SLars-Peter Clausen	imply SND_SOC_ADAU1372_I2C
266cd4c645SLars-Peter Clausen	imply SND_SOC_ADAU1372_SPI
27ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1373
28ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1761_I2C
29ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1761_SPI
30ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1781_I2C
31ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1781_SPI
32ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAV801
33ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAV803
34ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1977_SPI
35ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1977_I2C
36ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU1701
37ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU7002
38ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU7118_I2C
39ea00d952SGeert Uytterhoeven	imply SND_SOC_ADAU7118_HW
40ea00d952SGeert Uytterhoeven	imply SND_SOC_ADS117X
41ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4104
42ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4118
4353778b82SVincent Knecht	imply SND_SOC_AK4375
44ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4458
45ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4535
46ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4554
47ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4613
48ca73d314SKhanh Le	imply SND_SOC_AK4619
49ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4641
50ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4642
51ea00d952SGeert Uytterhoeven	imply SND_SOC_AK4671
52ea00d952SGeert Uytterhoeven	imply SND_SOC_AK5386
53ea00d952SGeert Uytterhoeven	imply SND_SOC_AK5558
54ea00d952SGeert Uytterhoeven	imply SND_SOC_ALC5623
55ea00d952SGeert Uytterhoeven	imply SND_SOC_ALC5632
561d298ad8SHerve Codina	imply SND_SOC_AUDIO_IIO_AUX
576b4528b5SJonathan Albrieux	imply SND_SOC_AW8738
584717636fSWeidong Wang	imply SND_SOC_AW87390
5914bd8572SWeidong Wang	imply SND_SOC_AW88395
6088264e4fSWeidong Wang	imply SND_SOC_AW88081
6194e412c2SWeidong Wang	imply SND_SOC_AW88166
62028a2ae2SWeidong Wang	imply SND_SOC_AW88261
638ade6cc7SWeidong Wang	imply SND_SOC_AW88399
64ea00d952SGeert Uytterhoeven	imply SND_SOC_BT_SCO
65ea00d952SGeert Uytterhoeven	imply SND_SOC_BD28623
6661ed3034SPaweł Anikiel	imply SND_SOC_CHV3_CODEC
67ea00d952SGeert Uytterhoeven	imply SND_SOC_CQ0093VC
68ea00d952SGeert Uytterhoeven	imply SND_SOC_CROS_EC_CODEC
69ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L32
70ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L33
71ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L34
72ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L35
73ea00d952SGeert Uytterhoeven	imply SND_SOC_CS35L36
746450ef55SDavid Rhodes	imply SND_SOC_CS35L41_SPI
756450ef55SDavid Rhodes	imply SND_SOC_CS35L41_I2C
760d463d01SJames Schulman	imply SND_SOC_CS35L45_I2C
770d463d01SJames Schulman	imply SND_SOC_CS35L45_SPI
78e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_I2C
79e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_SPI
80e4961125SRichard Fitzgerald	imply SND_SOC_CS35L56_SDW
81c486def5SJames Ogletree	imply SND_SOC_CS40L50
82ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L42
8390f6a2a2SRichard Fitzgerald	imply SND_SOC_CS42L42_SDW
84fc918cbeSCharles Keepax	imply SND_SOC_CS42L43
85fc918cbeSCharles Keepax	imply SND_SOC_CS42L43_SDW
86ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L51_I2C
87ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L52
88ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L56
89ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42L73
90250304a0SMartin Povišer	imply SND_SOC_CS42L84
91d4edae9cSLucas Tanure	imply SND_SOC_CS4234
92ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4265
93ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4270
94ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4271_I2C
95ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4271_SPI
96ea00d952SGeert Uytterhoeven	imply SND_SOC_CS42XX8_I2C
97ea00d952SGeert Uytterhoeven	imply SND_SOC_CS43130
98ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4341
99ea00d952SGeert Uytterhoeven	imply SND_SOC_CS4349
100ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L15
101ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L24
102ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L35
103ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L85
104ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L90
105ea00d952SGeert Uytterhoeven	imply SND_SOC_CS47L92
106ea00d952SGeert Uytterhoeven	imply SND_SOC_CS53L30
1072884c291SPaul Handrigan	imply SND_SOC_CS530X_I2C
108ea00d952SGeert Uytterhoeven	imply SND_SOC_CX20442
109ea00d952SGeert Uytterhoeven	imply SND_SOC_CX2072X
110ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7210
111ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7213
112ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7218
113ea00d952SGeert Uytterhoeven	imply SND_SOC_DA7219
114ea00d952SGeert Uytterhoeven	imply SND_SOC_DA732X
115ea00d952SGeert Uytterhoeven	imply SND_SOC_DA9055
116ea00d952SGeert Uytterhoeven	imply SND_SOC_DMIC
117ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8316
118b97391a6SBinbin Zhou	imply SND_SOC_ES8323
1195c439937SZhu Ning	imply SND_SOC_ES8326
120ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8328_SPI
121ea00d952SGeert Uytterhoeven	imply SND_SOC_ES8328_I2C
122ea00d952SGeert Uytterhoeven	imply SND_SOC_ES7134
123ea00d952SGeert Uytterhoeven	imply SND_SOC_ES7241
124a9a0303dSHerve Codina	imply SND_SOC_FRAMER
125ea00d952SGeert Uytterhoeven	imply SND_SOC_GTM601
126ea00d952SGeert Uytterhoeven	imply SND_SOC_HDAC_HDMI
127ea00d952SGeert Uytterhoeven	imply SND_SOC_HDAC_HDA
128ea00d952SGeert Uytterhoeven	imply SND_SOC_ICS43432
129e5116699SHerve Codina	imply SND_SOC_IDT821034
130ea00d952SGeert Uytterhoeven	imply SND_SOC_INNO_RK3036
131ea00d952SGeert Uytterhoeven	imply SND_SOC_ISABELLE
132ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4740_CODEC
133ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4725B_CODEC
134d9cd22e9SChristophe Branchereau	imply SND_SOC_JZ4760_CODEC
135ea00d952SGeert Uytterhoeven	imply SND_SOC_JZ4770_CODEC
136ea00d952SGeert Uytterhoeven	imply SND_SOC_LM4857
137ea00d952SGeert Uytterhoeven	imply SND_SOC_LM49453
138ea00d952SGeert Uytterhoeven	imply SND_SOC_LOCHNAGAR_SC
139ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98088
140ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98090
141ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98095
142ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98357A
143ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98371
144ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98504
145f88ee76bSGeorge Song	imply SND_SOC_MAX98520
146ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9867
147ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98925
148ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98926
149ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX98927
15018c0af94SRyan Lee	imply SND_SOC_MAX98363
151d7ee0c72SPierre-Louis Bossart	imply SND_SOC_MAX98373_I2C
15256a5b791SRyan Lee	imply SND_SOC_MAX98373_SDW
1536a8e1d46SRyan Lee	imply SND_SOC_MAX98388
154a6e3f4f3SSteve Lee	imply SND_SOC_MAX98390
155b5858113SRyan Lee	imply SND_SOC_MAX98396
156ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9850
157ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9860
158ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9759
159ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9768
160ea00d952SGeert Uytterhoeven	imply SND_SOC_MAX9877
161ea00d952SGeert Uytterhoeven	imply SND_SOC_MC13783
162ea00d952SGeert Uytterhoeven	imply SND_SOC_ML26124
163ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6351
1645e240449SNicolas Belin	imply SND_SOC_MT6357
165ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6358
1668061734aSJiaxin Yu	imply SND_SOC_MT6359
167ea00d952SGeert Uytterhoeven	imply SND_SOC_MT6660
1684d1a9952SDavid Lin	imply SND_SOC_NAU8315
169ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8540
170ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8810
171aab1ad11SSeven Lee	imply SND_SOC_NAU8821
172ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8822
173ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8824
174ea00d952SGeert Uytterhoeven	imply SND_SOC_NAU8825
175ea00d952SGeert Uytterhoeven	imply SND_SOC_HDMI_CODEC
176ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM1681
177ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM1789_I2C
178ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM179X_I2C
179ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM179X_SPI
180ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM186X_I2C
181ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM186X_SPI
182ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3008
183ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3060_I2C
184ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3060_SPI
185ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3168A_I2C
186ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM3168A_SPI
187ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM5102A
188ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM512x_I2C
189ea00d952SGeert Uytterhoeven	imply SND_SOC_PCM512x_SPI
1906bb1b706SShenghao Ding	imply SND_SOC_PCM6240
191227f609cSHerve Codina	imply SND_SOC_PEB2466
1924ed0915fSLuca Ceresoli	imply SND_SOC_RK3308
193ea00d952SGeert Uytterhoeven	imply SND_SOC_RK3328
1940d6a04daSChris Morgan	imply SND_SOC_RK817
195ea00d952SGeert Uytterhoeven	imply SND_SOC_RT274
196ea00d952SGeert Uytterhoeven	imply SND_SOC_RT286
197ea00d952SGeert Uytterhoeven	imply SND_SOC_RT298
198ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1011
199ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1015
200c07152d4STzung-Bi Shih	imply SND_SOC_RT1015P
201953b1388SStephen Kitt	imply SND_SOC_RT1016
2022b7aecd5SDerek Fang	imply SND_SOC_RT1017_SDCA_SDW
2037ec79d38SJack Yu	imply SND_SOC_RT1019
204ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1305
205ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1308
206ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5514
207ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5616
208ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5631
209ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5640
210ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5645
211ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5651
212ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5659
213ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5660
214ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5663
215ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5665
216ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5668
217ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5670
218ea00d952SGeert Uytterhoeven	imply SND_SOC_RT5677
219a50067d4SArnd Bergmann	imply SND_SOC_RT5682_I2C
22003f6fc6dSOder Chiou	imply SND_SOC_RT5682_SDW
221bdd229abSDerek Fang	imply SND_SOC_RT5682S
222ea00d952SGeert Uytterhoeven	imply SND_SOC_RT700_SDW
223ea00d952SGeert Uytterhoeven	imply SND_SOC_RT711_SDW
2247ad4d237SShuming Fan	imply SND_SOC_RT711_SDCA_SDW
2256c39710dSShuming Fan	imply SND_SOC_RT712_SDCA_SDW
22663a51128SShuming Fan	imply SND_SOC_RT712_SDCA_DMIC_SDW
227ea00d952SGeert Uytterhoeven	imply SND_SOC_RT715_SDW
22820d17057SJack Yu	imply SND_SOC_RT715_SDCA_SDW
22986ce355cSJack Yu	imply SND_SOC_RT721_SDCA_SDW
2307f5d6036SJack Yu	imply SND_SOC_RT722_SDCA_SDW
231ea00d952SGeert Uytterhoeven	imply SND_SOC_RT1308_SDW
2322b719fd2SShuming Fan	imply SND_SOC_RT1316_SDW
233fe1ff614SJack Yu	imply SND_SOC_RT1318
2346ad73a2bSShuming Fan	imply SND_SOC_RT1318_SDW
235bad0a07aSShuming Fan	imply SND_SOC_RT1320_SDW
2367228d835SChiYuan Huang	imply SND_SOC_RT9120
237736064c6SChiYuan Huang	imply SND_SOC_RTQ9128
23881d3d3d0SPierre-Louis Bossart	imply SND_SOC_SDW_MOCKUP
239ea00d952SGeert Uytterhoeven	imply SND_SOC_SGTL5000
240ea00d952SGeert Uytterhoeven	imply SND_SOC_SI476X
241ea00d952SGeert Uytterhoeven	imply SND_SOC_SIMPLE_AMPLIFIER
242342fbb75SAlexandre Belloni	imply SND_SOC_SIMPLE_MUX
24368cd394eSKiseokJo	imply SND_SOC_SMA1303
244576c57e6SKiseok Jo	imply SND_SOC_SMA1307
245ea00d952SGeert Uytterhoeven	imply SND_SOC_SPDIF
2464e6bedd3SMatt Flax	imply SND_SOC_SRC4XXX_I2C
247ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2305
248ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2518
249ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2602_SPI
250ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM2602_I2C
251ea00d952SGeert Uytterhoeven	imply SND_SOC_SSM4567
252ea00d952SGeert Uytterhoeven	imply SND_SOC_STA32X
253ea00d952SGeert Uytterhoeven	imply SND_SOC_STA350
254ea00d952SGeert Uytterhoeven	imply SND_SOC_STA529
255ea00d952SGeert Uytterhoeven	imply SND_SOC_STAC9766
256ea00d952SGeert Uytterhoeven	imply SND_SOC_STI_SAS
257ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2552
258ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2562
259827ed8a0SDan Murphy	imply SND_SOC_TAS2764
260ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS2770
261eae9f9ceSRaphael-Xu	imply SND_SOC_TAS2780
262ef3bcde7SShenghao Ding	imply SND_SOC_TAS2781_COMLIB
263ef3bcde7SShenghao Ding	imply SND_SOC_TAS2781_FMWLIB
264ef3bcde7SShenghao Ding	imply SND_SOC_TAS2781_I2C
265ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS5086
266ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS571X
267ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS5720
268ea00d952SGeert Uytterhoeven	imply SND_SOC_TAS6424
269ea00d952SGeert Uytterhoeven	imply SND_SOC_TDA7419
270ea00d952SGeert Uytterhoeven	imply SND_SOC_TFA9879
271af00978aSStephan Gerhold	imply SND_SOC_TFA989X
272e9a3b57eSRicard Wanderlof	imply SND_SOC_TLV320ADC3XXX
273689c7655SDan Murphy	imply SND_SOC_TLV320ADCX140
274ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC23_I2C
275ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC23_SPI
276ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC26
277ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC31XX
278ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC32X4_I2C
279ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320AIC32X4_SPI
280a96d2ba2SJiri Prchal	imply SND_SOC_TLV320AIC3X_I2C
281fd4daab3SJiri Prchal	imply SND_SOC_TLV320AIC3X_SPI
282ea00d952SGeert Uytterhoeven	imply SND_SOC_TPA6130A2
283ea00d952SGeert Uytterhoeven	imply SND_SOC_TLV320DAC33
284ea00d952SGeert Uytterhoeven	imply SND_SOC_TSCS42XX
285ea00d952SGeert Uytterhoeven	imply SND_SOC_TSCS454
286ea00d952SGeert Uytterhoeven	imply SND_SOC_TS3A227E
287ea00d952SGeert Uytterhoeven	imply SND_SOC_TWL4030
288ea00d952SGeert Uytterhoeven	imply SND_SOC_TWL6040
289ea00d952SGeert Uytterhoeven	imply SND_SOC_UDA1334
290de0fb25eSBinbin Zhou	imply SND_SOC_UDA1342
291ea00d952SGeert Uytterhoeven	imply SND_SOC_UDA1380
292ea00d952SGeert Uytterhoeven	imply SND_SOC_WCD9335
293ea00d952SGeert Uytterhoeven	imply SND_SOC_WCD934X
294313e978dSPrasad Kumpatla	imply SND_SOC_WCD937X_SDW
2952039cc1dSLukas Bulwahn	imply SND_SOC_WCD938X_SDW
296be2af391SNeil Armstrong	imply SND_SOC_WCD939X_SDW
2979e3d83c5SSrinivasa Rao Mandadapu	imply SND_SOC_LPASS_MACRO_COMMON
298af3d54b9SSrinivas Kandagatla	imply SND_SOC_LPASS_RX_MACRO
299c39667ddSSrinivas Kandagatla	imply SND_SOC_LPASS_TX_MACRO
300ea00d952SGeert Uytterhoeven	imply SND_SOC_WL1273
301ea00d952SGeert Uytterhoeven	imply SND_SOC_WM0010
302ea00d952SGeert Uytterhoeven	imply SND_SOC_WM1250_EV1
303ea00d952SGeert Uytterhoeven	imply SND_SOC_WM2000
304ea00d952SGeert Uytterhoeven	imply SND_SOC_WM2200
305ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5100
306ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5102
307ea00d952SGeert Uytterhoeven	imply SND_SOC_WM5110
308ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8350
309ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8400
310ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8510
311ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8523
312ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8524
313ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8580
314ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8711
315ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8727
316ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8728
3179dc15f81SMark Brown	imply SND_SOC_WM8731_I2C
3189dc15f81SMark Brown	imply SND_SOC_WM8731_SPI
319ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8737
320ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8741
321ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8750
322ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8753
323ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8770
324ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8776
325ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8782
326ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8804_I2C
327ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8804_SPI
328ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8900
329ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8903
330ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8904
331ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8940
332ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8955
333ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8960
334ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8961
335ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8962
336ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8971
337ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8974
338ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8978
339ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8983
340ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8985
341ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8988
342ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8990
343ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8991
344ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8993
345ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8994
346ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8995
347ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8996
348ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8997
349ea00d952SGeert Uytterhoeven	imply SND_SOC_WM8998
350ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9081
351ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9090
352ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9705
353ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9712
354ea00d952SGeert Uytterhoeven	imply SND_SOC_WM9713
355ea00d952SGeert Uytterhoeven	imply SND_SOC_WSA881X
35643b8c7dcSSrinivas Kandagatla	imply SND_SOC_WSA883X
357aa21a7d4SKrzysztof Kozlowski	imply SND_SOC_WSA884X
35852e8a94bSSven Van Asbroeck	imply SND_SOC_ZL38060
3590c941615SMark Brown	help
3600c941615SMark Brown	  Normally ASoC codec drivers are only built if a machine driver which
3610c941615SMark Brown	  uses them is also built since they are only usable with a machine
3620c941615SMark Brown	  driver.  Selecting this option will allow these drivers to be built
3630c941615SMark Brown	  without an explicit machine driver for test and development purposes.
3640c941615SMark Brown
365ca53fb24SMark Brown	  Support for the bus types used to access the codecs to be built must
366ca53fb24SMark Brown	  be selected separately.
367ca53fb24SMark Brown
3680c941615SMark Brown	  If unsure select "N".
3690c941615SMark Brown
370f213f4b5SHaojian Zhuangconfig SND_SOC_88PM860X
371f213f4b5SHaojian Zhuang	tristate
372ea00d952SGeert Uytterhoeven	depends on MFD_88PM860X
373f213f4b5SHaojian Zhuang
37407ed873eSMark Brownconfig SND_SOC_ARIZONA
37507ed873eSMark Brown	tristate
3766610550cSRichard Fitzgerald	default y if SND_SOC_CS47L24=y
37707ed873eSMark Brown	default y if SND_SOC_WM5102=y
3785c6af635SMark Brown	default y if SND_SOC_WM5110=y
37940843aeaSCharles Keepax	default y if SND_SOC_WM8997=y
3806ebbce0aSRichard Fitzgerald	default y if SND_SOC_WM8998=y
3816610550cSRichard Fitzgerald	default m if SND_SOC_CS47L24=m
38207ed873eSMark Brown	default m if SND_SOC_WM5102=m
3835c6af635SMark Brown	default m if SND_SOC_WM5110=m
38440843aeaSCharles Keepax	default m if SND_SOC_WM8997=m
3856ebbce0aSRichard Fitzgerald	default m if SND_SOC_WM8998=m
38607ed873eSMark Brown
387a2342ae3SMark Brownconfig SND_SOC_WM_HUBS
388a2342ae3SMark Brown	tristate
38941f9a314SChanwoo Choi	default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
39041f9a314SChanwoo Choi	default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
3910c941615SMark Brown
3922159ad93SMark Brownconfig SND_SOC_WM_ADSP
3932159ad93SMark Brown	tristate
394d7cfdf17SRichard Fitzgerald	select FW_CS_DSP
3951d981e0aSCharles Keepax	select SND_SOC_COMPRESS
3962735b683SRichard Fitzgerald	default y if SND_SOC_MADERA=y
3976610550cSRichard Fitzgerald	default y if SND_SOC_CS47L24=y
398804f5ba7SMark Brown	default y if SND_SOC_WM5102=y
3999a3e1b8cSMark Brown	default y if SND_SOC_WM5110=y
4002159ad93SMark Brown	default y if SND_SOC_WM2200=y
401bae9e13fSDavid Rhodes	default y if SND_SOC_CS35L41_SPI=y
402bae9e13fSDavid Rhodes	default y if SND_SOC_CS35L41_I2C=y
40374b14e28SVlad.Karpovich	default y if SND_SOC_CS35L45_SPI=y
40474b14e28SVlad.Karpovich	default y if SND_SOC_CS35L45_I2C=y
405e4961125SRichard Fitzgerald	default y if SND_SOC_CS35L56=y
4062735b683SRichard Fitzgerald	default m if SND_SOC_MADERA=m
4076610550cSRichard Fitzgerald	default m if SND_SOC_CS47L24=m
408804f5ba7SMark Brown	default m if SND_SOC_WM5102=m
4099a3e1b8cSMark Brown	default m if SND_SOC_WM5110=m
4102159ad93SMark Brown	default m if SND_SOC_WM2200=m
411bae9e13fSDavid Rhodes	default m if SND_SOC_CS35L41_SPI=m
412bae9e13fSDavid Rhodes	default m if SND_SOC_CS35L41_I2C=m
41374b14e28SVlad.Karpovich	default m if SND_SOC_CS35L45_SPI=m
41474b14e28SVlad.Karpovich	default m if SND_SOC_CS35L45_I2C=m
415e4961125SRichard Fitzgerald	default m if SND_SOC_CS35L56=m
4162159ad93SMark Brown
417679d7abdSOla Liljaconfig SND_SOC_AB8500_CODEC
418679d7abdSOla Lilja	tristate
419d8dd3f92SGeert Uytterhoeven	depends on ABX500_CORE
420679d7abdSOla Lilja
4217f137ab6SRichard Purdieconfig SND_SOC_AC97_CODEC
422a60abdf9SMaciej S. Szmigiero	tristate "Build generic ASoC AC97 CODEC driver"
42389fe5117STakashi Iwai	select SND_AC97_CODEC
424a60abdf9SMaciej S. Szmigiero	select SND_SOC_AC97_BUS
4257f137ab6SRichard Purdie
4267eaae41eSBarry Songconfig SND_SOC_AD1836
4277eaae41eSBarry Song	tristate
428ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
4297eaae41eSBarry Song
430a1533d94SBarry Songconfig SND_SOC_AD193X
4311274738dSBarry Song	tristate
4321274738dSBarry Song
4336c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_SPI
4346c3d713eSLars-Peter Clausen	tristate
435ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
4366c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
4376c3d713eSLars-Peter Clausen
4386c3d713eSLars-Peter Clausenconfig SND_SOC_AD193X_I2C
4396c3d713eSLars-Peter Clausen	tristate
4401d0158f5SGeert Uytterhoeven	depends on I2C
4416c3d713eSLars-Peter Clausen	select SND_SOC_AD193X
4426c3d713eSLars-Peter Clausen
4435f57dc8bSCliff Caiconfig SND_SOC_AD1980
4445f57dc8bSCliff Cai	tristate
445d8dd3f92SGeert Uytterhoeven	depends on SND_SOC_AC97_BUS
446d8dd3f92SGeert Uytterhoeven	select REGMAP_AC97
4475f57dc8bSCliff Cai
4480e77e784SCliff Caiconfig SND_SOC_AD73311
4490e77e784SCliff Cai	tristate
4500e77e784SCliff Cai
4510eadaa9cSLars-Peter Clausenconfig SND_SOC_ADAU_UTILS
4520eadaa9cSLars-Peter Clausen	tristate
4530eadaa9cSLars-Peter Clausen
4546cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372
4556cd4c645SLars-Peter Clausen	tristate
4566cd4c645SLars-Peter Clausen	select SND_SOC_ADAU_UTILS
4576cd4c645SLars-Peter Clausen
4586cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372_I2C
4596cd4c645SLars-Peter Clausen	tristate "Analog Devices ADAU1372 CODEC (I2C)"
460adc7d561SAlexandre Belloni	depends on I2C
4616cd4c645SLars-Peter Clausen	select SND_SOC_ADAU1372
4626cd4c645SLars-Peter Clausen	select REGMAP_I2C
4636cd4c645SLars-Peter Clausen
4646cd4c645SLars-Peter Clausenconfig SND_SOC_ADAU1372_SPI
4656cd4c645SLars-Peter Clausen	tristate "Analog Devices ADAU1372 CODEC (SPI)"
466adc7d561SAlexandre Belloni	depends on SPI
4676cd4c645SLars-Peter Clausen	select SND_SOC_ADAU1372
4686cd4c645SLars-Peter Clausen	select REGMAP_SPI
4696cd4c645SLars-Peter Clausen
4704101866cSLars-Peter Clausenconfig SND_SOC_ADAU1373
471bebf0f45SNuno Sa	tristate "Analog Devices ADAU1373 CODEC"
4721d0158f5SGeert Uytterhoeven	depends on I2C
4730eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
4744101866cSLars-Peter Clausen
475631ed8a2SLars-Peter Clausenconfig SND_SOC_ADAU1701
4761291e141SMark Brown	tristate "Analog Devices ADAU1701 CODEC"
4771291e141SMark Brown	depends on I2C
4786b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_I2C
479631ed8a2SLars-Peter Clausen
4804101866cSLars-Peter Clausenconfig SND_SOC_ADAU17X1
481ddd7a260SLars-Peter Clausen	tristate
4826b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP_REGMAP
4830eadaa9cSLars-Peter Clausen	select SND_SOC_ADAU_UTILS
484ddd7a260SLars-Peter Clausen
485dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761
486dab464b6SLars-Peter Clausen	tristate
487dab464b6SLars-Peter Clausen	select SND_SOC_ADAU17X1
488dab464b6SLars-Peter Clausen
489dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_I2C
490e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - I2C"
491e54fde61SBryce Ferguson	depends on I2C
492dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
493dab464b6SLars-Peter Clausen	select REGMAP_I2C
494dab464b6SLars-Peter Clausen
495dab464b6SLars-Peter Clausenconfig SND_SOC_ADAU1761_SPI
496e54fde61SBryce Ferguson	tristate "Analog Devices AU1761 CODEC - SPI"
497e54fde61SBryce Ferguson	depends on SPI
498dab464b6SLars-Peter Clausen	select SND_SOC_ADAU1761
499dab464b6SLars-Peter Clausen	select REGMAP_SPI
500dab464b6SLars-Peter Clausen
5012923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781
5022923af02SLars-Peter Clausen	select SND_SOC_ADAU17X1
5032923af02SLars-Peter Clausen	tristate
5042923af02SLars-Peter Clausen
5052923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_I2C
5062923af02SLars-Peter Clausen	tristate
5071d0158f5SGeert Uytterhoeven	depends on I2C
5082923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
5092923af02SLars-Peter Clausen	select REGMAP_I2C
5102923af02SLars-Peter Clausen
5112923af02SLars-Peter Clausenconfig SND_SOC_ADAU1781_SPI
5122923af02SLars-Peter Clausen	tristate
513ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
5142923af02SLars-Peter Clausen	select SND_SOC_ADAU1781
5152923af02SLars-Peter Clausen	select REGMAP_SPI
5162dcf9fb9SGraeme Gregory
517603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977
518603597c9SLars-Peter Clausen	tristate
519603597c9SLars-Peter Clausen
520603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_SPI
521603597c9SLars-Peter Clausen	tristate
522ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
523603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
524603597c9SLars-Peter Clausen	select REGMAP_SPI
525603597c9SLars-Peter Clausen
526603597c9SLars-Peter Clausenconfig SND_SOC_ADAU1977_I2C
527603597c9SLars-Peter Clausen	tristate
5281d0158f5SGeert Uytterhoeven	depends on I2C
529603597c9SLars-Peter Clausen	select SND_SOC_ADAU1977
530603597c9SLars-Peter Clausen	select REGMAP_I2C
531603597c9SLars-Peter Clausen
532a0d3546cSLars-Peter Clausenconfig SND_SOC_ADAU7002
533a0d3546cSLars-Peter Clausen	tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
534a0d3546cSLars-Peter Clausen
535ca514c0fSNuno Sáconfig SND_SOC_ADAU7118
536ca514c0fSNuno Sá	tristate
537ca514c0fSNuno Sá
538ca514c0fSNuno Sáconfig SND_SOC_ADAU7118_HW
539ca514c0fSNuno Sá	tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode"
540ca514c0fSNuno Sá	select SND_SOC_ADAU7118
541ca514c0fSNuno Sá	help
542ca514c0fSNuno Sá	  Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
543ca514c0fSNuno Sá	  Converter. In this mode, the device works in standalone mode which
5444ad2d3cfSColin Ian King	  means that there is no bus to communicate with it. Stereo mode is not
545ca514c0fSNuno Sá	  supported in this mode.
546ca514c0fSNuno Sá
547ca514c0fSNuno Sá	  To compile this driver as a module, choose M here: the module
548ca514c0fSNuno Sá	  will be called snd-soc-adau7118-hw.
549ca514c0fSNuno Sá
550ca514c0fSNuno Sáconfig SND_SOC_ADAU7118_I2C
551ca514c0fSNuno Sá	tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C"
552de729862SYueHaibing	depends on I2C
553ca514c0fSNuno Sá	select SND_SOC_ADAU7118
554ca514c0fSNuno Sá	select REGMAP_I2C
555ca514c0fSNuno Sá	help
556ca514c0fSNuno Sá	  Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM
557ca514c0fSNuno Sá	  Converter over I2C. This gives full support over the device.
558ca514c0fSNuno Sá
559ca514c0fSNuno Sá	  To compile this driver as a module, choose M here: the module
560ca514c0fSNuno Sá	  will be called snd-soc-adau7118-i2c.
561ca514c0fSNuno Sá
5622dcf9fb9SGraeme Gregoryconfig SND_SOC_ADAV80X
5632dcf9fb9SGraeme Gregory	tristate
564a381934eSDaniel Mack
5650c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV801
5660c2d6964SLars-Peter Clausen	tristate
567ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
5680c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
5690c2d6964SLars-Peter Clausen
5700c2d6964SLars-Peter Clausenconfig SND_SOC_ADAV803
5710c2d6964SLars-Peter Clausen	tristate
5721d0158f5SGeert Uytterhoeven	depends on I2C
5730c2d6964SLars-Peter Clausen	select SND_SOC_ADAV80X
5740c2d6964SLars-Peter Clausen
575a381934eSDaniel Mackconfig SND_SOC_ADS117X
576a381934eSDaniel Mack	tristate
577796d2ca8SRichard Purdie
578796d2ca8SRichard Purdieconfig SND_SOC_AK4104
5791291e141SMark Brown	tristate "AKM AK4104 CODEC"
5801291e141SMark Brown	depends on SPI_MASTER
5813e860846SMark Brown
582bf897b44SAdrien Charruelconfig SND_SOC_AK4118
583bf897b44SAdrien Charruel	tristate "AKM AK4118 CODEC"
584bf897b44SAdrien Charruel	depends on I2C
585bf897b44SAdrien Charruel	select REGMAP_I2C
586bf897b44SAdrien Charruel
58753778b82SVincent Knechtconfig SND_SOC_AK4375
58853778b82SVincent Knecht	tristate "AKM AK4375 CODEC"
58953778b82SVincent Knecht	depends on I2C
59053778b82SVincent Knecht	select REGMAP_I2C
59153778b82SVincent Knecht	help
59253778b82SVincent Knecht	  Enable support for the Asahi-Kasei AK4375 codec.
59353778b82SVincent Knecht
59453778b82SVincent Knecht	  To compile this driver as a module, choose M here: the module
59553778b82SVincent Knecht	  will be called snd-soc-ak4375.
59653778b82SVincent Knecht
59708660086SCosmin-Gabriel Samoilaconfig SND_SOC_AK4458
59808660086SCosmin-Gabriel Samoila	tristate "AKM AK4458 CODEC"
59908660086SCosmin-Gabriel Samoila	depends on I2C
60008660086SCosmin-Gabriel Samoila	select REGMAP_I2C
60108660086SCosmin-Gabriel Samoila
602796d2ca8SRichard Purdieconfig SND_SOC_AK4535
603796d2ca8SRichard Purdie	tristate
6041d0158f5SGeert Uytterhoeven	depends on I2C
605796d2ca8SRichard Purdie
606a2911cdbSKuninori Morimotoconfig SND_SOC_AK4554
6071291e141SMark Brown	tristate "AKM AK4554 CODEC"
608a2911cdbSKuninori Morimoto
609b0757062SKuninori Morimotoconfig SND_SOC_AK4613
610b0757062SKuninori Morimoto	tristate "AKM AK4613 CODEC"
611b0757062SKuninori Morimoto	depends on I2C
612b0757062SKuninori Morimoto
613ca73d314SKhanh Leconfig SND_SOC_AK4619
614ca73d314SKhanh Le        tristate "AKM AK4619 CODEC"
615ca73d314SKhanh Le        depends on I2C
616ca73d314SKhanh Le
61700d27010SDmitry Artamonowconfig SND_SOC_AK4641
61800d27010SDmitry Artamonow	tristate
6191d0158f5SGeert Uytterhoeven	depends on I2C
62000d27010SDmitry Artamonow
621a3a83d9aSKuninori Morimotoconfig SND_SOC_AK4642
6221291e141SMark Brown	tristate "AKM AK4642 CODEC"
6231291e141SMark Brown	depends on I2C
624a3a83d9aSKuninori Morimoto
6252312fd8fSJoonyoung Shimconfig SND_SOC_AK4671
6262312fd8fSJoonyoung Shim	tristate
6271d0158f5SGeert Uytterhoeven	depends on I2C
6282312fd8fSJoonyoung Shim
629cc289be8SDaniel Mackconfig SND_SOC_AK5386
6301291e141SMark Brown	tristate "AKM AK5638 CODEC"
631cc289be8SDaniel Mack
63292088477SDaniel Balutaconfig SND_SOC_AK5558
63392088477SDaniel Baluta	tristate "AKM AK5558 CODEC"
63492088477SDaniel Baluta	depends on I2C
63592088477SDaniel Baluta	select REGMAP_I2C
63692088477SDaniel Baluta
6376f4bc952SArnaud Patard (Rtp)config SND_SOC_ALC5623
6387d6d478fSAndrew Lunn	tristate "Realtek ALC5623 CODEC"
6395dc04f51STakashi Iwai	depends on I2C
6401291e141SMark Brown
64194d5f7c0SLeon Romanovskyconfig SND_SOC_ALC5632
64294d5f7c0SLeon Romanovsky	tristate
643ce0c97f8SGeert Uytterhoeven	depends on I2C
6446f4bc952SArnaud Patard (Rtp)
6451d298ad8SHerve Codinaconfig SND_SOC_AUDIO_IIO_AUX
6461d298ad8SHerve Codina	tristate "Audio IIO Auxiliary device"
6471d298ad8SHerve Codina	depends on IIO
6481d298ad8SHerve Codina	help
6491d298ad8SHerve Codina	  Enable support for Industrial I/O devices as audio auxiliary devices.
6501d298ad8SHerve Codina	  This allows to have an IIO device present in the audio path and
6511d298ad8SHerve Codina	  controlled using mixer controls.
6521d298ad8SHerve Codina
6531d298ad8SHerve Codina	  To compile this driver as a module, choose M here: the module
6541d298ad8SHerve Codina	  will be called snd-soc-audio-iio-aux.
6551d298ad8SHerve Codina
6566b4528b5SJonathan Albrieuxconfig SND_SOC_AW8738
6576b4528b5SJonathan Albrieux	tristate "Awinic AW8738 Audio Amplifier"
6586b4528b5SJonathan Albrieux	select GPIOLIB
6596b4528b5SJonathan Albrieux	help
6606b4528b5SJonathan Albrieux	  Enable support for the Awinic AW8738 audio amplifier (or similar).
6616b4528b5SJonathan Albrieux	  The driver supports simple audio amplifiers similar to
6626b4528b5SJonathan Albrieux	  SND_SOC_SIMPLE_AMPLIFIER, but additionally allows setting the
6636b4528b5SJonathan Albrieux	  operation mode using the Awinic-specific one-wire pulse control.
6646b4528b5SJonathan Albrieux
66514bd8572SWeidong Wangconfig SND_SOC_AW88395_LIB
6664717636fSWeidong Wang	select CRC8
66714bd8572SWeidong Wang	tristate
66814bd8572SWeidong Wang
66914bd8572SWeidong Wangconfig SND_SOC_AW88395
67014bd8572SWeidong Wang	tristate "Soc Audio for awinic aw88395"
67114bd8572SWeidong Wang	depends on I2C
67214bd8572SWeidong Wang	select CRC32
67314bd8572SWeidong Wang	select REGMAP_I2C
6744680716dSWeidong Wang	select GPIOLIB
67514bd8572SWeidong Wang	select SND_SOC_AW88395_LIB
67614bd8572SWeidong Wang	help
67714bd8572SWeidong Wang	  this option enables support for aw88395 Smart PA.
67814bd8572SWeidong Wang	  The Awinic AW88395 is an I2S/TDM input, high efficiency
67914bd8572SWeidong Wang	  digital Smart K audio amplifier with an integrated 10V
68014bd8572SWeidong Wang	  smart boost convert.
68114bd8572SWeidong Wang
68294e412c2SWeidong Wangconfig SND_SOC_AW88166
68394e412c2SWeidong Wang	tristate "Soc Audio for awinic aw88166"
68494e412c2SWeidong Wang	depends on I2C
68594e412c2SWeidong Wang	select REGMAP_I2C
68694e412c2SWeidong Wang	select GPIOLIB
68794e412c2SWeidong Wang	select SND_SOC_AW88395_LIB
68894e412c2SWeidong Wang	help
68994e412c2SWeidong Wang	  This option enables support for aw88166 Smart PA.
69094e412c2SWeidong Wang	  The awinic AW88166 is an I2S/TDM input, high efficiency
69194e412c2SWeidong Wang	  digital Smart K audio amplifier with sound quality
69294e412c2SWeidong Wang	  enhancement algorithms and speaker protection.
69394e412c2SWeidong Wang
694028a2ae2SWeidong Wangconfig SND_SOC_AW88261
695028a2ae2SWeidong Wang	tristate "Soc Audio for awinic aw88261"
696028a2ae2SWeidong Wang	depends on I2C
697028a2ae2SWeidong Wang	select REGMAP_I2C
698028a2ae2SWeidong Wang	select GPIOLIB
699028a2ae2SWeidong Wang	select SND_SOC_AW88395_LIB
700028a2ae2SWeidong Wang	help
701028a2ae2SWeidong Wang	  This option enables support for aw88261 Smart PA.
702028a2ae2SWeidong Wang	  The awinic AW88261 is an I2S/TDM input, high efficiency
703028a2ae2SWeidong Wang	  digital Smart K audio amplifier. The output voltage of
704028a2ae2SWeidong Wang	  boost converter can be adjusted smartly according to
705028a2ae2SWeidong Wang	  the input amplitude.
706028a2ae2SWeidong Wang
70788264e4fSWeidong Wangconfig SND_SOC_AW88081
708be947cc0SWeidong Wang	tristate "Soc Audio for awinic aw88081/aw88083"
70988264e4fSWeidong Wang	depends on I2C
71088264e4fSWeidong Wang	select REGMAP_I2C
71188264e4fSWeidong Wang	select SND_SOC_AW88395_LIB
71288264e4fSWeidong Wang	help
71388264e4fSWeidong Wang	  This option enables support for aw88081 Smart PA.
71488264e4fSWeidong Wang	  The awinic AW88081 is an I2S/TDM input, high efficiency
71588264e4fSWeidong Wang	  digital Smart K audio amplifier. Due to its 9uV noise
71688264e4fSWeidong Wang	  floor and ultra-low distortion, clean listening is guaranteed.
71788264e4fSWeidong Wang
7184717636fSWeidong Wangconfig SND_SOC_AW87390
7194717636fSWeidong Wang	tristate "Soc Audio for awinic aw87390"
7204717636fSWeidong Wang	depends on I2C
7214717636fSWeidong Wang	select REGMAP_I2C
7224717636fSWeidong Wang	select SND_SOC_AW88395_LIB
7234717636fSWeidong Wang	help
7244717636fSWeidong Wang	  The awinic aw87390 is specifically designed to improve
7254717636fSWeidong Wang	  the musical output dynamic range, enhance the overall
7264717636fSWeidong Wang	  sound quality, which is a new high efficiency, low
7274717636fSWeidong Wang	  noise, constant large volume, 6th Smart K audio amplifier.
7284717636fSWeidong Wang
7298ade6cc7SWeidong Wangconfig SND_SOC_AW88399
7308ade6cc7SWeidong Wang	tristate "Soc Audio for awinic aw88399"
7318ade6cc7SWeidong Wang	depends on I2C
7328ade6cc7SWeidong Wang	select CRC8
7338ade6cc7SWeidong Wang	select REGMAP_I2C
7348ade6cc7SWeidong Wang	select GPIOLIB
735cf046ecbSArnd Bergmann	select SND_SOC_AW88395_LIB
7368ade6cc7SWeidong Wang	help
7378ade6cc7SWeidong Wang	  This option enables support for aw88399 Smart PA.
7388ade6cc7SWeidong Wang	  The awinic AW88399 is an I2S/TDM input, high efficiency
7398ade6cc7SWeidong Wang	  digital Smart K audio amplifier and SKTune speaker
7408ade6cc7SWeidong Wang	  protection algorithms.
7418ade6cc7SWeidong Wang
742f6d4b052SKatsuhiro Suzukiconfig SND_SOC_BD28623
743f6d4b052SKatsuhiro Suzuki	tristate "ROHM BD28623 CODEC"
744f6d4b052SKatsuhiro Suzuki	help
745f6d4b052SKatsuhiro Suzuki	  Enable support for ROHM BD28623MUV Class D speaker amplifier.
746f6d4b052SKatsuhiro Suzuki	  This codec does not have any control buses such as I2C, it
747f6d4b052SKatsuhiro Suzuki	  detect format of I2S automatically.
748f6d4b052SKatsuhiro Suzuki
74954aba08fSKuninori Morimotoconfig SND_SOC_BT_SCO
7508b0b50d8SGarlic Tseng	tristate "Dummy BT SCO codec driver"
75154aba08fSKuninori Morimoto
75261ed3034SPaweł Anikielconfig SND_SOC_CHV3_CODEC
75361ed3034SPaweł Anikiel	tristate "Google Chameleon v3 codec driver"
75461ed3034SPaweł Anikiel	help
75561ed3034SPaweł Anikiel	  Enable support for the Google Chameleon v3 audio codec.
75661ed3034SPaweł Anikiel	  This codec does not have a control interface, it always outputs
75761ed3034SPaweł Anikiel	  8 channel S32_LE audio.
75861ed3034SPaweł Anikiel
759f6cdf2d3SSebastian Reichelconfig SND_SOC_CPCAP
760f6cdf2d3SSebastian Reichel	tristate "Motorola CPCAP codec"
7615b7f4e5dSKrzysztof Kozlowski	depends on MFD_CPCAP || COMPILE_TEST
762f6cdf2d3SSebastian Reichel
763b56e972bSMiguel Aguilarconfig SND_SOC_CQ0093VC
764b56e972bSMiguel Aguilar	tristate
765b56e972bSMiguel Aguilar
766b291f42aSCheng-Yi Chiangconfig SND_SOC_CROS_EC_CODEC
767b291f42aSCheng-Yi Chiang	tristate "codec driver for ChromeOS EC"
76847f11e0bSEnric Balletbo i Serra	depends on CROS_EC
76950b18e4aSNecip Fazil Yildiran	select CRYPTO
77093fa0af4SArd Biesheuvel	select CRYPTO_LIB_SHA256
771b291f42aSCheng-Yi Chiang	help
772b291f42aSCheng-Yi Chiang	  If you say yes here you will get support for the
773b291f42aSCheng-Yi Chiang	  ChromeOS Embedded Controller's Audio Codec.
774b291f42aSCheng-Yi Chiang
7751cad8725SRichard Fitzgeraldconfig SND_SOC_CS_AMP_LIB
7761cad8725SRichard Fitzgerald	tristate
7771cad8725SRichard Fitzgerald
77817786231SRichard Fitzgeraldconfig SND_SOC_CS_AMP_LIB_TEST
779*96014d91SRichard Fitzgerald	tristate "KUnit test for Cirrus Logic cs-amp-lib" if !KUNIT_ALL_TESTS
780*96014d91SRichard Fitzgerald	depends on SND_SOC_CS_AMP_LIB && KUNIT
78117786231SRichard Fitzgerald	default KUNIT_ALL_TESTS
78217786231SRichard Fitzgerald	help
78317786231SRichard Fitzgerald	  This builds KUnit tests for the Cirrus Logic common
78417786231SRichard Fitzgerald	  amplifier library.
78517786231SRichard Fitzgerald	  For more information on KUnit and unit tests in general,
78617786231SRichard Fitzgerald	  please refer to the KUnit documentation in
78717786231SRichard Fitzgerald	  Documentation/dev-tools/kunit/.
78817786231SRichard Fitzgerald	  If in doubt, say "N".
78917786231SRichard Fitzgerald
790eef5bb24SBrian Austinconfig SND_SOC_CS35L32
791eef5bb24SBrian Austin	tristate "Cirrus Logic CS35L32 CODEC"
792eef5bb24SBrian Austin	depends on I2C
793eef5bb24SBrian Austin
7943333cb71SPaul Handriganconfig SND_SOC_CS35L33
7953333cb71SPaul Handrigan	tristate "Cirrus Logic CS35L33 CODEC"
7963333cb71SPaul Handrigan	depends on I2C
7973333cb71SPaul Handrigan
798c1124c09SPaul Handriganconfig SND_SOC_CS35L34
799c1124c09SPaul Handrigan	tristate "Cirrus Logic CS35L34 CODEC"
800c1124c09SPaul Handrigan	depends on I2C
801c1124c09SPaul Handrigan
8026387f866SBrian Austinconfig SND_SOC_CS35L35
8036387f866SBrian Austin	tristate "Cirrus Logic CS35L35 CODEC"
8046387f866SBrian Austin	depends on I2C
8056387f866SBrian Austin
8066ba9dd6cSJames Schulmanconfig SND_SOC_CS35L36
8076ba9dd6cSJames Schulman	tristate "Cirrus Logic CS35L36 CODEC"
8086ba9dd6cSJames Schulman	depends on I2C
8096ba9dd6cSJames Schulman
810a87d4222SLucas Tanureconfig SND_SOC_CS35L41_LIB
811a87d4222SLucas Tanure	tristate
812a87d4222SLucas Tanure
813a5e0091dSLucas Tanureconfig SND_SOC_CS35L41
814a5e0091dSLucas Tanure	tristate
815a5e0091dSLucas Tanure
8166450ef55SDavid Rhodesconfig SND_SOC_CS35L41_SPI
8176450ef55SDavid Rhodes	tristate "Cirrus Logic CS35L41 CODEC (SPI)"
8186450ef55SDavid Rhodes	depends on SPI_MASTER
819a87d4222SLucas Tanure	select SND_SOC_CS35L41_LIB
820a87d4222SLucas Tanure	select SND_SOC_CS35L41
8216450ef55SDavid Rhodes	select REGMAP_SPI
8226450ef55SDavid Rhodes
8236450ef55SDavid Rhodesconfig SND_SOC_CS35L41_I2C
8246450ef55SDavid Rhodes	tristate "Cirrus Logic CS35L41 CODEC (I2C)"
8256450ef55SDavid Rhodes	depends on I2C
826a87d4222SLucas Tanure	select SND_SOC_CS35L41_LIB
827a87d4222SLucas Tanure	select SND_SOC_CS35L41
8286450ef55SDavid Rhodes	select REGMAP_I2C
8296450ef55SDavid Rhodes
8300d463d01SJames Schulmanconfig SND_SOC_CS35L45
8310d463d01SJames Schulman	tristate
832d9ba2975SNathan Chancellor	select REGMAP_IRQ
8330d463d01SJames Schulman
8340d463d01SJames Schulmanconfig SND_SOC_CS35L45_SPI
8350d463d01SJames Schulman	tristate "Cirrus Logic CS35L45 CODEC (SPI)"
8360d463d01SJames Schulman	depends on SPI_MASTER
8370d463d01SJames Schulman	select REGMAP
8380d463d01SJames Schulman	select REGMAP_SPI
8390d463d01SJames Schulman	select SND_SOC_CS35L45
8400d463d01SJames Schulman	help
8410d463d01SJames Schulman	  Enable support for Cirrus Logic CS35L45 smart speaker amplifier
8420d463d01SJames Schulman	  with SPI control.
8430d463d01SJames Schulman
8440d463d01SJames Schulmanconfig SND_SOC_CS35L45_I2C
8450d463d01SJames Schulman	tristate "Cirrus Logic CS35L45 CODEC (I2C)"
8460d463d01SJames Schulman	depends on I2C
8470d463d01SJames Schulman	select REGMAP
8480d463d01SJames Schulman	select REGMAP_I2C
8490d463d01SJames Schulman	select SND_SOC_CS35L45
8500d463d01SJames Schulman	help
8510d463d01SJames Schulman	  Enable support for Cirrus Logic CS35L45 smart speaker amplifier
8520d463d01SJames Schulman	  with I2C control.
8530d463d01SJames Schulman
854e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56
855e4961125SRichard Fitzgerald	tristate
856e4961125SRichard Fitzgerald
857e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SHARED
858e1830f66SRichard Fitzgerald	select SND_SOC_CS_AMP_LIB
859e4961125SRichard Fitzgerald	tristate
860e4961125SRichard Fitzgerald
861e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_I2C
862e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (I2C)"
863e4961125SRichard Fitzgerald	depends on I2C
864e4961125SRichard Fitzgerald	depends on SOUNDWIRE || !SOUNDWIRE
865e4961125SRichard Fitzgerald	select REGMAP_I2C
866e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
867e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
868e4961125SRichard Fitzgerald	help
869e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with I2C control
870e4961125SRichard Fitzgerald
871e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SPI
872e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (SPI)"
873e4961125SRichard Fitzgerald	depends on SPI_MASTER
874e4961125SRichard Fitzgerald	depends on SOUNDWIRE || !SOUNDWIRE
875e4961125SRichard Fitzgerald	select REGMAP_SPI
876e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
877e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
878e4961125SRichard Fitzgerald	help
879e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with SPI control
880e4961125SRichard Fitzgerald
881e4961125SRichard Fitzgeraldconfig SND_SOC_CS35L56_SDW
882e4961125SRichard Fitzgerald	tristate "Cirrus Logic CS35L56 CODEC (SDW)"
883e4961125SRichard Fitzgerald	depends on SOUNDWIRE
884e4961125SRichard Fitzgerald	select REGMAP
885e4961125SRichard Fitzgerald	select SND_SOC_CS35L56
886e4961125SRichard Fitzgerald	select SND_SOC_CS35L56_SHARED
887e4961125SRichard Fitzgerald	help
888e4961125SRichard Fitzgerald	  Enable support for Cirrus Logic CS35L56 boosted amplifier with SoundWire control
889e4961125SRichard Fitzgerald
890c486def5SJames Ogletreeconfig SND_SOC_CS40L50
891c486def5SJames Ogletree	tristate "Cirrus Logic CS40L50 CODEC"
892c486def5SJames Ogletree	depends on MFD_CS40L50_CORE
893c486def5SJames Ogletree	help
894c486def5SJames Ogletree	  This option enables support for I2S streaming to Cirrus Logic CS40L50.
895c486def5SJames Ogletree
896c486def5SJames Ogletree	  CS40L50 is a haptic driver with waveform memory, an integrated
897c486def5SJames Ogletree	  DSP, and closed-loop algorithms. If built as a module, it will be
898c486def5SJames Ogletree	  called snd-soc-cs40l50.
899c486def5SJames Ogletree
900ae9f5e60SRichard Fitzgeraldconfig SND_SOC_CS42L42_CORE
901ae9f5e60SRichard Fitzgerald	tristate
902ae9f5e60SRichard Fitzgerald
9032c394ca7SJames Schulmanconfig SND_SOC_CS42L42
904ae9f5e60SRichard Fitzgerald	tristate "Cirrus Logic CS42L42 CODEC (I2C)"
9052c394ca7SJames Schulman	depends on I2C
906ae9f5e60SRichard Fitzgerald	select REGMAP
907ae9f5e60SRichard Fitzgerald	select REGMAP_I2C
908ae9f5e60SRichard Fitzgerald	select SND_SOC_CS42L42_CORE
9092c394ca7SJames Schulman
91090f6a2a2SRichard Fitzgeraldconfig SND_SOC_CS42L42_SDW
91190f6a2a2SRichard Fitzgerald	tristate "Cirrus Logic CS42L42 CODEC on Soundwire"
91290f6a2a2SRichard Fitzgerald	depends on SOUNDWIRE
91390f6a2a2SRichard Fitzgerald	select SND_SOC_CS42L42_CORE
91490f6a2a2SRichard Fitzgerald	help
91590f6a2a2SRichard Fitzgerald	  Enable support for Cirrus Logic CS42L42 codec with Soundwire control
91690f6a2a2SRichard Fitzgerald
917fc918cbeSCharles Keepaxconfig SND_SOC_CS42L43
918fc918cbeSCharles Keepax	tristate "Cirrus Logic CS42L43 CODEC"
919fc918cbeSCharles Keepax	depends on MFD_CS42L43
920fc918cbeSCharles Keepax	help
921fc918cbeSCharles Keepax	  Select this to support the audio functions of the Cirrus Logic
922fc918cbeSCharles Keepax	  CS42L43 PC CODEC.
923fc918cbeSCharles Keepax
924fc918cbeSCharles Keepaxconfig SND_SOC_CS42L43_SDW
925fc918cbeSCharles Keepax	tristate "Cirrus Logic CS42L43 CODEC (SoundWire)"
926fc918cbeSCharles Keepax	depends on SND_SOC_CS42L43 && MFD_CS42L43_SDW
927fc918cbeSCharles Keepax	help
928fc918cbeSCharles Keepax	  Select this to support the audio functions of the Cirrus Logic
929fc918cbeSCharles Keepax	  CS42L43 PC CODEC over SoundWire.
930fc918cbeSCharles Keepax
93172ed5a8cS[email protected]config SND_SOC_CS42L51
93272ed5a8cS[email protected]	tristate
93372ed5a8cS[email protected]
934a1253ef6SBrian Austinconfig SND_SOC_CS42L51_I2C
9354e449238SThomas Petazzoni	tristate "Cirrus Logic CS42L51 CODEC (I2C)"
936e894beb8SRandy Dunlap	depends on I2C
937a1253ef6SBrian Austin	select SND_SOC_CS42L51
938a1253ef6SBrian Austin
939dfe0f98bSBrian Austinconfig SND_SOC_CS42L52
9401291e141SMark Brown	tristate "Cirrus Logic CS42L52 CODEC"
941a2915d4fSArnd Bergmann	depends on I2C && INPUT
942dfe0f98bSBrian Austin
943272b5eddSBrian Austinconfig SND_SOC_CS42L56
944272b5eddSBrian Austin	tristate "Cirrus Logic CS42L56 CODEC"
945272b5eddSBrian Austin	depends on I2C && INPUT
9463e860846SMark Brown
9473e860846SMark Brownconfig SND_SOC_CS42L73
9481291e141SMark Brown	tristate "Cirrus Logic CS42L73 CODEC"
9491291e141SMark Brown	depends on I2C
9503e860846SMark Brown
95194d5f62aSMartin Povišerconfig SND_SOC_CS42L83
95294d5f62aSMartin Povišer	tristate "Cirrus Logic CS42L83 CODEC"
95394d5f62aSMartin Povišer	depends on I2C
95494d5f62aSMartin Povišer	select REGMAP
95594d5f62aSMartin Povišer	select REGMAP_I2C
95694d5f62aSMartin Povišer	select SND_SOC_CS42L42_CORE
95794d5f62aSMartin Povišer
958250304a0SMartin Povišerconfig SND_SOC_CS42L84
959250304a0SMartin Povišer	tristate "Cirrus Logic CS42L84 CODEC"
960250304a0SMartin Povišer	depends on I2C
961250304a0SMartin Povišer	select REGMAP
962250304a0SMartin Povišer	select REGMAP_I2C
963250304a0SMartin Povišer
964d4edae9cSLucas Tanureconfig SND_SOC_CS4234
965d4edae9cSLucas Tanure	tristate "Cirrus Logic CS4234 CODEC"
966d4edae9cSLucas Tanure	depends on I2C
967d4edae9cSLucas Tanure	select REGMAP_I2C
968d4edae9cSLucas Tanure
969fb6f8069SPaul Handriganconfig SND_SOC_CS4265
970fb6f8069SPaul Handrigan	tristate "Cirrus Logic CS4265 CODEC"
971fb6f8069SPaul Handrigan	depends on I2C
972fb6f8069SPaul Handrigan	select REGMAP_I2C
973fb6f8069SPaul Handrigan
9743e860846SMark Brown# Cirrus Logic CS4270 Codec
9753e860846SMark Brownconfig SND_SOC_CS4270
9761291e141SMark Brown	tristate "Cirrus Logic CS4270 CODEC"
9771291e141SMark Brown	depends on I2C
9783e860846SMark Brown
9793e860846SMark Brown# Cirrus Logic CS4270 Codec VD = 3.3V Errata
9803e860846SMark Brown# Select if you are affected by the errata where the part will not function
9813e860846SMark Brown# if MCLK divide-by-1.5 is selected and VD is set to 3.3V.  The driver will
9823e860846SMark Brown# not select any sample rates that require MCLK to be divided by 1.5.
9833e860846SMark Brownconfig SND_SOC_CS4270_VD33_ERRATA
9843e860846SMark Brown	bool
9853e860846SMark Brown	depends on SND_SOC_CS4270
9863e860846SMark Brown
98767b22517SAlexander Sverdlinconfig SND_SOC_CS4271
988c973b8a7SAxel Lin	tristate
989c973b8a7SAxel Lin
990c973b8a7SAxel Linconfig SND_SOC_CS4271_I2C
991c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (I2C)"
992c973b8a7SAxel Lin	depends on I2C
993c973b8a7SAxel Lin	select SND_SOC_CS4271
994c973b8a7SAxel Lin	select REGMAP_I2C
995c973b8a7SAxel Lin
996c973b8a7SAxel Linconfig SND_SOC_CS4271_SPI
997c973b8a7SAxel Lin	tristate "Cirrus Logic CS4271 CODEC (SPI)"
998c973b8a7SAxel Lin	depends on SPI_MASTER
999c973b8a7SAxel Lin	select SND_SOC_CS4271
1000c973b8a7SAxel Lin	select REGMAP_SPI
100167b22517SAlexander Sverdlin
10020c516b4fSNicolin Chenconfig SND_SOC_CS42XX8
10030c516b4fSNicolin Chen	tristate
10040c516b4fSNicolin Chen
10050c516b4fSNicolin Chenconfig SND_SOC_CS42XX8_I2C
10060c516b4fSNicolin Chen	tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
10070c516b4fSNicolin Chen	depends on I2C
10080c516b4fSNicolin Chen	select SND_SOC_CS42XX8
10090c516b4fSNicolin Chen	select REGMAP_I2C
10100c516b4fSNicolin Chen
10118f1e5bf9SLi Xu# Cirrus Logic CS43130 HiFi DAC
10128f1e5bf9SLi Xuconfig SND_SOC_CS43130
10138f1e5bf9SLi Xu	tristate "Cirrus Logic CS43130 CODEC"
10148f1e5bf9SLi Xu	depends on I2C
10158f1e5bf9SLi Xu
10160f68c396SAlexander Shiyanconfig SND_SOC_CS4341
10170f68c396SAlexander Shiyan	tristate "Cirrus Logic CS4341 CODEC"
10183e8c45f5SAnders Roxell	depends on SND_SOC_I2C_AND_SPI
10190f68c396SAlexander Shiyan	select REGMAP_I2C if I2C
10200f68c396SAlexander Shiyan	select REGMAP_SPI if SPI_MASTER
10210f68c396SAlexander Shiyan
1022e40da86aSTim Howe# Cirrus Logic CS4349 HiFi DAC
1023e40da86aSTim Howeconfig SND_SOC_CS4349
1024e40da86aSTim Howe	tristate "Cirrus Logic CS4349 CODEC"
1025e40da86aSTim Howe	depends on I2C
1026e40da86aSTim Howe
10279cba2d6aSRichard Fitzgeraldconfig SND_SOC_CS47L15
10289cba2d6aSRichard Fitzgerald	tristate
1029ec29170cSCharles Keepax	depends on MFD_CS47L15
10309cba2d6aSRichard Fitzgerald
10316610550cSRichard Fitzgeraldconfig SND_SOC_CS47L24
10326610550cSRichard Fitzgerald	tristate
103333d55070SHans de Goede	depends on MFD_CS47L24 && MFD_ARIZONA
10346610550cSRichard Fitzgerald
1035e6a2b5c0SRichard Fitzgeraldconfig SND_SOC_CS47L35
1036e6a2b5c0SRichard Fitzgerald	tristate
1037ec29170cSCharles Keepax	depends on MFD_CS47L35
1038e6a2b5c0SRichard Fitzgerald
103995a9049bSRichard Fitzgeraldconfig SND_SOC_CS47L85
104095a9049bSRichard Fitzgerald	tristate
1041ec29170cSCharles Keepax	depends on MFD_CS47L85
104295a9049bSRichard Fitzgerald
1043f1572a44SRichard Fitzgeraldconfig SND_SOC_CS47L90
1044f1572a44SRichard Fitzgerald	tristate
1045ec29170cSCharles Keepax	depends on MFD_CS47L90
1046f1572a44SRichard Fitzgerald
10476535e831SStuart Hendersonconfig SND_SOC_CS47L92
10486535e831SStuart Henderson	tristate
1049ec29170cSCharles Keepax	depends on MFD_CS47L92
10506535e831SStuart Henderson
1051de9b1214SNicolin Chen# Cirrus Logic Quad-Channel ADC
1052de9b1214SNicolin Chenconfig SND_SOC_CS53L30
1053de9b1214SNicolin Chen	tristate "Cirrus Logic CS53L30 CODEC"
1054de9b1214SNicolin Chen	depends on I2C
1055de9b1214SNicolin Chen
10562884c291SPaul Handriganconfig SND_SOC_CS530X
10572884c291SPaul Handrigan	tristate
10582884c291SPaul Handrigan
10592884c291SPaul Handriganconfig SND_SOC_CS530X_I2C
10602884c291SPaul Handrigan	tristate "Cirrus Logic CS530x ADCs (I2C)"
10612884c291SPaul Handrigan	depends on I2C
10622884c291SPaul Handrigan	select REGMAP
10632884c291SPaul Handrigan	select REGMAP_I2C
10642884c291SPaul Handrigan	select SND_SOC_CS530X
10652884c291SPaul Handrigan	help
10662884c291SPaul Handrigan	  Enable support for Cirrus Logic CS530X ADCs
10672884c291SPaul Handrigan	  with I2C control.
10682884c291SPaul Handrigan
1069459dc352SJanusz Krzysztofikconfig SND_SOC_CX20442
1070459dc352SJanusz Krzysztofik	tristate
10714f73bc4dSJoe Millenbach	depends on TTY
1072459dc352SJanusz Krzysztofik
1073a497a436SSimon Hoconfig SND_SOC_CX2072X
1074a497a436SSimon Ho	tristate "Conexant CX2072X CODEC"
1075a497a436SSimon Ho	depends on I2C
1076a497a436SSimon Ho	help
1077a497a436SSimon Ho	  Enable support for Conexant CX20721 and CX20723 codec chips.
1078a497a436SSimon Ho
10793b097d64SLars-Peter Clausenconfig SND_SOC_JZ4740_CODEC
1080bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1081e6825baeSPaul Cercueil	depends on OF
1082dd1b18abSLars-Peter Clausen	select REGMAP_MMIO
1083edcd3ed1SPaul Cercueil	tristate "Ingenic JZ4740 internal CODEC"
1084edcd3ed1SPaul Cercueil	help
1085edcd3ed1SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4740 SoC
1086edcd3ed1SPaul Cercueil	  from Ingenic.
1087edcd3ed1SPaul Cercueil
1088edcd3ed1SPaul Cercueil	  This driver can also be built as a module. If so, the module
1089edcd3ed1SPaul Cercueil	  will be called snd-soc-jz4740-codec.
10903b097d64SLars-Peter Clausen
1091e9d97b05SPaul Cercueilconfig SND_SOC_JZ4725B_CODEC
1092bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1093e6825baeSPaul Cercueil	depends on OF
1094e9d97b05SPaul Cercueil	select REGMAP
1095e9d97b05SPaul Cercueil	tristate "Ingenic JZ4725B internal CODEC"
1096e9d97b05SPaul Cercueil	help
1097e9d97b05SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4725B SoC
1098e9d97b05SPaul Cercueil	  from Ingenic.
1099e9d97b05SPaul Cercueil
1100e9d97b05SPaul Cercueil	  This driver can also be built as a module. If so, the module
1101e9d97b05SPaul Cercueil	  will be called snd-soc-jz4725b-codec.
1102e9d97b05SPaul Cercueil
1103d9cd22e9SChristophe Branchereauconfig SND_SOC_JZ4760_CODEC
1104d9cd22e9SChristophe Branchereau        depends on MACH_INGENIC || COMPILE_TEST
1105d9cd22e9SChristophe Branchereau        depends on OF
1106d9cd22e9SChristophe Branchereau        select REGMAP
1107d9cd22e9SChristophe Branchereau        tristate "Ingenic JZ4760 internal CODEC"
1108d9cd22e9SChristophe Branchereau        help
1109d9cd22e9SChristophe Branchereau          Enable support for the internal CODEC found in the JZ4760 SoC
1110d9cd22e9SChristophe Branchereau          from Ingenic.
1111d9cd22e9SChristophe Branchereau
1112d9cd22e9SChristophe Branchereau          This driver can also be built as a module. If so, the module
1113d9cd22e9SChristophe Branchereau          will be called snd-soc-jz4760-codec.
1114d9cd22e9SChristophe Branchereau
11152159a681SPaul Cercueilconfig SND_SOC_JZ4770_CODEC
1116bad929b8SPaul Cercueil	depends on MACH_INGENIC || COMPILE_TEST
1117e6825baeSPaul Cercueil	depends on OF
11182159a681SPaul Cercueil	select REGMAP
11192159a681SPaul Cercueil	tristate "Ingenic JZ4770 internal CODEC"
11202159a681SPaul Cercueil	help
11212159a681SPaul Cercueil	  Enable support for the internal CODEC found in the JZ4770 SoC
11222159a681SPaul Cercueil	  from Ingenic.
11232159a681SPaul Cercueil
11242159a681SPaul Cercueil	  This driver can also be built as a module. If so, the module
11252159a681SPaul Cercueil	  will be called snd-soc-jz4770-codec.
11262159a681SPaul Cercueil
1127b4541665SMark Brownconfig SND_SOC_DA7210
1128b4541665SMark Brown	tristate
1129c1c050eeSWei Li	depends on SND_SOC_I2C_AND_SPI
1130b4541665SMark Brown
1131ef5c2ebaSAdam Thomsonconfig SND_SOC_DA7213
113236da6763SSebastian Reichel	tristate "Dialog DA7213 CODEC"
113336da6763SSebastian Reichel	depends on I2C
1134ef5c2ebaSAdam Thomson
11354d50934aSAdam Thomsonconfig SND_SOC_DA7218
11364d50934aSAdam Thomson	tristate
1137ce0c97f8SGeert Uytterhoeven	depends on I2C
11384d50934aSAdam Thomson
11396d817c0eSAdam Thomsonconfig SND_SOC_DA7219
11406d817c0eSAdam Thomson	tristate
1141ce0c97f8SGeert Uytterhoeven	depends on I2C
11426d817c0eSAdam Thomson
114348e27874SAdam Thomsonconfig SND_SOC_DA732X
114448e27874SAdam Thomson	tristate
1145ce0c97f8SGeert Uytterhoeven	depends on I2C
114648e27874SAdam Thomson
11479911f7f7SAshish Chavanconfig SND_SOC_DA9055
11489911f7f7SAshish Chavan	tristate
1149ce0c97f8SGeert Uytterhoeven	depends on I2C
11509911f7f7SAshish Chavan
1151a710770eSDavid Lambertconfig SND_SOC_DMIC
115226bcf1c3SJerome Brunet	tristate "Generic Digital Microphone CODEC"
115326bcf1c3SJerome Brunet	help
115426bcf1c3SJerome Brunet	  Enable support for the Generic Digital Microphone CODEC.
115526bcf1c3SJerome Brunet	  Select this if your sound card has DMICs.
1156a710770eSDavid Lambert
115709184118SJyri Sarhaconfig SND_SOC_HDMI_CODEC
115809184118SJyri Sarha	tristate
115909184118SJyri Sarha	select SND_PCM_ELD
116009184118SJyri Sarha	select SND_PCM_IEC958
11616de7df8dSArnd Bergmann	select HDMI
116209184118SJyri Sarha
11639000b59dSJerome Brunetconfig SND_SOC_ES7134
11649000b59dSJerome Brunet	tristate "Everest Semi ES7134 CODEC"
11659000b59dSJerome Brunet
11665f7bdc46SJerome Brunetconfig SND_SOC_ES7241
11675f7bdc46SJerome Brunet	tristate "Everest Semi ES7241 CODEC"
11685f7bdc46SJerome Brunet
11699c8bec3bSPierre-Louis Bossartconfig SND_SOC_ES83XX_DSM_COMMON
11709c8bec3bSPierre-Louis Bossart	depends on ACPI
11719c8bec3bSPierre-Louis Bossart	tristate
11729c8bec3bSPierre-Louis Bossart
1173baf98991SMatteo Martelliconfig SND_SOC_ES8311
1174baf98991SMatteo Martelli	tristate "Everest Semi ES8311 CODEC"
1175baf98991SMatteo Martelli	depends on I2C
1176baf98991SMatteo Martelli
1177b8b88b70SDaniel Drakeconfig SND_SOC_ES8316
1178b8b88b70SDaniel Drake	tristate "Everest Semi ES8316 CODEC"
1179664d00d1SArnd Bergmann	depends on I2C
1180b8b88b70SDaniel Drake
1181b97391a6SBinbin Zhouconfig SND_SOC_ES8323
1182b97391a6SBinbin Zhou	tristate "Everest Semi ES8323 CODEC"
1183b97391a6SBinbin Zhou	depends on I2C
1184b97391a6SBinbin Zhou
11855c439937SZhu Ningconfig SND_SOC_ES8326
11865c439937SZhu Ning	tristate "Everest Semi ES8326 CODEC"
11875c439937SZhu Ning	depends on I2C
11885c439937SZhu Ning
1189567e4f98SSean Crossconfig SND_SOC_ES8328
1190245c5c7bSArnd Bergmann	tristate
1191567e4f98SSean Cross
1192567e4f98SSean Crossconfig SND_SOC_ES8328_I2C
1193245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (I2C)"
1194245c5c7bSArnd Bergmann	depends on I2C
1195567e4f98SSean Cross	select SND_SOC_ES8328
1196567e4f98SSean Cross
1197567e4f98SSean Crossconfig SND_SOC_ES8328_SPI
1198245c5c7bSArnd Bergmann	tristate "Everest Semi ES8328 CODEC (SPI)"
1199245c5c7bSArnd Bergmann	depends on SPI_MASTER
1200567e4f98SSean Cross	select SND_SOC_ES8328
1201567e4f98SSean Cross
1202a9a0303dSHerve Codinaconfig SND_SOC_FRAMER
1203a9a0303dSHerve Codina	tristate "Framer codec"
1204a9a0303dSHerve Codina	depends on GENERIC_FRAMER
1205a9a0303dSHerve Codina	help
1206a9a0303dSHerve Codina	  Enable support for the framer codec.
1207a9a0303dSHerve Codina	  The framer codec uses the generic framer infrastructure to transport
1208a9a0303dSHerve Codina	  some audio data over an analog E1/T1/J1 line.
1209a9a0303dSHerve Codina	  This codec allows to use some of the time slots available on the TDM
1210a9a0303dSHerve Codina	  bus on which the framer is connected to transport the audio data.
1211a9a0303dSHerve Codina
1212a9a0303dSHerve Codina	  To compile this driver as a module, choose M here: the module
1213a9a0303dSHerve Codina	  will be called snd-soc-framer.
1214a9a0303dSHerve Codina
1215a9a0303dSHerve Codina
1216efc4720dSMarek Beliskoconfig SND_SOC_GTM601
1217efc4720dSMarek Belisko	tristate 'GTM601 UMTS modem audio codec'
1218efc4720dSMarek Belisko
12199049a48aSMark Brownconfig SND_SOC_HDAC_HDMI
12209049a48aSMark Brown	tristate
12219049a48aSMark Brown	select SND_HDA_EXT_CORE
12222428bca3SSubhransu S. Prusty	select SND_PCM_ELD
12239049a48aSMark Brown	select HDMI
12249049a48aSMark Brown
12256bae5ea9SRakesh Ughrejaconfig SND_SOC_HDAC_HDA
12266bae5ea9SRakesh Ughreja	tristate
12276bae5ea9SRakesh Ughreja	select SND_HDA
12286bae5ea9SRakesh Ughreja
1229b5df2a7dSCezary Rojewskiconfig SND_SOC_HDA
1230b5df2a7dSCezary Rojewski	tristate "HD-Audio codec driver"
1231b5df2a7dSCezary Rojewski	select SND_HDA_EXT_CORE
1232b5df2a7dSCezary Rojewski	select SND_HDA
1233b5df2a7dSCezary Rojewski	help
1234b5df2a7dSCezary Rojewski	  This enables HD-Audio codec support in ASoC subsystem. Compared
1235b5df2a7dSCezary Rojewski	  to SND_SOC_HDAC_HDA, driver's behavior is identical to HD-Audio
1236b5df2a7dSCezary Rojewski	  legacy solution - including the dynamic resource allocation
1237b5df2a7dSCezary Rojewski	  based on actual codec capabilities.
1238b5df2a7dSCezary Rojewski
12393b7ce997SRicard Wanderlofconfig SND_SOC_ICS43432
124043d2c498SAngelo Dureghello	tristate "ICS43423 and compatible i2s microphones"
12413b7ce997SRicard Wanderlof
1242e5116699SHerve Codinaconfig SND_SOC_IDT821034
1243e5116699SHerve Codina	tristate "Renesas IDT821034 quad PCM codec"
1244e5116699SHerve Codina	depends on SPI
1245e5116699SHerve Codina	help
1246e5116699SHerve Codina	  Enable support for the Renesas IDT821034 quad PCM with
1247e5116699SHerve Codina	  programmable gain codec.
1248e5116699SHerve Codina
1249e5116699SHerve Codina	  To compile this driver as a module, choose M here: the module
1250e5116699SHerve Codina	  will be called snd-soc-idt821034.
1251e5116699SHerve Codina
1252decbc00eSZhengShunQianconfig SND_SOC_INNO_RK3036
1253decbc00eSZhengShunQian	tristate "Inno codec driver for RK3036 SoC"
12549fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
12557315917fSAntonio Ospite	select REGMAP_MMIO
1256decbc00eSZhengShunQian
12572f989f7eSM R Swami Reddyconfig SND_SOC_ISABELLE
12582f989f7eSM R Swami Reddy	tristate
1259ce0c97f8SGeert Uytterhoeven	depends on I2C
12602f989f7eSM R Swami Reddy
1261dbf7a733SM R Swami Reddyconfig SND_SOC_LM49453
1262dbf7a733SM R Swami Reddy	tristate
1263ce0c97f8SGeert Uytterhoeven	depends on I2C
1264dbf7a733SM R Swami Reddy
126516123412SPiotr Stankiewiczconfig SND_SOC_LOCHNAGAR_SC
126616123412SPiotr Stankiewicz	tristate "Lochnagar Sound Card"
12675b7f4e5dSKrzysztof Kozlowski	depends on MFD_LOCHNAGAR || COMPILE_TEST
126816123412SPiotr Stankiewicz	help
126916123412SPiotr Stankiewicz	  This driver support the sound card functionality of the Cirrus
127016123412SPiotr Stankiewicz	  Logic Lochnagar audio development board.
127116123412SPiotr Stankiewicz
12722735b683SRichard Fitzgeraldconfig SND_SOC_MADERA
12732735b683SRichard Fitzgerald	tristate
12749cba2d6aSRichard Fitzgerald	default y if SND_SOC_CS47L15=y
1275e6a2b5c0SRichard Fitzgerald	default y if SND_SOC_CS47L35=y
127695a9049bSRichard Fitzgerald	default y if SND_SOC_CS47L85=y
1277f1572a44SRichard Fitzgerald	default y if SND_SOC_CS47L90=y
12786535e831SStuart Henderson	default y if SND_SOC_CS47L92=y
12799cba2d6aSRichard Fitzgerald	default m if SND_SOC_CS47L15=m
1280e6a2b5c0SRichard Fitzgerald	default m if SND_SOC_CS47L35=m
128195a9049bSRichard Fitzgerald	default m if SND_SOC_CS47L85=m
1282f1572a44SRichard Fitzgerald	default m if SND_SOC_CS47L90=m
12836535e831SStuart Henderson	default m if SND_SOC_CS47L92=m
12842735b683SRichard Fitzgerald
1285e86e1244SMark Brownconfig SND_SOC_MAX98088
128624ae67c5SMarco Felsch	tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec"
12879641faa2SArnd Bergmann	depends on I2C
1288e86e1244SMark Brown
128983f7cbc4SKuninori Morimotoconfig SND_SOC_MAX98090
12909e868ca1SMaxim Kochetkov	tristate "Maxim MAX98090 CODEC"
1291ce0c97f8SGeert Uytterhoeven	depends on I2C
129283f7cbc4SKuninori Morimoto
129382a5a936SPeter Hsiangconfig SND_SOC_MAX98095
129482a5a936SPeter Hsiang	tristate
1295ce0c97f8SGeert Uytterhoeven	depends on I2C
129682a5a936SPeter Hsiang
1297af5adf12SKenneth Westfieldconfig SND_SOC_MAX98357A
129899afc8dfSMaxime Jourdan	tristate "Maxim MAX98357A CODEC"
1299af5adf12SKenneth Westfield
1300ca2cd6bcSanish kumarconfig SND_SOC_MAX98371
1301ca2cd6bcSanish kumar	tristate
1302ce0c97f8SGeert Uytterhoeven	depends on I2C
1303ca2cd6bcSanish kumar
13044c5d1469SSylwester Nawrockiconfig SND_SOC_MAX98504
13054c5d1469SSylwester Nawrocki	tristate "Maxim MAX98504 speaker amplifier"
13064c5d1469SSylwester Nawrocki	depends on I2C
13074c5d1469SSylwester Nawrocki
1308805d132dSanish kumarconfig SND_SOC_MAX9867
13093ac9ce88SLadislav Michl	tristate "Maxim MAX9867 CODEC"
13103ac9ce88SLadislav Michl	depends on I2C
1311805d132dSanish kumar
13121ff27651SAnish Kumarconfig SND_SOC_MAX98925
13131ff27651SAnish Kumar	tristate
1314ce0c97f8SGeert Uytterhoeven	depends on I2C
13151ff27651SAnish Kumar
1316a2e2876aSanish kumarconfig SND_SOC_MAX98926
1317a2e2876aSanish kumar	tristate
1318ce0c97f8SGeert Uytterhoeven	depends on I2C
1319a2e2876aSanish kumar
13207c0c2000SRyan Leeconfig SND_SOC_MAX98927
13217c0c2000SRyan Lee	tristate "Maxim Integrated MAX98927 Speaker Amplifier"
13227c0c2000SRyan Lee	depends on I2C
13237c0c2000SRyan Lee
1324f88ee76bSGeorge Songconfig SND_SOC_MAX98520
1325f88ee76bSGeorge Song	tristate "Maxim Integrated MAX98520 Speaker Amplifier"
1326f88ee76bSGeorge Song	depends on I2C
1327f88ee76bSGeorge Song	help
1328f88ee76bSGeorge Song	  Enable support for Maxim Integrated MAX98520 audio
1329f88ee76bSGeorge Song	  amplifier, which implements a tripler charge pump
1330f88ee76bSGeorge Song	  based boost converter and supports sample rates of
1331f88ee76bSGeorge Song	  8KHz to 192KHz.
1332f88ee76bSGeorge Song
1333f88ee76bSGeorge Song	  To compile this driver as a module, choose M here.
1334f88ee76bSGeorge Song
133518c0af94SRyan Leeconfig SND_SOC_MAX98363
133618c0af94SRyan Lee	tristate "Analog Devices MAX98363 Soundwire Speaker Amplifier"
133718c0af94SRyan Lee	depends on SOUNDWIRE
133818c0af94SRyan Lee	select REGMAP_SOUNDWIRE
133918c0af94SRyan Lee	help
134018c0af94SRyan Lee	  Enable support for Analog Devices MAX98363 Soundwire
134118c0af94SRyan Lee	  amplifier. MAX98363 supports the MIPI SoundWire v1.2
134218c0af94SRyan Lee	  compatible interface for audio and control data.
134318c0af94SRyan Lee	  This amplifier does not support I2C and I2S.
134418c0af94SRyan Lee
13452f3d24a1SRyan Leeconfig SND_SOC_MAX98373
1346d7ee0c72SPierre-Louis Bossart	tristate
1347d7ee0c72SPierre-Louis Bossart
1348d7ee0c72SPierre-Louis Bossartconfig SND_SOC_MAX98373_I2C
13492f3d24a1SRyan Lee	tristate "Maxim Integrated MAX98373 Speaker Amplifier"
13502f3d24a1SRyan Lee	depends on I2C
1351d7ee0c72SPierre-Louis Bossart	select SND_SOC_MAX98373
13522f3d24a1SRyan Lee
135356a5b791SRyan Leeconfig SND_SOC_MAX98373_SDW
135456a5b791SRyan Lee	tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW"
135556a5b791SRyan Lee	depends on SOUNDWIRE
135656a5b791SRyan Lee	select SND_SOC_MAX98373
135756a5b791SRyan Lee	select REGMAP_SOUNDWIRE
135856a5b791SRyan Lee	help
135956a5b791SRyan Lee	  Enable support for Maxim Integrated MAX98373 Soundwire
136056a5b791SRyan Lee	  amplifier. MAX98373 supports either the MIPI SoundWire
136156a5b791SRyan Lee	  compatible interface for audio and control data, or
136256a5b791SRyan Lee	  the PCM interface for audio data and a standard I2C
136356a5b791SRyan Lee	  interface for control data. Select this if MAX98373 is
136456a5b791SRyan Lee	  connected via soundwire.
136556a5b791SRyan Lee
13666a8e1d46SRyan Leeconfig SND_SOC_MAX98388
13676a8e1d46SRyan Lee	tristate "Analog Devices MAX98388 Speaker Amplifier"
13686a8e1d46SRyan Lee	depends on I2C
13696a8e1d46SRyan Lee	help
13706a8e1d46SRyan Lee	  Enable support for Analog Devices MAX98388 audio
13716a8e1d46SRyan Lee	  amplifier. The device provides a PCM interface for
13726a8e1d46SRyan Lee	  audio data and a standard I2C interface for control
13736a8e1d46SRyan Lee	  data communication.
13746a8e1d46SRyan Lee
1375a6e3f4f3SSteve Leeconfig SND_SOC_MAX98390
1376a6e3f4f3SSteve Lee	tristate "Maxim Integrated MAX98390 Speaker Amplifier"
1377a6e3f4f3SSteve Lee	depends on I2C
1378a6e3f4f3SSteve Lee
1379b5858113SRyan Leeconfig SND_SOC_MAX98396
1380b5858113SRyan Lee	tristate "Analog Devices MAX98396 Speaker Amplifier"
1381b5858113SRyan Lee	depends on I2C
1382b5858113SRyan Lee	help
1383b5858113SRyan Lee	  Enable support for Analog Devices MAX98396 audio
1384b5858113SRyan Lee	  amplifier. The device provides a PCM interface for
1385b5858113SRyan Lee	  audio data and a standard I2C interface for control
1386b5858113SRyan Lee	  data communication.
1387b5858113SRyan Lee
13880e45cab6SChristian Glindkampconfig SND_SOC_MAX9850
13890e45cab6SChristian Glindkamp	tristate
1390ce0c97f8SGeert Uytterhoeven	depends on I2C
13910e45cab6SChristian Glindkamp
13923b2af7f7SPeter Rosinconfig SND_SOC_MAX9860
13933b2af7f7SPeter Rosin	tristate "Maxim MAX9860 Mono Audio Voice Codec"
13943b2af7f7SPeter Rosin	depends on I2C
13953b2af7f7SPeter Rosin	select REGMAP_I2C
13963b2af7f7SPeter Rosin
1397585e881eSSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_ANALOG
1398585e881eSSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD Analog Codec"
1399585e881eSSrinivas Kandagatla	depends on SPMI || COMPILE_TEST
1400585e881eSSrinivas Kandagatla
1401150db8c5SSrinivas Kandagatlaconfig SND_SOC_MSM8916_WCD_DIGITAL
1402150db8c5SSrinivas Kandagatla	tristate "Qualcomm MSM8916 WCD DIGITAL Codec"
14035b86fa6dSAxel Lin	select REGMAP_MMIO
1404150db8c5SSrinivas Kandagatla
140595169d08SMarek Beliskoconfig SND_SOC_PCM1681
14061291e141SMark Brown	tristate "Texas Instruments PCM1681 CODEC"
14071291e141SMark Brown	depends on I2C
140895169d08SMarek Belisko
14094ae340d1SMylène Josserandconfig SND_SOC_PCM1789
14104ae340d1SMylène Josserand	tristate
14114ae340d1SMylène Josserand
14124ae340d1SMylène Josserandconfig SND_SOC_PCM1789_I2C
14134ae340d1SMylène Josserand	tristate "Texas Instruments PCM1789 CODEC (I2C)"
14144ae340d1SMylène Josserand	depends on I2C
14154ae340d1SMylène Josserand	select SND_SOC_PCM1789
14164ae340d1SMylène Josserand	help
14174ae340d1SMylène Josserand	  Enable support for Texas Instruments PCM1789 CODEC.
14184ae340d1SMylène Josserand	  Select this if your PCM1789 is connected via an I2C bus.
14194ae340d1SMylène Josserand
14200471cd93SMichael Trimarchiconfig SND_SOC_PCM179X
14211b347b68SJacob Siverskog	tristate
14221b347b68SJacob Siverskog
142370e3e56eSJacob Siverskogconfig SND_SOC_PCM179X_I2C
142470e3e56eSJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (I2C)"
142570e3e56eSJacob Siverskog	depends on I2C
142670e3e56eSJacob Siverskog	select SND_SOC_PCM179X
142770e3e56eSJacob Siverskog	help
142870e3e56eSJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
142970e3e56eSJacob Siverskog	  Select this if your PCM179x is connected via an I2C bus.
143070e3e56eSJacob Siverskog
14311b347b68SJacob Siverskogconfig SND_SOC_PCM179X_SPI
14321b347b68SJacob Siverskog	tristate "Texas Instruments PCM179X CODEC (SPI)"
14331291e141SMark Brown	depends on SPI_MASTER
14341b347b68SJacob Siverskog	select SND_SOC_PCM179X
14351b347b68SJacob Siverskog	help
14361b347b68SJacob Siverskog	  Enable support for Texas Instruments PCM179x CODEC.
14371b347b68SJacob Siverskog	  Select this if your PCM179x is connected via an SPI bus.
143813b02fa0SMichael Trimarchi
1439993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X
1440993a3450SAndreas Dannenberg	tristate
1441993a3450SAndreas Dannenberg
1442993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_I2C
1443993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - I2C"
1444993a3450SAndreas Dannenberg	depends on I2C
1445993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
1446993a3450SAndreas Dannenberg	select REGMAP_I2C
1447993a3450SAndreas Dannenberg
1448993a3450SAndreas Dannenbergconfig SND_SOC_PCM186X_SPI
1449993a3450SAndreas Dannenberg	tristate "Texas Instruments PCM186x CODECs - SPI"
1450993a3450SAndreas Dannenberg	depends on SPI_MASTER
1451993a3450SAndreas Dannenberg	select SND_SOC_PCM186X
1452993a3450SAndreas Dannenberg	select REGMAP_SPI
1453993a3450SAndreas Dannenberg
14541c0090c2SHugo Villeneuveconfig SND_SOC_PCM3008
14551c0090c2SHugo Villeneuve	tristate
14561c0090c2SHugo Villeneuve
14576ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060
14586ee47d4aSKirill Marinushkin	tristate
14596ee47d4aSKirill Marinushkin
14606ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_I2C
14616ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - I2C"
14626ee47d4aSKirill Marinushkin	depends on I2C
14636ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
14646ee47d4aSKirill Marinushkin	select REGMAP_I2C
14656ee47d4aSKirill Marinushkin
14666ee47d4aSKirill Marinushkinconfig SND_SOC_PCM3060_SPI
14676ee47d4aSKirill Marinushkin	tristate "Texas Instruments PCM3060 CODEC - SPI"
14686ee47d4aSKirill Marinushkin	depends on SPI_MASTER
14696ee47d4aSKirill Marinushkin	select SND_SOC_PCM3060
14706ee47d4aSKirill Marinushkin	select REGMAP_SPI
14716ee47d4aSKirill Marinushkin
1472a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A
1473a9b17a63SDamien.Horsley	tristate
1474a9b17a63SDamien.Horsley
1475a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_I2C
1476a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - I2C"
1477a9b17a63SDamien.Horsley	depends on I2C
1478a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
1479a9b17a63SDamien.Horsley	select REGMAP_I2C
1480a9b17a63SDamien.Horsley
1481a9b17a63SDamien.Horsleyconfig SND_SOC_PCM3168A_SPI
1482a9b17a63SDamien.Horsley	tristate "Texas Instruments PCM3168A CODEC - SPI"
1483a9b17a63SDamien.Horsley	depends on SPI_MASTER
1484a9b17a63SDamien.Horsley	select SND_SOC_PCM3168A
1485a9b17a63SDamien.Horsley	select REGMAP_SPI
1486a9b17a63SDamien.Horsley
148797d3ddd7SFlorian Meierconfig SND_SOC_PCM5102A
148876b5f68bSCodrin Ciubotariu	tristate "Texas Instruments PCM5102A CODEC"
148997d3ddd7SFlorian Meier
14905a3af129SMark Brownconfig SND_SOC_PCM512x
149122066226SMark Brown	tristate
149222066226SMark Brown
149322066226SMark Brownconfig SND_SOC_PCM512x_I2C
149422066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - I2C"
149522066226SMark Brown	depends on I2C
149622066226SMark Brown	select SND_SOC_PCM512x
149722066226SMark Brown	select REGMAP_I2C
149822066226SMark Brown
149922066226SMark Brownconfig SND_SOC_PCM512x_SPI
150022066226SMark Brown	tristate "Texas Instruments PCM512x CODECs - SPI"
150122066226SMark Brown	depends on SPI_MASTER
150222066226SMark Brown	select SND_SOC_PCM512x
150322066226SMark Brown	select REGMAP_SPI
15045a3af129SMark Brown
15056bb1b706SShenghao Dingconfig SND_SOC_PCM6240
15066bb1b706SShenghao Ding	tristate "Texas Instruments PCM6240 Family Audio chips based on I2C"
15076bb1b706SShenghao Ding	depends on I2C
15086bb1b706SShenghao Ding	help
15096bb1b706SShenghao Ding	  Enable support for Texas Instruments PCM6240 Family Audio chips.
15106bb1b706SShenghao Ding	  Note the PCM6240 driver implements a flexible and configurable
15116bb1b706SShenghao Ding	  setting for register and filter coefficients, to one, two or
15126bb1b706SShenghao Ding	  even multiple PCM6240 Family Audio chips.
15136bb1b706SShenghao Ding
1514227f609cSHerve Codinaconfig SND_SOC_PEB2466
1515227f609cSHerve Codina	tristate "Infineon PEB2466 quad PCM codec"
1516227f609cSHerve Codina	depends on SPI
1517227f609cSHerve Codina	select REGMAP_SPI
1518227f609cSHerve Codina	help
1519227f609cSHerve Codina	  Enable support for the Infineon PEB2466 quad PCM codec,
1520227f609cSHerve Codina	  also named SICOFI 4-uC.
1521227f609cSHerve Codina
1522227f609cSHerve Codina	  To compile this driver as a module, choose M here: the module
1523227f609cSHerve Codina	  will be called snd-soc-peb2466.
1524227f609cSHerve Codina
15254ed0915fSLuca Ceresoliconfig SND_SOC_RK3308
15264ed0915fSLuca Ceresoli	tristate "Rockchip RK3308 audio CODEC"
152703246adeSLuca Ceresoli	depends on ARM64 || COMPILE_TEST
15289fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
15294ed0915fSLuca Ceresoli	select REGMAP_MMIO
15304ed0915fSLuca Ceresoli	help
15314ed0915fSLuca Ceresoli	  This is a device driver for the audio codec embedded in the
15324ed0915fSLuca Ceresoli	  Rockchip RK3308 SoC.
15334ed0915fSLuca Ceresoli
15344ed0915fSLuca Ceresoli	  It has 8 24-bit ADCs and 2 24-bit DACs. The maximum supported
15354ed0915fSLuca Ceresoli	  sampling rate is 192 kHz.
15364ed0915fSLuca Ceresoli
1537c3275903SKatsuhiro Suzukiconfig SND_SOC_RK3328
1538c3275903SKatsuhiro Suzuki	tristate "Rockchip RK3328 audio CODEC"
15399fd60615SGeert Uytterhoeven	depends on ARCH_ROCKCHIP || COMPILE_TEST
1540c3275903SKatsuhiro Suzuki	select REGMAP_MMIO
1541c3275903SKatsuhiro Suzuki
15420d6a04daSChris Morganconfig SND_SOC_RK817
15430d6a04daSChris Morgan	tristate "Rockchip RK817 audio CODEC"
1544c20e8c5bSSebastian Reichel	depends on MFD_RK8XX || COMPILE_TEST
15450d6a04daSChris Morgan
154649ef7925SOder Chiouconfig SND_SOC_RL6231
154749ef7925SOder Chiou	tristate
15484a6180eaSOder Chiou	default y if SND_SOC_RT5514=y
1549b1d15059SBard Liao	default y if SND_SOC_RT5616=y
155049ef7925SOder Chiou	default y if SND_SOC_RT5640=y
155149ef7925SOder Chiou	default y if SND_SOC_RT5645=y
155249ef7925SOder Chiou	default y if SND_SOC_RT5651=y
1553d3cb2de2SBard Liao	default y if SND_SOC_RT5659=y
15542b26dd4cSOder Chiou	default y if SND_SOC_RT5660=y
1555df7c5216SBard Liao	default y if SND_SOC_RT5663=y
1556c7f87f96SAxel Lin	default y if SND_SOC_RT5665=y
1557d59fb285SBard Liao	default y if SND_SOC_RT5668=y
15585e8351deSBard Liao	default y if SND_SOC_RT5670=y
155930f14b43SAxel Lin	default y if SND_SOC_RT5677=y
15600ddce71cSBard Liao	default y if SND_SOC_RT5682=y
1561d6e65bb7SShuming Fan	default y if SND_SOC_RT1011=y
1562df310074SJack Yu	default y if SND_SOC_RT1015=y
1563c07152d4STzung-Bi Shih	default y if SND_SOC_RT1015P=y
15647ec79d38SJack Yu	default y if SND_SOC_RT1019=y
156529bc643dSShuming Fan	default y if SND_SOC_RT1305=y
15662b9def8cSDerek Fang	default y if SND_SOC_RT1308=y
15674a6180eaSOder Chiou	default m if SND_SOC_RT5514=m
1568b1d15059SBard Liao	default m if SND_SOC_RT5616=m
156949ef7925SOder Chiou	default m if SND_SOC_RT5640=m
157049ef7925SOder Chiou	default m if SND_SOC_RT5645=m
157149ef7925SOder Chiou	default m if SND_SOC_RT5651=m
1572d3cb2de2SBard Liao	default m if SND_SOC_RT5659=m
15732b26dd4cSOder Chiou	default m if SND_SOC_RT5660=m
1574df7c5216SBard Liao	default m if SND_SOC_RT5663=m
1575c7f87f96SAxel Lin	default m if SND_SOC_RT5665=m
1576d59fb285SBard Liao	default m if SND_SOC_RT5668=m
15775e8351deSBard Liao	default m if SND_SOC_RT5670=m
157830f14b43SAxel Lin	default m if SND_SOC_RT5677=m
15790ddce71cSBard Liao	default m if SND_SOC_RT5682=m
1580d6e65bb7SShuming Fan	default m if SND_SOC_RT1011=m
1581df310074SJack Yu	default m if SND_SOC_RT1015=m
1582c07152d4STzung-Bi Shih	default m if SND_SOC_RT1015P=m
15837ec79d38SJack Yu	default m if SND_SOC_RT1019=m
158429bc643dSShuming Fan	default m if SND_SOC_RT1305=m
15852b9def8cSDerek Fang	default m if SND_SOC_RT1308=m
158649ef7925SOder Chiou
1587bbca8e70SJack Yuconfig SND_SOC_RT_SDW_COMMON
1588bbca8e70SJack Yu	tristate
1589bbca8e70SJack Yu	default y if SND_SOC_RT721_SDCA_SDW=y
1590bbca8e70SJack Yu	default m if SND_SOC_RT721_SDCA_SDW=m
1591bbca8e70SJack Yu
1592bc08f96bSOder Chiouconfig SND_SOC_RL6347A
1593bc08f96bSOder Chiou	tristate
1594c7e79b2bSBard Liao	default y if SND_SOC_RT274=y
1595bc08f96bSOder Chiou	default y if SND_SOC_RT286=y
15966adcafaeSBard Liao	default y if SND_SOC_RT298=y
1597c7e79b2bSBard Liao	default m if SND_SOC_RT274=m
1598bc08f96bSOder Chiou	default m if SND_SOC_RT286=m
15996adcafaeSBard Liao	default m if SND_SOC_RT298=m
1600bc08f96bSOder Chiou
1601c7e79b2bSBard Liaoconfig SND_SOC_RT274
1602c7e79b2bSBard Liao	tristate
1603c7e79b2bSBard Liao	depends on I2C
1604c7e79b2bSBard Liao
160507cf7cbaSBard Liaoconfig SND_SOC_RT286
160607cf7cbaSBard Liao	tristate
1607a577483bSBard Liao	depends on I2C
160807cf7cbaSBard Liao
16096adcafaeSBard Liaoconfig SND_SOC_RT298
16106adcafaeSBard Liao	tristate
16116adcafaeSBard Liao	depends on I2C
16126adcafaeSBard Liao
1613d6e65bb7SShuming Fanconfig SND_SOC_RT1011
1614d6e65bb7SShuming Fan	tristate
1615ce0c97f8SGeert Uytterhoeven	depends on I2C
1616d6e65bb7SShuming Fan
1617df310074SJack Yuconfig SND_SOC_RT1015
1618df310074SJack Yu	tristate
1619ce0c97f8SGeert Uytterhoeven	depends on I2C
1620df310074SJack Yu
1621c07152d4STzung-Bi Shihconfig SND_SOC_RT1015P
1622c07152d4STzung-Bi Shih	tristate
1623c07152d4STzung-Bi Shih
1624953b1388SStephen Kittconfig SND_SOC_RT1016
1625953b1388SStephen Kitt	tristate
1626953b1388SStephen Kitt	depends on I2C
1627953b1388SStephen Kitt
16282b7aecd5SDerek Fangconfig SND_SOC_RT1017_SDCA_SDW
16292b7aecd5SDerek Fang	tristate "Realtek RT1017 SDCA Codec - SDW"
16302b7aecd5SDerek Fang	depends on SOUNDWIRE
16312b7aecd5SDerek Fang	select REGMAP_SOUNDWIRE
16322b7aecd5SDerek Fang
16337ec79d38SJack Yuconfig SND_SOC_RT1019
16347ec79d38SJack Yu	tristate
16357ec79d38SJack Yu	depends on I2C
16367ec79d38SJack Yu
163729bc643dSShuming Fanconfig SND_SOC_RT1305
163829bc643dSShuming Fan	tristate
1639ce0c97f8SGeert Uytterhoeven	depends on I2C
164029bc643dSShuming Fan
16412b9def8cSDerek Fangconfig SND_SOC_RT1308
16422b9def8cSDerek Fang	tristate
1643ce0c97f8SGeert Uytterhoeven	depends on I2C
16442b9def8cSDerek Fang
1645a87a6653SShuming Fanconfig SND_SOC_RT1308_SDW
1646a87a6653SShuming Fan	tristate "Realtek RT1308 Codec - SDW"
1647ce0c97f8SGeert Uytterhoeven	depends on I2C && SOUNDWIRE
1648a87a6653SShuming Fan	select REGMAP_SOUNDWIRE
1649a87a6653SShuming Fan
16502b719fd2SShuming Fanconfig SND_SOC_RT1316_SDW
16512b719fd2SShuming Fan	tristate "Realtek RT1316 Codec - SDW"
16522b719fd2SShuming Fan	depends on SOUNDWIRE
16532b719fd2SShuming Fan	select REGMAP_SOUNDWIRE
16542b719fd2SShuming Fan
1655fe1ff614SJack Yuconfig SND_SOC_RT1318
1656fe1ff614SJack Yu	tristate
1657fe1ff614SJack Yu	depends on I2C
1658fe1ff614SJack Yu
16596ad73a2bSShuming Fanconfig SND_SOC_RT1318_SDW
16606ad73a2bSShuming Fan	tristate "Realtek RT1318 Codec - SDW"
16616ad73a2bSShuming Fan	depends on SOUNDWIRE
16626ad73a2bSShuming Fan	select REGMAP_SOUNDWIRE
16636ad73a2bSShuming Fan
1664bad0a07aSShuming Fanconfig SND_SOC_RT1320_SDW
1665bad0a07aSShuming Fan	tristate "Realtek RT1320 Codec - SDW"
1666bad0a07aSShuming Fan	depends on SOUNDWIRE
1667bad0a07aSShuming Fan	select REGMAP_SOUNDWIRE
1668bad0a07aSShuming Fan	select REGMAP_SOUNDWIRE_MBQ
1669bad0a07aSShuming Fan
16704a6180eaSOder Chiouconfig SND_SOC_RT5514
1671b1d15059SBard Liao	tristate
1672ce0c97f8SGeert Uytterhoeven	depends on I2C
1673b1d15059SBard Liao
16746eebf35bSOder Chiouconfig SND_SOC_RT5514_SPI
16756eebf35bSOder Chiou	tristate
1676ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
16776eebf35bSOder Chiou
1678c5630877SArnd Bergmannconfig SND_SOC_RT5514_SPI_BUILTIN
1679c5630877SArnd Bergmann	bool # force RT5514_SPI to be built-in to avoid link errors
1680c5630877SArnd Bergmann	default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m
1681c5630877SArnd Bergmann
1682997b0520SBard Liaoconfig SND_SOC_RT5616
1683288bc356SCaesar Wang	tristate "Realtek RT5616 CODEC"
1684af139d55SArnd Bergmann	depends on I2C
1685997b0520SBard Liao
16861319b2f6SOder Chiouconfig SND_SOC_RT5631
16871319b2f6SOder Chiou	tristate "Realtek ALC5631/RT5631 CODEC"
16881319b2f6SOder Chiou	depends on I2C
168940bc18a2SBard Liao
169040bc18a2SBard Liaoconfig SND_SOC_RT5640
169108c56cabSMartin Blumenstingl	tristate "Realtek RT5640/RT5639 Codec"
1692ce0c97f8SGeert Uytterhoeven	depends on I2C
16939b34e6ccSZeng Zhaoming
169440bc18a2SBard Liaoconfig SND_SOC_RT5645
169540bc18a2SBard Liao	tristate
1696ce0c97f8SGeert Uytterhoeven	depends on I2C
16974dc69be2SVinod Koul
16984dc69be2SVinod Koulconfig SND_SOC_RT5651
16991291e141SMark Brown	tristate
1700ce0c97f8SGeert Uytterhoeven	depends on I2C
17011291e141SMark Brown
1702d3cb2de2SBard Liaoconfig SND_SOC_RT5659
1703563c2681SSameer Pujar	tristate "Realtek RT5658/RT5659 Codec"
1704ce0c97f8SGeert Uytterhoeven	depends on I2C
1705d3cb2de2SBard Liao
17062b26dd4cSOder Chiouconfig SND_SOC_RT5660
17072b26dd4cSOder Chiou	tristate
1708ce0c97f8SGeert Uytterhoeven	depends on I2C
17092b26dd4cSOder Chiou
1710c7f87f96SAxel Linconfig SND_SOC_RT5663
171133ada14aSBard Liao	tristate
1712ce0c97f8SGeert Uytterhoeven	depends on I2C
171333ada14aSBard Liao
1714c7f87f96SAxel Linconfig SND_SOC_RT5665
1715df7c5216SBard Liao	tristate
1716ce0c97f8SGeert Uytterhoeven	depends on I2C
1717df7c5216SBard Liao
1718d59fb285SBard Liaoconfig SND_SOC_RT5668
1719d59fb285SBard Liao	tristate
1720ce0c97f8SGeert Uytterhoeven	depends on I2C
1721d59fb285SBard Liao
17225e8351deSBard Liaoconfig SND_SOC_RT5670
17235e8351deSBard Liao	tristate
1724ce0c97f8SGeert Uytterhoeven	depends on I2C
17255e8351deSBard Liao
17260e826e86SOder Chiouconfig SND_SOC_RT5677
17270e826e86SOder Chiou	tristate
17281d0158f5SGeert Uytterhoeven	depends on I2C
1729359ff7ffSBen Zhang	select REGMAP_I2C
1730359ff7ffSBen Zhang	select REGMAP_IRQ
17310e826e86SOder Chiou
1732e29bee09SBen Zhangconfig SND_SOC_RT5677_SPI
1733e29bee09SBen Zhang	tristate
17344c121129SArnd Bergmann	default SND_SOC_RT5677 && SPI
1735e29bee09SBen Zhang
17360ddce71cSBard Liaoconfig SND_SOC_RT5682
17370ddce71cSBard Liao	tristate
1738a50067d4SArnd Bergmann
1739a50067d4SArnd Bergmannconfig SND_SOC_RT5682_I2C
1740a50067d4SArnd Bergmann	tristate
1741a50067d4SArnd Bergmann	depends on I2C
1742a50067d4SArnd Bergmann	select SND_SOC_RT5682
17430ddce71cSBard Liao
174403f6fc6dSOder Chiouconfig SND_SOC_RT5682_SDW
174503f6fc6dSOder Chiou	tristate "Realtek RT5682 Codec - SDW"
174603f6fc6dSOder Chiou	depends on SOUNDWIRE
174703f6fc6dSOder Chiou	select SND_SOC_RT5682
174803f6fc6dSOder Chiou	select REGMAP_SOUNDWIRE
174903f6fc6dSOder Chiou
1750bdd229abSDerek Fangconfig SND_SOC_RT5682S
1751bdd229abSDerek Fang	tristate
1752bdd229abSDerek Fang	depends on I2C
1753bdd229abSDerek Fang
17547d2a5f9aSShuming Fanconfig SND_SOC_RT700
17557d2a5f9aSShuming Fan	tristate
17567d2a5f9aSShuming Fan
17577d2a5f9aSShuming Fanconfig SND_SOC_RT700_SDW
17587d2a5f9aSShuming Fan	tristate "Realtek RT700 Codec - SDW"
17597d2a5f9aSShuming Fan	depends on SOUNDWIRE
17607d2a5f9aSShuming Fan	select SND_SOC_RT700
17617d2a5f9aSShuming Fan	select REGMAP_SOUNDWIRE
17627d2a5f9aSShuming Fan
1763320b8b0dSShuming Fanconfig SND_SOC_RT711
1764320b8b0dSShuming Fan	tristate
1765320b8b0dSShuming Fan
1766320b8b0dSShuming Fanconfig SND_SOC_RT711_SDW
1767320b8b0dSShuming Fan	tristate "Realtek RT711 Codec - SDW"
1768320b8b0dSShuming Fan	depends on SOUNDWIRE
1769320b8b0dSShuming Fan	select SND_SOC_RT711
1770320b8b0dSShuming Fan	select REGMAP_SOUNDWIRE
1771320b8b0dSShuming Fan
17727ad4d237SShuming Fanconfig SND_SOC_RT711_SDCA_SDW
17737ad4d237SShuming Fan	tristate "Realtek RT711 SDCA Codec - SDW"
17747ad4d237SShuming Fan	depends on SOUNDWIRE
17757ad4d237SShuming Fan	select REGMAP_SOUNDWIRE
17767ad4d237SShuming Fan	select REGMAP_SOUNDWIRE_MBQ
17777ad4d237SShuming Fan
17786c39710dSShuming Fanconfig SND_SOC_RT712_SDCA_SDW
17796c39710dSShuming Fan	tristate "Realtek RT712 SDCA Codec - SDW"
17806c39710dSShuming Fan	depends on SOUNDWIRE
17816c39710dSShuming Fan	select REGMAP_SOUNDWIRE
17826c39710dSShuming Fan	select REGMAP_SOUNDWIRE_MBQ
17836c39710dSShuming Fan
178463a51128SShuming Fanconfig SND_SOC_RT712_SDCA_DMIC_SDW
178563a51128SShuming Fan	tristate "Realtek RT712 SDCA DMIC Codec - SDW"
178663a51128SShuming Fan	depends on SOUNDWIRE
178763a51128SShuming Fan	select REGMAP_SOUNDWIRE
178863a51128SShuming Fan	select REGMAP_SOUNDWIRE_MBQ
178963a51128SShuming Fan
179086ce355cSJack Yuconfig SND_SOC_RT721_SDCA_SDW
179186ce355cSJack Yu	tristate "Realtek RT721 SDCA Codec - SDW"
179286ce355cSJack Yu	depends on SOUNDWIRE
179386ce355cSJack Yu	select REGMAP_SOUNDWIRE
179486ce355cSJack Yu	select REGMAP_SOUNDWIRE_MBQ
179586ce355cSJack Yu
17967f5d6036SJack Yuconfig SND_SOC_RT722_SDCA_SDW
17977f5d6036SJack Yu	tristate "Realtek RT722 SDCA Codec - SDW"
17987f5d6036SJack Yu	depends on SOUNDWIRE
17997f5d6036SJack Yu	select REGMAP_SOUNDWIRE
18007f5d6036SJack Yu	select REGMAP_SOUNDWIRE_MBQ
18017f5d6036SJack Yu
1802d1ede064SJack Yuconfig SND_SOC_RT715
1803d1ede064SJack Yu	tristate
1804d1ede064SJack Yu
1805d1ede064SJack Yuconfig SND_SOC_RT715_SDW
1806d1ede064SJack Yu	tristate "Realtek RT715 Codec - SDW"
1807d1ede064SJack Yu	depends on SOUNDWIRE
1808d1ede064SJack Yu	select SND_SOC_RT715
1809d1ede064SJack Yu	select REGMAP_SOUNDWIRE
1810d1ede064SJack Yu
181120d17057SJack Yuconfig SND_SOC_RT715_SDCA_SDW
181220d17057SJack Yu	tristate "Realtek RT715 SDCA Codec - SDW"
181320d17057SJack Yu	depends on SOUNDWIRE
181420d17057SJack Yu	select REGMAP_SOUNDWIRE
181520d17057SJack Yu	select REGMAP_SOUNDWIRE_MBQ
181620d17057SJack Yu
18177228d835SChiYuan Huangconfig SND_SOC_RT9120
18187228d835SChiYuan Huang	tristate "Richtek RT9120 Stereo Class-D Amplifier"
18197228d835SChiYuan Huang	depends on I2C
18207228d835SChiYuan Huang	select REGMAP_I2C
18217228d835SChiYuan Huang	help
18227228d835SChiYuan Huang	  Enable support for Richtek RT9120 20W, stereo, inductor-less,
18237228d835SChiYuan Huang	  high-efficiency Class-D audio amplifier.
18247228d835SChiYuan Huang
1825736064c6SChiYuan Huangconfig SND_SOC_RTQ9128
1826736064c6SChiYuan Huang	tristate "Richtek RTQ9128 45W Digital Input Amplifier"
1827736064c6SChiYuan Huang	depends on I2C
1828736064c6SChiYuan Huang	select REGMAP
1829736064c6SChiYuan Huang	help
1830736064c6SChiYuan Huang	  Enable support for Richtek RTQ9128 digital input 4-channel
1831736064c6SChiYuan Huang	  automotive audio amplifier.  It is a ultra-low output noise,
1832736064c6SChiYuan Huang	  high-efficiency, four-channel class-D audio power amplifier
1833736064c6SChiYuan Huang	  that can deliver over 87% power efficienty at 4x75W into 4Ohm,
1834736064c6SChiYuan Huang	  25V supply in automotive applications.
1835736064c6SChiYuan Huang
1836736064c6SChiYuan Huang	  To compile this driver as a module, choose M here: the module
1837736064c6SChiYuan Huang	  will be called snd-soc-rtq9128.
1838736064c6SChiYuan Huang
183981d3d3d0SPierre-Louis Bossartconfig SND_SOC_SDW_MOCKUP
184081d3d3d0SPierre-Louis Bossart	tristate "SoundWire mockup codec"
184181d3d3d0SPierre-Louis Bossart	depends on EXPERT
184281d3d3d0SPierre-Louis Bossart	depends on SOUNDWIRE
184381d3d3d0SPierre-Louis Bossart	help
184481d3d3d0SPierre-Louis Bossart	  This option enables a SoundWire mockup codec that does not drive the
184581d3d3d0SPierre-Louis Bossart	  bus, take part in the command/command protocol or generate data on a
184681d3d3d0SPierre-Louis Bossart	  Source port.
184781d3d3d0SPierre-Louis Bossart	  This option is only intended to be used for tests on a device
184881d3d3d0SPierre-Louis Bossart	  with a connector, in combination with a bus analyzer, or to test new
184981d3d3d0SPierre-Louis Bossart	  topologies that differ from the actual hardware layout.
185081d3d3d0SPierre-Louis Bossart	  This mockup device could be totally virtual but could also be a
185181d3d3d0SPierre-Louis Bossart	  real physical one with one key restriction: it is not allowed by the
185281d3d3d0SPierre-Louis Bossart	  SoundWire specification to be configured via a sideband mechanism and
185381d3d3d0SPierre-Louis Bossart	  generate audio data for capture. However, nothing prevents such a
185481d3d3d0SPierre-Louis Bossart	  peripheral device from snooping the bus.
185581d3d3d0SPierre-Louis Bossart
1856be461ba8SChaithrika U S#Freescale sgtl5000 codec
1857330345ebSAndrey Smirnovconfig SND_SOC_SGTL5000
1858330345ebSAndrey Smirnov	tristate "Freescale SGTL5000 CODEC"
1859330345ebSAndrey Smirnov	depends on I2C
186040216ce7SLars-Peter Clausen
186140216ce7SLars-Peter Clausenconfig SND_SOC_SI476X
186240216ce7SLars-Peter Clausen	tristate
186340216ce7SLars-Peter Clausen
1864be461ba8SChaithrika U Sconfig SND_SOC_SIGMADSP
1865be461ba8SChaithrika U S	tristate
18663e860846SMark Brown	select CRC32
18673e860846SMark Brown
18686b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_I2C
18696b10998dSLars-Peter Clausen	tristate
18706b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
18716b10998dSLars-Peter Clausen
18726b10998dSLars-Peter Clausenconfig SND_SOC_SIGMADSP_REGMAP
18736b10998dSLars-Peter Clausen	tristate
18746b10998dSLars-Peter Clausen	select SND_SOC_SIGMADSP
18756b10998dSLars-Peter Clausen
18768d881bb6SJerome Brunetconfig SND_SOC_SIMPLE_AMPLIFIER
18778d881bb6SJerome Brunet	tristate "Simple Audio Amplifier"
18788d881bb6SJerome Brunet
1879342fbb75SAlexandre Belloniconfig SND_SOC_SIMPLE_MUX
1880342fbb75SAlexandre Belloni	tristate "Simple Audio Mux"
1881805fff75SMark Brown	depends on GPIOLIB
1882342fbb75SAlexandre Belloni
188368cd394eSKiseokJoconfig SND_SOC_SMA1303
188468cd394eSKiseokJo	tristate "Iron Device SMA1303 Audio Amplifier"
188568cd394eSKiseokJo	depends on I2C
188668cd394eSKiseokJo	help
188768cd394eSKiseokJo	  Enable support for Iron Device SMA1303 Boosted Class-D amplifier
188868cd394eSKiseokJo
1889576c57e6SKiseok Joconfig SND_SOC_SMA1307
1890576c57e6SKiseok Jo	tristate "Iron Device SMA1307 Audio Amplifier"
1891576c57e6SKiseok Jo	depends on I2C
1892576c57e6SKiseok Jo	help
1893576c57e6SKiseok Jo	  Enable support for Iron Device SMA1307 boosted digital speaker
1894576c57e6SKiseok Jo	  amplifier with feedback-loop.
1895576c57e6SKiseok Jo	  If you are using a system with an SMA1307 amplifier connected
1896576c57e6SKiseok Jo	  via I2C, enable this option.
1897576c57e6SKiseok Jo
18983e860846SMark Brownconfig SND_SOC_SPDIF
18991291e141SMark Brown	tristate "S/PDIF CODEC"
19003c166c7fSJon Smirl
19014e6bedd3SMatt Flaxconfig SND_SOC_SRC4XXX_I2C
19024e6bedd3SMatt Flax	tristate "Texas Instruments SRC4XXX DIR/DIT and SRC codecs"
19034e6bedd3SMatt Flax	depends on I2C
19044e6bedd3SMatt Flax	select SND_SOC_SRC4XXX
19054e6bedd3SMatt Flax	help
19064e6bedd3SMatt Flax	  Enable support for the TI SRC4XXX family of codecs. These include the
19074e6bedd3SMatt Flax	  scr4392 which has digital receivers, transmitters, and
19084e6bedd3SMatt Flax	  a sample rate converter, including numerous ports.
19094e6bedd3SMatt Flax
19104e6bedd3SMatt Flaxconfig SND_SOC_SRC4XXX
19114e6bedd3SMatt Flax	tristate
19124e6bedd3SMatt Flax
191374f24d87SMarco Felschconfig SND_SOC_SSM2305
191474f24d87SMarco Felsch	tristate "Analog Devices SSM2305 Class-D Amplifier"
191574f24d87SMarco Felsch	help
191674f24d87SMarco Felsch	  Enable support for Analog Devices SSM2305 filterless
191774f24d87SMarco Felsch	  high-efficiency mono Class-D audio power amplifiers.
191874f24d87SMarco Felsch
1919b6b5e76bSLars-Peter Clausenconfig SND_SOC_SSM2518
19202c70ff56SLucas Stach	tristate "Analog Devices SSM2518 Class-D Amplifier"
1921ce0c97f8SGeert Uytterhoeven	depends on I2C
1922b6b5e76bSLars-Peter Clausen
19233e860846SMark Brownconfig SND_SOC_SSM2602
19243e860846SMark Brown	tristate
19253e860846SMark Brown
1926c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_SPI
1927555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - SPI"
1928555b9ee1SStefan Kristiansson	depends on SPI_MASTER
1929c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
1930555b9ee1SStefan Kristiansson	select REGMAP_SPI
1931c924dc68SLars-Peter Clausen
1932c924dc68SLars-Peter Clausenconfig SND_SOC_SSM2602_I2C
1933555b9ee1SStefan Kristiansson	tristate "Analog Devices SSM2602 CODEC - I2C"
1934555b9ee1SStefan Kristiansson	depends on I2C
1935c924dc68SLars-Peter Clausen	select SND_SOC_SSM2602
1936555b9ee1SStefan Kristiansson	select REGMAP_I2C
1937c924dc68SLars-Peter Clausen
19384ac690bbSMartin Povišerconfig SND_SOC_SSM3515
19394ac690bbSMartin Povišer	tristate "Analog Devices SSM3515 amplifier driver"
19404ac690bbSMartin Povišer	select REGMAP_I2C
19414ac690bbSMartin Povišer	depends on I2C
19424ac690bbSMartin Povišer	depends on OF
19434ac690bbSMartin Povišer
19441ee44ce0SAnatol Pomozovconfig SND_SOC_SSM4567
19451ee44ce0SAnatol Pomozov	tristate "Analog Devices ssm4567 amplifier driver support"
19461ee44ce0SAnatol Pomozov	depends on I2C
1947c1f27190SArun KS
1948c1f27190SArun KSconfig SND_SOC_STA32X
19496fad6259SThomas Niederprüm	tristate "STA326, STA328 and STA329 speaker amplifier"
19506fad6259SThomas Niederprüm	depends on I2C
1951a1be4ceaSThomas Niederprüm	select REGMAP_I2C
1952c1f27190SArun KS
19532439ea1fSSven Brandauconfig SND_SOC_STA350
19542439ea1fSSven Brandau	tristate "STA350 speaker amplifier"
19552439ea1fSSven Brandau	depends on I2C
19562439ea1fSSven Brandau
1957c1f27190SArun KSconfig SND_SOC_STA529
19583e860846SMark Brown	tristate
1959ce0c97f8SGeert Uytterhoeven	depends on I2C
19603e860846SMark Brown
19613e860846SMark Brownconfig SND_SOC_STAC9766
19623e860846SMark Brown	tristate
1963d8dd3f92SGeert Uytterhoeven	depends on SND_SOC_AC97_BUS
1964c70064b9SRandy Dunlap	select REGMAP_AC97
19653e860846SMark Brown
196632a726b2SArnaud Pouliquenconfig SND_SOC_STI_SAS
196732a726b2SArnaud Pouliquen	tristate "codec Audio support for STI SAS codec"
196832a726b2SArnaud Pouliquen
19695df7f71dSDan Murphyconfig SND_SOC_TAS2552
19705df7f71dSDan Murphy	tristate "Texas Instruments TAS2552 Mono Audio amplifier"
19715df7f71dSDan Murphy	depends on I2C
19725df7f71dSDan Murphy
1973c173dba4SDan Murphyconfig SND_SOC_TAS2562
1974c173dba4SDan Murphy	tristate "Texas Instruments TAS2562 Mono Audio amplifier"
1975c173dba4SDan Murphy	depends on I2C
1976c173dba4SDan Murphy
1977827ed8a0SDan Murphyconfig SND_SOC_TAS2764
1978827ed8a0SDan Murphy	tristate "Texas Instruments TAS2764 Mono Audio amplifier"
1979827ed8a0SDan Murphy	depends on I2C
1980827ed8a0SDan Murphy
19811a476abcSFrank Shiconfig SND_SOC_TAS2770
19821a476abcSFrank Shi	tristate "Texas Instruments TAS2770 speaker amplifier"
19831a476abcSFrank Shi	depends on I2C
19841a476abcSFrank Shi
1985eae9f9ceSRaphael-Xuconfig SND_SOC_TAS2780
1986eae9f9ceSRaphael-Xu	tristate "Texas Instruments TAS2780 Mono Audio amplifier"
1987eae9f9ceSRaphael-Xu	depends on I2C
1988eae9f9ceSRaphael-Xu	help
1989eae9f9ceSRaphael-Xu	  Enable support for Texas Instruments TAS2780 high-efficiency
1990eae9f9ceSRaphael-Xu	  digital input mono Class-D audio power amplifiers.
1991eae9f9ceSRaphael-Xu
1992ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_COMLIB
1993ef3bcde7SShenghao Ding	depends on I2C
1994ef3bcde7SShenghao Ding	select CRC8
1995ef3bcde7SShenghao Ding	select REGMAP_I2C
1996ef3bcde7SShenghao Ding	tristate
1997ef3bcde7SShenghao Ding
1998ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_FMWLIB
1999fcb66ee8SArnd Bergmann	depends on SND_SOC_TAS2781_COMLIB
2000ef3bcde7SShenghao Ding	tristate
2001ef3bcde7SShenghao Ding	default n
2002ef3bcde7SShenghao Ding
2003ef3bcde7SShenghao Dingconfig SND_SOC_TAS2781_I2C
2004ef3bcde7SShenghao Ding	tristate "Texas Instruments TAS2781 speaker amplifier based on I2C"
2005ef3bcde7SShenghao Ding	depends on I2C
2006ef3bcde7SShenghao Ding	select SND_SOC_TAS2781_COMLIB
2007ef3bcde7SShenghao Ding	select SND_SOC_TAS2781_FMWLIB
2008ef3bcde7SShenghao Ding	help
2009ef3bcde7SShenghao Ding	  Enable support for Texas Instruments TAS2781 Smart Amplifier
2010ef3bcde7SShenghao Ding	  Digital input mono Class-D and DSP-inside audio power amplifiers.
2011ef3bcde7SShenghao Ding	  Note the TAS2781 driver implements a flexible and configurable
2012ef3bcde7SShenghao Ding	  algo coefficient setting, for one, two or even multiple TAS2781
2013ef3bcde7SShenghao Ding	  chips.
2014ef3bcde7SShenghao Ding
20153e860846SMark Brownconfig SND_SOC_TAS5086
20163e860846SMark Brown	tristate "Texas Instruments TAS5086 speaker amplifier"
20173e860846SMark Brown	depends on I2C
20183e860846SMark Brown
20193fd6e7d9SKevin Cernekeeconfig SND_SOC_TAS571X
2020f516d322SJerome Brunet	tristate "Texas Instruments TAS571x power amplifiers"
20213fd6e7d9SKevin Cernekee	depends on I2C
2022f516d322SJerome Brunet	help
2023f516d322SJerome Brunet	  Enable support for Texas Instruments TAS5707, TAS5711, TAS5717,
2024f516d322SJerome Brunet	  TAS5719 and TAS5721 power amplifiers
20253fd6e7d9SKevin Cernekee
2026bd023adaSAndreas Dannenbergconfig SND_SOC_TAS5720
2027bd023adaSAndreas Dannenberg	tristate "Texas Instruments TAS5720 Mono Audio amplifier"
2028bd023adaSAndreas Dannenberg	depends on I2C
2029bd023adaSAndreas Dannenberg	help
2030bd023adaSAndreas Dannenberg	  Enable support for Texas Instruments TAS5720L/M high-efficiency mono
2031bd023adaSAndreas Dannenberg	  Class-D audio power amplifiers.
2032bd023adaSAndreas Dannenberg
2033ec452684SDaniel Beerconfig SND_SOC_TAS5805M
2034ec452684SDaniel Beer	tristate "Texas Instruments TAS5805M speaker amplifier"
2035ec452684SDaniel Beer	depends on I2C
2036ec452684SDaniel Beer	help
2037ec452684SDaniel Beer	  Enable support for Texas Instruments TAS5805M Class-D
2038ec452684SDaniel Beer	  amplifiers. This is a speaker amplifier with an integrated
2039ec452684SDaniel Beer	  DSP. DSP configuration for each instance needs to be supplied
2040ec452684SDaniel Beer	  via a device-tree attribute.
2041ec452684SDaniel Beer
2042157b68baSAndreas Dannenbergconfig SND_SOC_TAS6424
2043157b68baSAndreas Dannenberg	tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier"
2044157b68baSAndreas Dannenberg	depends on I2C
2045157b68baSAndreas Dannenberg	help
2046157b68baSAndreas Dannenberg	  Enable support for Texas Instruments TAS6424 high-efficiency
2047157b68baSAndreas Dannenberg	  digital input quad-channel Class-D audio power amplifiers.
2048157b68baSAndreas Dannenberg
20493d3db943SMatt Porterconfig SND_SOC_TDA7419
20503d3db943SMatt Porter	tristate "ST TDA7419 audio processor"
20513d3db943SMatt Porter	depends on I2C
20523d3db943SMatt Porter	select REGMAP_I2C
20533d3db943SMatt Porter
2054fbace43eSPeter Rosinconfig SND_SOC_TFA9879
2055fbace43eSPeter Rosin	tristate "NXP Semiconductors TFA9879 amplifier"
2056fbace43eSPeter Rosin	depends on I2C
2057fbace43eSPeter Rosin
2058af00978aSStephan Gerholdconfig SND_SOC_TFA989X
2059af00978aSStephan Gerhold	tristate "NXP/Goodix TFA989X (TFA1) amplifiers"
2060af00978aSStephan Gerhold	depends on I2C
2061af00978aSStephan Gerhold	select REGMAP_I2C
2062af00978aSStephan Gerhold	help
2063af00978aSStephan Gerhold	  Enable support for NXP (now Goodix) TFA989X (TFA1 family) speaker
2064af00978aSStephan Gerhold	  amplifiers, e.g. TFA9895.
2065af00978aSStephan Gerhold	  Note that the driver currently bypasses the built-in "CoolFlux DSP"
2066af00978aSStephan Gerhold	  and does not support (hardware) volume control.
2067af00978aSStephan Gerhold
2068e9a3b57eSRicard Wanderlofconfig SND_SOC_TLV320ADC3XXX
2069e9a3b57eSRicard Wanderlof	tristate "Texas Instruments TLV320ADC3001/3101 audio ADC"
2070e9a3b57eSRicard Wanderlof	depends on I2C
2071551f2994SRandy Dunlap	depends on GPIOLIB
2072e9a3b57eSRicard Wanderlof	help
2073e9a3b57eSRicard Wanderlof	 Enable support for Texas Instruments TLV320ADC3001 and TLV320ADC3101
2074e9a3b57eSRicard Wanderlof	 ADCs.
2075e9a3b57eSRicard Wanderlof
20763e860846SMark Brownconfig SND_SOC_TLV320AIC23
20773e860846SMark Brown	tristate
20783e860846SMark Brown
2079b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_I2C
2080d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
2081bf9706feSMax Filippov	depends on I2C
2082b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
2083b3fc5725SMax Filippov
2084b3fc5725SMax Filippovconfig SND_SOC_TLV320AIC23_SPI
2085d004ebbeSMax Filippov	tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
2086bf9706feSMax Filippov	depends on SPI_MASTER
2087b3fc5725SMax Filippov	select SND_SOC_TLV320AIC23
2088b3fc5725SMax Filippov
20893e860846SMark Brownconfig SND_SOC_TLV320AIC26
2090379cf397SPaul Bolle	tristate
2091446e0f69STakashi Iwai	depends on SPI
20923e860846SMark Brown
2093e00447faSJyri Sarhaconfig SND_SOC_TLV320AIC31XX
209496665e31SPeter Ujfalusi	tristate "Texas Instruments TLV320AIC31xx CODECs"
2095a9ef83f2SPeter Ujfalusi	depends on I2C
2096a9ef83f2SPeter Ujfalusi	select REGMAP_I2C
2097e00447faSJyri Sarha
2098684a65d4SWolfram Sangconfig SND_SOC_TLV320AIC32X4
20991d471cd1SJavier Martin	tristate
2100514b044cSAnnaliese McDermond	depends on COMMON_CLK
21011d471cd1SJavier Martin
21023bcfd222SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_I2C
21039245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C"
21043bcfd222SJeremy McDermond	depends on I2C
210564f01d2bSMark Brown	depends on COMMON_CLK
21063bcfd222SJeremy McDermond	select SND_SOC_TLV320AIC32X4
21073bcfd222SJeremy McDermond
2108125bc681SJeremy McDermondconfig SND_SOC_TLV320AIC32X4_SPI
21099245f647SAndrew F. Davis	tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI"
2110125bc681SJeremy McDermond	depends on SPI_MASTER
211164f01d2bSMark Brown	depends on COMMON_CLK
2112125bc681SJeremy McDermond	select SND_SOC_TLV320AIC32X4
2113125bc681SJeremy McDermond
21143e860846SMark Brownconfig SND_SOC_TLV320AIC3X
2115a96d2ba2SJiri Prchal	tristate
2116a96d2ba2SJiri Prchal
2117a96d2ba2SJiri Prchalconfig SND_SOC_TLV320AIC3X_I2C
2118a96d2ba2SJiri Prchal	tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C"
21191291e141SMark Brown	depends on I2C
2120a96d2ba2SJiri Prchal	select SND_SOC_TLV320AIC3X
2121a96d2ba2SJiri Prchal	select REGMAP_I2C
21223e860846SMark Brown
2123fd4daab3SJiri Prchalconfig SND_SOC_TLV320AIC3X_SPI
2124fd4daab3SJiri Prchal	tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI"
2125fd4daab3SJiri Prchal	depends on SPI_MASTER
2126fd4daab3SJiri Prchal	select SND_SOC_TLV320AIC3X
2127fd4daab3SJiri Prchal	select REGMAP_SPI
2128fd4daab3SJiri Prchal
2129c8bf93f0SPeter Ujfalusiconfig SND_SOC_TLV320DAC33
2130c8bf93f0SPeter Ujfalusi	tristate
2131ce0c97f8SGeert Uytterhoeven	depends on I2C
2132c8bf93f0SPeter Ujfalusi
2133689c7655SDan Murphyconfig SND_SOC_TLV320ADCX140
2134689c7655SDan Murphy	tristate "Texas Instruments TLV320ADCX140 CODEC family"
2135689c7655SDan Murphy	depends on I2C
2136689c7655SDan Murphy	select REGMAP_I2C
2137689c7655SDan Murphy	help
2138689c7655SDan Murphy	  Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and
2139689c7655SDan Murphy	  tlv320adc6140 quad channel ADCs.
2140689c7655SDan Murphy
21412880fc87SDylan Reidconfig SND_SOC_TS3A227E
21422880fc87SDylan Reid	tristate "TI Headset/Mic detect and keypress chip"
21432880fc87SDylan Reid	depends on I2C
21442880fc87SDylan Reid
2145ba6c2959SSteven Eckhoffconfig SND_SOC_TSCS42XX
2146ba6c2959SSteven Eckhoff	tristate "Tempo Semiconductor TSCS42xx CODEC"
2147ba6c2959SSteven Eckhoff	depends on I2C
2148ba6c2959SSteven Eckhoff	select REGMAP_I2C
2149ba6c2959SSteven Eckhoff	help
2150ba6c2959SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS42xx audio CODEC.
2151ba6c2959SSteven Eckhoff
21520e725b48SSteven Eckhoffconfig SND_SOC_TSCS454
21530e725b48SSteven Eckhoff	tristate "Tempo Semiconductor TSCS454 CODEC"
21540e725b48SSteven Eckhoff	depends on I2C
21550e725b48SSteven Eckhoff	select REGMAP_I2C
21560e725b48SSteven Eckhoff	help
21570e725b48SSteven Eckhoff	  Add support for Tempo Semiconductor's TSCS454 audio CODEC.
21580e725b48SSteven Eckhoff
2159cc17557eSSteve Sakomanconfig SND_SOC_TWL4030
2160cc17557eSSteve Sakoman	tristate
2161ea00d952SGeert Uytterhoeven	depends on TWL4030_CORE
2162ea00d952SGeert Uytterhoeven	select MFD_TWL4030_AUDIO
2163cc17557eSSteve Sakoman
21648ecbabd9SMisael Lopez Cruzconfig SND_SOC_TWL6040
21658ecbabd9SMisael Lopez Cruz	tristate
2166ea00d952SGeert Uytterhoeven	depends on TWL6040_CORE
21678ecbabd9SMisael Lopez Cruz
2168caa918efSAndra Danciuconfig SND_SOC_UDA1334
2169caa918efSAndra Danciu	tristate "NXP UDA1334 DAC"
2170caa918efSAndra Danciu	depends on GPIOLIB
2171caa918efSAndra Danciu	help
2172caa918efSAndra Danciu	  The UDA1334 is an NXP audio codec, supports the I2S-bus data format
2173caa918efSAndra Danciu	  and has basic features such as de-emphasis (at 44.1 kHz sampling
2174caa918efSAndra Danciu	  rate) and mute.
2175caa918efSAndra Danciu
2176de0fb25eSBinbin Zhouconfig SND_SOC_UDA1342
2177de0fb25eSBinbin Zhou	tristate "NXP UDA1342 CODEC"
2178de0fb25eSBinbin Zhou	depends on I2C
2179de0fb25eSBinbin Zhou	help
2180de0fb25eSBinbin Zhou	  The UDA1342 is an NXP audio codec, support 2x Stereo audio ADC (4x PGA
2181de0fb25eSBinbin Zhou	  mic inputs), stereo audio DAC, with basic audio processing.
2182de0fb25eSBinbin Zhou
2183b7482f52SPhilipp Zabelconfig SND_SOC_UDA1380
2184b7482f52SPhilipp Zabel	tristate
21854a5cf132SKuninori Morimoto	depends on I2C
2186b7482f52SPhilipp Zabel
218711b0b802SKrzysztof Kozlowskiconfig SND_SOC_WCD_CLASSH
218811b0b802SKrzysztof Kozlowski	tristate
218911b0b802SKrzysztof Kozlowski
219020aedafdSSrinivas Kandagatlaconfig SND_SOC_WCD9335
219120aedafdSSrinivas Kandagatla	tristate "WCD9335 Codec"
2192a8233b6cSMark Brown	depends on SLIMBUS
219320aedafdSSrinivas Kandagatla	select REGMAP_SLIMBUS
2194ac71317eSMarc Gonzalez	select REGMAP_IRQ
219511b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
219620aedafdSSrinivas Kandagatla	help
219720aedafdSSrinivas Kandagatla	  The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports
219820aedafdSSrinivas Kandagatla	  Qualcomm Technologies, Inc. (QTI) multimedia solutions,
219920aedafdSSrinivas Kandagatla	  including the MSM8996, MSM8976, and MSM8956 chipsets.
220020aedafdSSrinivas Kandagatla
22010e5c9e7fSSrinivas Kandagatlaconfig SND_SOC_WCD_MBHC
22020e5c9e7fSSrinivas Kandagatla	tristate
22030e5c9e7fSSrinivas Kandagatla
2204a61f3b4fSSrinivas Kandagatlaconfig SND_SOC_WCD934X
2205a61f3b4fSSrinivas Kandagatla	tristate "WCD9340/WCD9341 Codec"
220642b71635SSrinivas Kandagatla	depends on COMMON_CLK
22079815746cSKrzysztof Kozlowski	depends on SLIMBUS
2208e231cd83SGeert Uytterhoeven	select REGMAP_IRQ
22094d73b97bSRen Zhijie	select REGMAP_SLIMBUS
221011b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
22119fb9b169SSrinivas Kandagatla	select SND_SOC_WCD_MBHC
22125b7f4e5dSKrzysztof Kozlowski	depends on MFD_WCD934X || COMPILE_TEST
2213a61f3b4fSSrinivas Kandagatla	help
2214a61f3b4fSSrinivas Kandagatla	  The WCD9340/9341 is a audio codec IC Integrated in
2215a61f3b4fSSrinivas Kandagatla	  Qualcomm SoCs like SDM845.
2216a61f3b4fSSrinivas Kandagatla
2217313e978dSPrasad Kumpatlaconfig SND_SOC_WCD937X
2218313e978dSPrasad Kumpatla	depends on SND_SOC_WCD937X_SDW
2219313e978dSPrasad Kumpatla	tristate
2220313e978dSPrasad Kumpatla	depends on SOUNDWIRE || !SOUNDWIRE
2221313e978dSPrasad Kumpatla	select SND_SOC_WCD_CLASSH
2222313e978dSPrasad Kumpatla
2223313e978dSPrasad Kumpatlaconfig SND_SOC_WCD937X_SDW
2224313e978dSPrasad Kumpatla	tristate "WCD9370/WCD9375 Codec - SDW"
2225313e978dSPrasad Kumpatla	select SND_SOC_WCD937X
2226313e978dSPrasad Kumpatla	select SND_SOC_WCD_MBHC
2227313e978dSPrasad Kumpatla	select REGMAP_IRQ
2228313e978dSPrasad Kumpatla	depends on SOUNDWIRE
2229313e978dSPrasad Kumpatla	select REGMAP_SOUNDWIRE
2230313e978dSPrasad Kumpatla	help
2231313e978dSPrasad Kumpatla	  The WCD9370/9375 is an audio codec IC used with SoCs
2232313e978dSPrasad Kumpatla	  like SC7280 or QCM6490 chipsets, and it connected
2233313e978dSPrasad Kumpatla	  via soundwire.
2234313e978dSPrasad Kumpatla	  To compile this codec driver say Y or m.
2235313e978dSPrasad Kumpatla
223604544222SSrinivas Kandagatlaconfig SND_SOC_WCD938X
22379431f8dfSSrinivas Kandagatla	depends on SND_SOC_WCD938X_SDW
223804544222SSrinivas Kandagatla	tristate
2239b9a4b57fSArnd Bergmann	depends on SOUNDWIRE || !SOUNDWIRE
224011b0b802SKrzysztof Kozlowski	select SND_SOC_WCD_CLASSH
224104544222SSrinivas Kandagatla
224204544222SSrinivas Kandagatlaconfig SND_SOC_WCD938X_SDW
224304544222SSrinivas Kandagatla	tristate "WCD9380/WCD9385 Codec - SDW"
224404544222SSrinivas Kandagatla	select SND_SOC_WCD938X
2245bcee7ed0SSrinivas Kandagatla	select SND_SOC_WCD_MBHC
2246214174d9SSrinivasa Rao Mandadapu	select REGMAP_IRQ
224704544222SSrinivas Kandagatla	depends on SOUNDWIRE
224804544222SSrinivas Kandagatla	select REGMAP_SOUNDWIRE
224904544222SSrinivas Kandagatla	help
225004544222SSrinivas Kandagatla	  The WCD9380/9385 is a audio codec IC Integrated in
225104544222SSrinivas Kandagatla	  Qualcomm SoCs like SM8250.
225204544222SSrinivas Kandagatla
225310f514bdSNeil Armstrongconfig SND_SOC_WCD939X
225410f514bdSNeil Armstrong	depends on SND_SOC_WCD939X_SDW
225510f514bdSNeil Armstrong	tristate
225610f514bdSNeil Armstrong	depends on SOUNDWIRE || !SOUNDWIRE
225710f514bdSNeil Armstrong	depends on TYPEC || !TYPEC
225810f514bdSNeil Armstrong	select SND_SOC_WCD_CLASSH
225910f514bdSNeil Armstrong
2260be2af391SNeil Armstrongconfig SND_SOC_WCD939X_SDW
2261be2af391SNeil Armstrong	tristate "WCD9390/WCD9395 Codec - SDW"
2262b4956275SArnd Bergmann	depends on TYPEC || !TYPEC
226310f514bdSNeil Armstrong	select SND_SOC_WCD939X
226410f514bdSNeil Armstrong	select SND_SOC_WCD_MBHC
2265be2af391SNeil Armstrong	select REGMAP_IRQ
2266be2af391SNeil Armstrong	depends on SOUNDWIRE
2267be2af391SNeil Armstrong	select REGMAP_SOUNDWIRE
2268be2af391SNeil Armstrong	help
2269be2af391SNeil Armstrong	  The WCD9390/9395 is a audio codec IC Integrated in
2270be2af391SNeil Armstrong	  Qualcomm SoCs like SM8650.
2271be2af391SNeil Armstrong
227249d7ad9dSMark Brownconfig SND_SOC_WL1273
227349d7ad9dSMark Brown	tristate
227449d7ad9dSMark Brown
2275e3523e01SDimitris Papastamosconfig SND_SOC_WM0010
2276e3523e01SDimitris Papastamos	tristate
2277ce0c97f8SGeert Uytterhoeven	depends on SPI_MASTER
2278e3523e01SDimitris Papastamos
22794bb3f43cSMark Brownconfig SND_SOC_WM1250_EV1
22804bb3f43cSMark Brown	tristate
2281ce0c97f8SGeert Uytterhoeven	depends on I2C
22824bb3f43cSMark Brown
22834911ccdbSMark Brownconfig SND_SOC_WM2000
22844911ccdbSMark Brown	tristate
2285ce0c97f8SGeert Uytterhoeven	depends on I2C
22864911ccdbSMark Brown
2287d5315a23SMark Brownconfig SND_SOC_WM2200
2288d5315a23SMark Brown	tristate
2289ce0c97f8SGeert Uytterhoeven	depends on I2C
2290d5315a23SMark Brown
22916d4baf08SMark Brownconfig SND_SOC_WM5100
22926d4baf08SMark Brown	tristate
2293ce0c97f8SGeert Uytterhoeven	depends on I2C
22946d4baf08SMark Brown
229593e8791dSMark Brownconfig SND_SOC_WM5102
229693e8791dSMark Brown	tristate
229733d55070SHans de Goede	depends on MFD_WM5102 && MFD_ARIZONA
229893e8791dSMark Brown
22995c6af635SMark Brownconfig SND_SOC_WM5110
23005c6af635SMark Brown	tristate
230133d55070SHans de Goede	depends on MFD_WM5110 && MFD_ARIZONA
23025c6af635SMark Brown
230340aa4a30SMark Brownconfig SND_SOC_WM8350
230440aa4a30SMark Brown	tristate
2305ea00d952SGeert Uytterhoeven	depends on MFD_WM8350
230640aa4a30SMark Brown
2307aaf1e176SMark Brownconfig SND_SOC_WM8400
2308aaf1e176SMark Brown	tristate
2309ea00d952SGeert Uytterhoeven	# FIXME nothing selects SND_SOC_WM8400??
2310ea00d952SGeert Uytterhoeven	depends on MFD_WM8400
2311aaf1e176SMark Brown
23125d421516SMark Brownconfig SND_SOC_WM8510
23131291e141SMark Brown	tristate "Wolfson Microelectronics WM8510 CODEC"
23141291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
23155d421516SMark Brown
23161dcf98ffSMark Brownconfig SND_SOC_WM8523
23171291e141SMark Brown	tristate "Wolfson Microelectronics WM8523 DAC"
23181291e141SMark Brown	depends on I2C
23191dcf98ffSMark Brown
2320007b6a54SMihai Serbanconfig SND_SOC_WM8524
2321007b6a54SMihai Serban	tristate "Wolfson Microelectronics WM8524 DAC"
2322007b6a54SMihai Serban	depends on GPIOLIB
2323007b6a54SMihai Serban
2324e88ba015SMark Brownconfig SND_SOC_WM8580
2325028f5a5bSMatt Flax	tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs"
23261291e141SMark Brown	depends on I2C
2327e88ba015SMark Brown
2328bd6d4177SMike Arthurconfig SND_SOC_WM8711
23291291e141SMark Brown	tristate "Wolfson Microelectronics WM8711 CODEC"
23301291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2331bd6d4177SMike Arthur
233289933deeSNeil Jonesconfig SND_SOC_WM8727
233389933deeSNeil Jones	tristate
233489933deeSNeil Jones
233571cfc902SMark Brownconfig SND_SOC_WM8728
23361291e141SMark Brown	tristate "Wolfson Microelectronics WM8728 DAC"
23371291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
233871cfc902SMark Brown
23397f137ab6SRichard Purdieconfig SND_SOC_WM8731
23409dc15f81SMark Brown	tristate
23419dc15f81SMark Brown
23429dc15f81SMark Brownconfig SND_SOC_WM8731_I2C
23439dc15f81SMark Brown	tristate "Wolfson Microelectronics WM8731 CODEC with I2C"
23449dc15f81SMark Brown	depends on I2C
23459dc15f81SMark Brown	select REGMAP
23469dc15f81SMark Brown	select SND_SOC_WM8731
23479dc15f81SMark Brown
23489dc15f81SMark Brownconfig SND_SOC_WM8731_SPI
23499dc15f81SMark Brown	tristate "Wolfson Microelectronics WM8731 CODEC with SPI"
23509dc15f81SMark Brown	depends on SPI
23519dc15f81SMark Brown	select REGMAP
23529dc15f81SMark Brown	select SND_SOC_WM8731
23537f137ab6SRichard Purdie
23542a9ae13aSMark Brownconfig SND_SOC_WM8737
23551291e141SMark Brown	tristate "Wolfson Microelectronics WM8737 ADC"
23561291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
23572a9ae13aSMark Brown
2358992bee40SIan Larteyconfig SND_SOC_WM8741
23593fb83cbeSAxel Lin	tristate "Wolfson Microelectronics WM8741 DAC"
23601291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2361992bee40SIan Lartey
23627f137ab6SRichard Purdieconfig SND_SOC_WM8750
23631291e141SMark Brown	tristate "Wolfson Microelectronics WM8750 CODEC"
23641291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
23657f137ab6SRichard Purdie
236633703b73SLiam Girdwoodconfig SND_SOC_WM8753
23671291e141SMark Brown	tristate "Wolfson Microelectronics WM8753 CODEC"
23681291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
236933703b73SLiam Girdwood
2370c046fd4dSDimitris Papastamosconfig SND_SOC_WM8770
23711291e141SMark Brown	tristate "Wolfson Microelectronics WM8770 CODEC"
2372e479d85cSMark Brown	depends on SPI_MASTER
2373c046fd4dSDimitris Papastamos
2374924914eeSMark Brownconfig SND_SOC_WM8776
23751291e141SMark Brown	tristate "Wolfson Microelectronics WM8776 CODEC"
23761291e141SMark Brown	depends on SND_SOC_I2C_AND_SPI
2377924914eeSMark Brown
2378ec3ea54cSJohannes Stezenbachconfig SND_SOC_WM8782
23792da48013SDaniel Mack	tristate "Wolfson Microelectronics WM8782 ADC"
2380ec3ea54cSJohannes Stezenbach
238133cf45c8SDimitris Papastamosconfig SND_SOC_WM8804
2382bbed297dSCharles Keepax	tristate
2383bbed297dSCharles Keepax
2384bbed297dSCharles Keepaxconfig SND_SOC_WM8804_I2C
2385bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
2386bbed297dSCharles Keepax	depends on I2C
2387bbed297dSCharles Keepax	select SND_SOC_WM8804
2388bbed297dSCharles Keepax	select REGMAP_I2C
2389bbed297dSCharles Keepax
2390bbed297dSCharles Keepaxconfig SND_SOC_WM8804_SPI
2391bbed297dSCharles Keepax	tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
2392bbed297dSCharles Keepax	depends on SPI_MASTER
2393bbed297dSCharles Keepax	select SND_SOC_WM8804
2394bbed297dSCharles Keepax	select REGMAP_SPI
239533cf45c8SDimitris Papastamos
23960e0e16a8SMark Brownconfig SND_SOC_WM8900
23970e0e16a8SMark Brown	tristate
239891e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
23990e0e16a8SMark Brown
2400f1c0a02fSMark Brownconfig SND_SOC_WM8903
24011291e141SMark Brown	tristate "Wolfson Microelectronics WM8903 CODEC"
24021291e141SMark Brown	depends on I2C
2403f1c0a02fSMark Brown
2404a91eb199SMark Brownconfig SND_SOC_WM8904
24052bb853f6SMichał Mirosław	tristate "Wolfson Microelectronics WM8904 CODEC"
24062bb853f6SMichał Mirosław	depends on I2C
2407a91eb199SMark Brown
24080b5e92c5SJonathan Cameronconfig SND_SOC_WM8940
24093a3610aaSLukasz Majewski	tristate "Wolfson Microelectronics WM8940 codec"
2410ce0c97f8SGeert Uytterhoeven	depends on I2C
24110b5e92c5SJonathan Cameron
2412b35a28afSMark Brownconfig SND_SOC_WM8955
2413b35a28afSMark Brown	tristate
2414ce0c97f8SGeert Uytterhoeven	depends on I2C
2415b35a28afSMark Brown
2416f2644a2cSMark Brownconfig SND_SOC_WM8960
2417465011fcSFabio Estevam	tristate "Wolfson Microelectronics WM8960 CODEC"
24183fcdfc9dSMark Brown	depends on I2C
2419f2644a2cSMark Brown
242074dc55edSMark Brownconfig SND_SOC_WM8961
242174a6a948SDoug Brown	tristate "Wolfson Microelectronics WM8961 CODEC"
2422ce0c97f8SGeert Uytterhoeven	depends on I2C
242374dc55edSMark Brown
24249a76f1ffSMark Brownconfig SND_SOC_WM8962
24251291e141SMark Brown	tristate "Wolfson Microelectronics WM8962 CODEC"
2426a2915d4fSArnd Bergmann	depends on I2C && INPUT
24279a76f1ffSMark Brown
24288bae3e23SKenneth Kiralyconfig SND_SOC_WM8971
24298bae3e23SKenneth Kiraly	tristate
2430ce0c97f8SGeert Uytterhoeven	depends on I2C
24318bae3e23SKenneth Kiraly
24320a1bf553SMark Brownconfig SND_SOC_WM8974
24332005bd88SMans Rullgard	tristate "Wolfson Microelectronics WM8974 codec"
24342005bd88SMans Rullgard	depends on I2C
24350a1bf553SMark Brown
24360d34e915SGuennadi Liakhovetskiconfig SND_SOC_WM8978
243777c54539SGeert Uytterhoeven	tristate "Wolfson Microelectronics WM8978 codec"
243877c54539SGeert Uytterhoeven	depends on I2C
24390d34e915SGuennadi Liakhovetski
24406b3860b0SDimitris Papastamosconfig SND_SOC_WM8983
24416b3860b0SDimitris Papastamos	tristate
2442c1c050eeSWei Li	depends on SND_SOC_I2C_AND_SPI
24436b3860b0SDimitris Papastamos
24446d6f8b83SDimitris Papastamosconfig SND_SOC_WM8985
2445811e66deSPetr Kulhavy	tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
2446b82d67f4SArnd Bergmann	depends on SND_SOC_I2C_AND_SPI
24476d6f8b83SDimitris Papastamos
24485409fb4eSMark Brownconfig SND_SOC_WM8988
24495409fb4eSMark Brown	tristate
245091e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
24515409fb4eSMark Brown
2452f10485e7SMark Brownconfig SND_SOC_WM8990
2453f10485e7SMark Brown	tristate
2454ce0c97f8SGeert Uytterhoeven	depends on I2C
2455f10485e7SMark Brown
2456203db220SDimitris Papastamosconfig SND_SOC_WM8991
2457203db220SDimitris Papastamos	tristate
2458ce0c97f8SGeert Uytterhoeven	depends on I2C
2459203db220SDimitris Papastamos
2460942c435bSMark Brownconfig SND_SOC_WM8993
2461942c435bSMark Brown	tristate
2462ce0c97f8SGeert Uytterhoeven	depends on I2C
2463942c435bSMark Brown
24649e6e96a1SMark Brownconfig SND_SOC_WM8994
24659e6e96a1SMark Brown	tristate
24665ed01155SCharles Keepax	depends on MFD_WM8994
24679e6e96a1SMark Brown
24686a504a75SDimitris Papastamosconfig SND_SOC_WM8995
24696a504a75SDimitris Papastamos	tristate
247091e475b5SWei Li	depends on SND_SOC_I2C_AND_SPI
24716a504a75SDimitris Papastamos
2472a9ba6151SMark Brownconfig SND_SOC_WM8996
2473a9ba6151SMark Brown	tristate
2474ce0c97f8SGeert Uytterhoeven	depends on I2C
2475a9ba6151SMark Brown
247640843aeaSCharles Keepaxconfig SND_SOC_WM8997
247740843aeaSCharles Keepax	tristate
247833d55070SHans de Goede	depends on MFD_WM8997 && MFD_ARIZONA
247940843aeaSCharles Keepax
24806ebbce0aSRichard Fitzgeraldconfig SND_SOC_WM8998
24816ebbce0aSRichard Fitzgerald	tristate
248233d55070SHans de Goede	depends on MFD_WM8998 && MFD_ARIZONA
24836ebbce0aSRichard Fitzgerald
248486ed3669SMark Brownconfig SND_SOC_WM9081
248586ed3669SMark Brown	tristate
2486e2d57591SKuninori Morimoto	depends on I2C
248786ed3669SMark Brown
248859792aa9SMark Brownconfig SND_SOC_WM9090
248959792aa9SMark Brown	tristate
2490ce0c97f8SGeert Uytterhoeven	depends on I2C
249159792aa9SMark Brown
24922aceefefSIan Moltonconfig SND_SOC_WM9705
24932aceefefSIan Molton	tristate
2494ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2495206964e8SLars-Peter Clausen	select REGMAP_AC97
2496aaafcfedSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
24972aceefefSIan Molton
24987f137ab6SRichard Purdieconfig SND_SOC_WM9712
24997f137ab6SRichard Purdie	tristate
2500ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2501b4f4f2ebSLars-Peter Clausen	select REGMAP_AC97
25022ed1a8e0SRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
2503b0c813ceSTimur Tabi
250483ac08c0SLiam Girdwoodconfig SND_SOC_WM9713
250583ac08c0SLiam Girdwood	tristate
2506ee2cbe06SArnd Bergmann	depends on SND_SOC_AC97_BUS || AC97_BUS_NEW
2507700dadfeSRobert Jarzmik	select REGMAP_AC97
25089bd400caSRobert Jarzmik	select AC97_BUS_COMPAT if AC97_BUS_NEW
25099db9ed97SJoonyoung Shim
2510a0aab9e1SSrinivas Kandagatlaconfig SND_SOC_WSA881X
2511a0aab9e1SSrinivas Kandagatla	tristate "WSA881X Codec"
2512a0aab9e1SSrinivas Kandagatla	depends on SOUNDWIRE
2513a0aab9e1SSrinivas Kandagatla	select REGMAP_SOUNDWIRE
2514a0aab9e1SSrinivas Kandagatla	help
2515a0aab9e1SSrinivas Kandagatla	  This enables support for Qualcomm WSA8810/WSA8815 Class-D
2516a0aab9e1SSrinivas Kandagatla	  Smart Speaker Amplifier.
2517a0aab9e1SSrinivas Kandagatla
251843b8c7dcSSrinivas Kandagatlaconfig SND_SOC_WSA883X
251943b8c7dcSSrinivas Kandagatla	tristate "WSA883X Codec"
252043b8c7dcSSrinivas Kandagatla	depends on SOUNDWIRE
252143b8c7dcSSrinivas Kandagatla	select REGMAP_SOUNDWIRE
252243b8c7dcSSrinivas Kandagatla	help
252343b8c7dcSSrinivas Kandagatla	  This enables support for Qualcomm WSA8830/WSA8835 Class-D
252443b8c7dcSSrinivas Kandagatla	  Smart Speaker Amplifier.
252543b8c7dcSSrinivas Kandagatla
2526aa21a7d4SKrzysztof Kozlowskiconfig SND_SOC_WSA884X
2527aa21a7d4SKrzysztof Kozlowski	tristate "WSA884X Codec"
2528aa21a7d4SKrzysztof Kozlowski	depends on SOUNDWIRE
2529aa21a7d4SKrzysztof Kozlowski	select REGMAP_SOUNDWIRE
2530aa21a7d4SKrzysztof Kozlowski	help
2531aa21a7d4SKrzysztof Kozlowski	  This enables support for Qualcomm WSA8840/WSA8845/WSA8845H Class-D
2532aa21a7d4SKrzysztof Kozlowski	  Smart Speaker Amplifier.
2533aa21a7d4SKrzysztof Kozlowski
253452e8a94bSSven Van Asbroeckconfig SND_SOC_ZL38060
253552e8a94bSSven Van Asbroeck	tristate "Microsemi ZL38060 Connected Home Audio Processor"
253652e8a94bSSven Van Asbroeck	depends on SPI_MASTER
25370de2cc37SArnd Bergmann	depends on GPIOLIB
253852e8a94bSSven Van Asbroeck	select REGMAP
253952e8a94bSSven Van Asbroeck	help
254052e8a94bSSven Van Asbroeck	  Support for ZL38060 Connected Home Audio Processor from Microsemi,
254152e8a94bSSven Van Asbroeck	  which consists of a Digital Signal Processor (DSP), several Digital
254252e8a94bSSven Van Asbroeck	  Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs.
254352e8a94bSSven Van Asbroeck
25449db9ed97SJoonyoung Shim# Amp
25459b0a25f0SLars-Peter Clausenconfig SND_SOC_LM4857
25469b0a25f0SLars-Peter Clausen	tristate
2547ce0c97f8SGeert Uytterhoeven	depends on I2C
25489b0a25f0SLars-Peter Clausen
2549fa8d9151SNeil Armstrongconfig SND_SOC_MAX9759
2550fa8d9151SNeil Armstrong	tristate "Maxim MAX9759 speaker Amplifier"
2551c2974487SMark Brown	depends on GPIOLIB
2552fa8d9151SNeil Armstrong
2553394d2bbaSWolfram Sangconfig SND_SOC_MAX9768
2554394d2bbaSWolfram Sang	tristate
2555ce0c97f8SGeert Uytterhoeven	depends on I2C
2556394d2bbaSWolfram Sang
25579db9ed97SJoonyoung Shimconfig SND_SOC_MAX9877
25589db9ed97SJoonyoung Shim	tristate
2559ce0c97f8SGeert Uytterhoeven	depends on I2C
2560493b67efSPeter Ujfalusi
25618b908b86SPhilippe Rétornazconfig SND_SOC_MC13783
25628b908b86SPhilippe Rétornaz	tristate
2563d8dd3f92SGeert Uytterhoeven	depends on MFD_MC13XXX
25648b908b86SPhilippe Rétornaz
2565d808fe9fSTomoya MORINAGAconfig SND_SOC_ML26124
2566d808fe9fSTomoya MORINAGA	tristate
2567ce0c97f8SGeert Uytterhoeven	depends on I2C
2568d808fe9fSTomoya MORINAGA
2569a74d51baSKai Chieh Chuangconfig SND_SOC_MT6351
2570a74d51baSKai Chieh Chuang	tristate "MediaTek MT6351 Codec"
2571a74d51baSKai Chieh Chuang
25725e240449SNicolas Belinconfig SND_SOC_MT6357
25735e240449SNicolas Belin	tristate "MediaTek MT6357 Codec"
25745e240449SNicolas Belin	help
25755e240449SNicolas Belin	  Enable support for the platform which uses MT6357 as
25765e240449SNicolas Belin	  external codec device.
25775e240449SNicolas Belin
25786a8d4198SShunli Wangconfig SND_SOC_MT6358
25796a8d4198SShunli Wang	tristate "MediaTek MT6358 Codec"
25806a8d4198SShunli Wang	help
25816a8d4198SShunli Wang	  Enable support for the platform which uses MT6358 as
25826a8d4198SShunli Wang	  external codec device.
25836a8d4198SShunli Wang
25848061734aSJiaxin Yuconfig SND_SOC_MT6359
25858061734aSJiaxin Yu	tristate "MediaTek MT6359 Codec"
25868061734aSJiaxin Yu	depends on MTK_PMIC_WRAP
25878061734aSJiaxin Yu	help
25888061734aSJiaxin Yu	  Enable support for the platform which uses MT6359 as
25898061734aSJiaxin Yu	  external codec device.
25908061734aSJiaxin Yu
2591eef07b9eSArgus Linconfig SND_SOC_MT6359_ACCDET
2592eef07b9eSArgus Lin	tristate "MediaTek MT6359 ACCDET driver"
2593eef07b9eSArgus Lin	depends on MTK_PMIC_WRAP
2594eef07b9eSArgus Lin	help
2595eef07b9eSArgus Lin	  ACCDET means Accessory Detection technology, MediaTek develop it
2596eef07b9eSArgus Lin	  for ASoC codec soc-jack detection mechanism.
2597eef07b9eSArgus Lin	  Select N if you don't have jack on board.
2598eef07b9eSArgus Lin
2599f289e55cSJeff Changconfig SND_SOC_MT6660
2600f289e55cSJeff Chang	tristate "Mediatek MT6660 Speaker Amplifier"
2601f289e55cSJeff Chang	depends on I2C
2602f289e55cSJeff Chang	help
2603f289e55cSJeff Chang	  MediaTek MT6660 is a smart power amplifier which contain
2604f289e55cSJeff Chang	  speaker protection, multi-band DRC, equalizer functions.
2605f289e55cSJeff Chang	  Select N if you don't have MT6660 on board.
2606f289e55cSJeff Chang	  Select M to build this as module.
2607f289e55cSJeff Chang
26084d1a9952SDavid Linconfig SND_SOC_NAU8315
26094d1a9952SDavid Lin	tristate "Nuvoton Technology Corporation NAU8315 CODEC"
26104d1a9952SDavid Lin
2611c1644e3dSJohn Hsuconfig SND_SOC_NAU8540
2612c1644e3dSJohn Hsu	tristate "Nuvoton Technology Corporation NAU85L40 CODEC"
2613c1644e3dSJohn Hsu	depends on I2C
2614c1644e3dSJohn Hsu
2615b6970b48SJohn Hsuconfig SND_SOC_NAU8810
2616b6970b48SJohn Hsu	tristate "Nuvoton Technology Corporation NAU88C10 CODEC"
2617b6970b48SJohn Hsu	depends on I2C
2618b6970b48SJohn Hsu
2619aab1ad11SSeven Leeconfig SND_SOC_NAU8821
2620aab1ad11SSeven Lee	tristate "Nuvoton Technology Corporation NAU88L21 CODEC"
2621aab1ad11SSeven Lee	depends on I2C
2622aab1ad11SSeven Lee
26231e3cb6c3SDavid Linconfig SND_SOC_NAU8822
26241e3cb6c3SDavid Lin	tristate "Nuvoton Technology Corporation NAU88C22 CODEC"
26251e3cb6c3SDavid Lin	depends on I2C
26261e3cb6c3SDavid Lin
2627dfeabdedSJohn Hsuconfig SND_SOC_NAU8824
2628dfeabdedSJohn Hsu	tristate "Nuvoton Technology Corporation NAU88L24 CODEC"
2629dfeabdedSJohn Hsu	depends on I2C
2630dfeabdedSJohn Hsu
263134ca27f3SAnatol Pomozovconfig SND_SOC_NAU8825
263234ca27f3SAnatol Pomozov	tristate
2633ce0c97f8SGeert Uytterhoeven	depends on I2C
263434ca27f3SAnatol Pomozov
2635ba1850dcSIgor Prusovconfig SND_SOC_NTPFW
2636ba1850dcSIgor Prusov	tristate
2637ba1850dcSIgor Prusov
26382bd61fffSIgor Prusovconfig SND_SOC_NTP8918
26392bd61fffSIgor Prusov	select SND_SOC_NTPFW
26402bd61fffSIgor Prusov	tristate "NeoFidelity NTP8918 amplifier"
26412bd61fffSIgor Prusov	depends on I2C
26422bd61fffSIgor Prusov
2643dc9004eaSIgor Prusovconfig SND_SOC_NTP8835
2644dc9004eaSIgor Prusov	select SND_SOC_NTPFW
2645dc9004eaSIgor Prusov	tristate "NeoFidelity NTP8835 and NTP8835C amplifiers"
2646dc9004eaSIgor Prusov	depends on I2C
2647dc9004eaSIgor Prusov
2648493b67efSPeter Ujfalusiconfig SND_SOC_TPA6130A2
26491291e141SMark Brown	tristate "Texas Instruments TPA6130A2 headphone amplifier"
26501291e141SMark Brown	depends on I2C
26514d1a7722SMark Brown
26529e3d83c5SSrinivasa Rao Mandadapuconfig SND_SOC_LPASS_MACRO_COMMON
26539e3d83c5SSrinivasa Rao Mandadapu        tristate
26549e3d83c5SSrinivasa Rao Mandadapu
2655809bcbceSSrinivas Kandagatlaconfig SND_SOC_LPASS_WSA_MACRO
2656809bcbceSSrinivas Kandagatla	depends on COMMON_CLK
2657e78f36bcSBertrand Jacquin	select REGMAP_MMIO
265836ac1e29SKrzysztof Kozlowski	select SND_SOC_LPASS_MACRO_COMMON
2659809bcbceSSrinivas Kandagatla	tristate "Qualcomm WSA Macro in LPASS(Low Power Audio SubSystem)"
2660809bcbceSSrinivas Kandagatla
2661908e6b1dSSrinivas Kandagatlaconfig SND_SOC_LPASS_VA_MACRO
2662908e6b1dSSrinivas Kandagatla	depends on COMMON_CLK
2663e78f36bcSBertrand Jacquin	select REGMAP_MMIO
26649e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2665908e6b1dSSrinivas Kandagatla	tristate "Qualcomm VA Macro in LPASS(Low Power Audio SubSystem)"
2666908e6b1dSSrinivas Kandagatla
2667af3d54b9SSrinivas Kandagatlaconfig SND_SOC_LPASS_RX_MACRO
2668af3d54b9SSrinivas Kandagatla	depends on COMMON_CLK
2669e78f36bcSBertrand Jacquin	select REGMAP_MMIO
26709e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2671af3d54b9SSrinivas Kandagatla	tristate "Qualcomm RX Macro in LPASS(Low Power Audio SubSystem)"
2672af3d54b9SSrinivas Kandagatla
2673c39667ddSSrinivas Kandagatlaconfig SND_SOC_LPASS_TX_MACRO
2674c39667ddSSrinivas Kandagatla	depends on COMMON_CLK
2675e78f36bcSBertrand Jacquin	select REGMAP_MMIO
26769e3d83c5SSrinivasa Rao Mandadapu	select SND_SOC_LPASS_MACRO_COMMON
2677c39667ddSSrinivas Kandagatla	tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)"
2678c39667ddSSrinivas Kandagatla
26794d1a7722SMark Brownendmenu
2680