blob: d224ef3bfb5ea7c3d51786a9f6e29b9936f5da1c [file] [log] [blame]
Mark Brown227b4dc2009-01-03 11:24:41 +01001# Helper to resolve issues with configs that have SPI enabled but I2C
2# modular, meaning we can't build the codec driver in with I2C support.
3# We use an ordered list of conditional defaults to pick the appropriate
4# setting - SPI can't be modular so that case doesn't need to be covered.
5config SND_SOC_I2C_AND_SPI
6 tristate
7 default m if I2C=m
8 default y if I2C=y
9 default y if SPI_MASTER=y
10
Mark Brown4d1a7722014-02-07 15:40:35 +000011menu "CODEC drivers"
12
Mark Brown0c941612008-07-29 11:42:35 +010013config SND_SOC_ALL_CODECS
14 tristate "Build all ASoC CODEC drivers"
Mark Brown64b0c282013-06-25 11:00:06 +010015 depends on COMPILE_TEST
Haojian Zhuangf213f4b2010-08-19 00:35:25 +080016 select SND_SOC_88PM860X if MFD_88PM860X
Mark Brown070504ad2009-01-23 15:34:54 +000017 select SND_SOC_L3
Ola Lilja679d7ab2012-06-07 14:00:21 +020018 select SND_SOC_AB8500_CODEC if ABX500_CORE
Takashi Iwai07637222008-10-30 17:53:19 +010019 select SND_SOC_AC97_CODEC if SND_SOC_AC97_BUS
Mark Browne9ade7f2009-08-13 15:19:42 +010020 select SND_SOC_AD1836 if SPI_MASTER
Lars-Peter Clausen6c3d7132014-02-17 13:16:54 +010021 select SND_SOC_AD193X_SPI if SPI_MASTER
22 select SND_SOC_AD193X_I2C if I2C
Mark Brownca53fb22008-10-22 22:41:11 +010023 select SND_SOC_AD1980 if SND_SOC_AC97_BUS
Scott Jiang5683dc72011-03-26 04:38:30 -040024 select SND_SOC_AD73311
Lars-Peter Clausenddd7a262011-08-15 20:15:22 +020025 select SND_SOC_ADAU1373 if I2C
Lars-Peter Clausen0c2d6962014-02-17 13:16:56 +010026 select SND_SOC_ADAV801 if SPI_MASTER
27 select SND_SOC_ADAV803 if I2C
Lars-Peter Clausen603597c2014-02-18 15:57:35 +010028 select SND_SOC_ADAU1977_SPI if SPI_MASTER
29 select SND_SOC_ADAU1977_I2C if I2C
Lars-Peter Clausenaf2d8b52013-07-22 18:49:52 +020030 select SND_SOC_ADAU1701 if I2C
Mike Frysinger754dec6b72011-03-27 00:43:59 -040031 select SND_SOC_ADS117X
Daniel Macka3819342009-03-09 02:13:17 +010032 select SND_SOC_AK4104 if SPI_MASTER
Mark Brownca53fb22008-10-22 22:41:11 +010033 select SND_SOC_AK4535 if I2C
Mark Brown0d724f82014-01-23 12:50:51 +000034 select SND_SOC_AK4554
Dmitry Artamonow00d27012011-05-18 19:25:09 +040035 select SND_SOC_AK4641 if I2C
Kuninori Morimotoa3a83d92009-08-21 10:23:41 +090036 select SND_SOC_AK4642 if I2C
Joonyoung Shim2312fd82009-09-10 00:12:43 +090037 select SND_SOC_AK4671 if I2C
Daniel Mackcc289be2013-03-08 12:07:28 +010038 select SND_SOC_AK5386
Jarkko Nikula473f89f2010-10-29 16:47:44 +030039 select SND_SOC_ALC5623 if I2C
Leon Romanovsky94d5f7c2011-11-05 12:38:02 +020040 select SND_SOC_ALC5632 if I2C
Miguel Aguilarb56e9722010-03-11 09:32:59 -060041 select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC
apatard@mandriva.com72ed5a82010-05-27 14:57:41 +020042 select SND_SOC_CS42L51 if I2C
Brian Austindfe0f982012-04-27 15:45:52 -050043 select SND_SOC_CS42L52 if I2C
Brian Austin6d10c912011-11-16 12:32:27 -060044 select SND_SOC_CS42L73 if I2C
Mark Brownca53fb22008-10-22 22:41:11 +010045 select SND_SOC_CS4270 if I2C
Alexander Sverdlin67b22512011-01-19 21:22:06 +030046 select SND_SOC_CS4271 if SND_SOC_I2C_AND_SPI
Nicolin Chen0c516b42014-03-20 18:18:37 +080047 select SND_SOC_CS42XX8_I2C if I2C
Joe Millenbach4f73bc42013-01-17 22:44:22 -080048 select SND_SOC_CX20442 if TTY
Kuninori Morimoto98615452009-12-14 13:21:56 +090049 select SND_SOC_DA7210 if I2C
Adam Thomsonef5c2eb2013-02-14 12:02:51 +000050 select SND_SOC_DA7213 if I2C
Adam Thomson48e27872012-06-11 13:15:27 +010051 select SND_SOC_DA732X if I2C
Ashish Chavan9911f7f2012-09-21 20:16:17 +053052 select SND_SOC_DA9055 if I2C
Barry Song200ceb92013-05-18 20:25:00 +080053 select SND_SOC_BT_SCO
M R Swami Reddy2f989f72012-06-01 22:21:54 +053054 select SND_SOC_ISABELLE if I2C
Axel Linf8f626f2011-12-06 15:38:51 +080055 select SND_SOC_JZ4740_CODEC
Mark Brown9b74c7d2011-03-07 12:23:10 +000056 select SND_SOC_LM4857 if I2C
M R Swami Reddydbf7a732012-03-30 16:03:43 +053057 select SND_SOC_LM49453 if I2C
Mark Browne86e1242010-10-18 16:45:24 -070058 select SND_SOC_MAX98088 if I2C
Kuninori Morimoto83f7cbc2012-11-20 20:27:10 -080059 select SND_SOC_MAX98090 if I2C
Peter Hsiang82a5a932011-04-04 19:35:30 -070060 select SND_SOC_MAX98095 if I2C
Christian Glindkamp0e45cab2011-03-09 11:20:04 +010061 select SND_SOC_MAX9850 if I2C
Wolfram Sang394d2bb2012-01-27 16:10:23 +010062 select SND_SOC_MAX9768 if I2C
Mark Brownb4541662010-06-20 14:05:46 +010063 select SND_SOC_MAX9877 if I2C
Philippe Rétornaz8b908b82012-05-15 13:53:50 +020064 select SND_SOC_MC13783 if MFD_MC13XXX
Tomoya MORINAGAd808fe92012-03-19 20:59:28 +090065 select SND_SOC_ML26124 if I2C
Barry Songbf7c6e62013-05-16 14:08:07 +080066 select SND_SOC_HDMI_CODEC
Marek Belisko95169d02013-08-01 11:14:58 +020067 select SND_SOC_PCM1681 if I2C
Michael Trimarchi13b02fa2013-08-03 16:20:43 +020068 select SND_SOC_PCM1792A if SPI_MASTER
Hugo Villeneuve1c0090c2008-11-19 01:37:31 -050069 select SND_SOC_PCM3008
Mark Brown22066222014-03-07 11:44:08 +080070 select SND_SOC_PCM512x_I2C if I2C
71 select SND_SOC_PCM512x_SPI if SPI_MASTER
Axel Lin689b9562011-09-22 20:52:12 +080072 select SND_SOC_RT5631 if I2C
Bard Liao997b0522013-06-11 13:10:16 +080073 select SND_SOC_RT5640 if I2C
Oder Chiou1319b2f2014-04-28 19:59:10 +080074 select SND_SOC_RT5645 if I2C
Bard Liao40bc18a2014-04-16 19:20:46 +080075 select SND_SOC_RT5651 if I2C
Zeng Zhaoming9b34e6c2011-02-24 02:08:21 +080076 select SND_SOC_SGTL5000 if I2C
Andrey Smirnov330345e2012-10-05 18:55:02 -070077 select SND_SOC_SI476X if MFD_SI476X_CORE
Rongjun Yingf516e362014-03-05 16:34:34 +080078 select SND_SOC_SIRF_AUDIO_CODEC
Vinod Koul4dc69be2011-01-04 20:16:07 +053079 select SND_SOC_SN95031 if INTEL_SCU_IPC
Chaithrika U Sbe461ba2009-05-28 05:10:50 -040080 select SND_SOC_SPDIF
Lars-Peter Clausenb6b5e762013-05-23 20:14:50 +020081 select SND_SOC_SSM2518 if I2C
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +010082 select SND_SOC_SSM2602_SPI if SPI_MASTER
83 select SND_SOC_SSM2602_I2C if I2C
Johannes Stezenbachc034abf2011-06-22 14:59:24 +020084 select SND_SOC_STA32X if I2C
Rajeev Kumar3be58db2012-07-04 16:11:12 +053085 select SND_SOC_STA529 if I2C
Jon Smirl3c166c72009-05-23 19:13:07 -040086 select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
Daniel Mack4fa89342013-03-08 13:52:09 +010087 select SND_SOC_TAS5086 if I2C
Max Filippovb3fc5722014-03-06 14:04:41 +040088 select SND_SOC_TLV320AIC23_I2C if I2C
89 select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
Mark Brownca53fb22008-10-22 22:41:11 +010090 select SND_SOC_TLV320AIC26 if SPI_MASTER
Jyri Sarhae00447f2014-03-11 12:57:32 +020091 select SND_SOC_TLV320AIC31XX if I2C
Wolfram Sang684a65d2011-10-11 12:43:02 +020092 select SND_SOC_TLV320AIC32X4 if I2C
Mark Brownca53fb22008-10-22 22:41:11 +010093 select SND_SOC_TLV320AIC3X if I2C
Peter Ujfalusi493b67e2009-10-09 15:55:41 +030094 select SND_SOC_TPA6130A2 if I2C
Peter Ujfalusic8bf93f2009-10-15 09:03:56 +030095 select SND_SOC_TLV320DAC33 if I2C
Steve Sakomancc175572008-10-30 21:35:26 -070096 select SND_SOC_TWL4030 if TWL4030_CORE
Peter Ujfalusi8eaeb932012-04-03 11:56:51 +030097 select SND_SOC_TWL6040 if TWL6040_CORE
Christian Pellegrin1cad1de2008-11-15 08:58:16 +010098 select SND_SOC_UDA134X
Mark Brownca53fb22008-10-22 22:41:11 +010099 select SND_SOC_UDA1380 if I2C
Matti Aaltonen40285f82011-03-01 10:10:37 -0300100 select SND_SOC_WL1273 if MFD_WL1273_CORE
Dimitris Papastamose3523e02012-08-23 15:59:56 +0100101 select SND_SOC_WM0010 if SPI_MASTER
Mark Brown4bb3f432011-04-08 16:49:42 +0900102 select SND_SOC_WM1250_EV1 if I2C
Mark Brown3a66d382010-02-11 13:27:19 +0000103 select SND_SOC_WM2000 if I2C
Mark Brownd5315a22012-01-25 19:29:41 +0000104 select SND_SOC_WM2200 if I2C
Mark Brown6d4baf02011-09-20 15:44:21 +0100105 select SND_SOC_WM5100 if I2C
Mark Brown93e87912012-06-19 16:38:15 +0100106 select SND_SOC_WM5102 if MFD_WM5102
Mark Brown5c6af632012-07-09 19:09:41 +0100107 select SND_SOC_WM5110 if MFD_WM5110
Mark Brown40aa4a32008-12-16 10:15:12 +0000108 select SND_SOC_WM8350 if MFD_WM8350
Mark Brownaaf1e172009-03-10 10:55:15 +0000109 select SND_SOC_WM8400 if MFD_WM8400
Mark Brown227b4dc2009-01-03 11:24:41 +0100110 select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
Mark Brown1dcf98f2009-07-01 18:28:54 +0100111 select SND_SOC_WM8523 if I2C
Mark Brownca53fb22008-10-22 22:41:11 +0100112 select SND_SOC_WM8580 if I2C
Mark Brown08aff8c2009-08-18 21:15:14 +0100113 select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
Neil Jones89933de2009-11-02 15:14:17 +0000114 select SND_SOC_WM8727
Mark Brown227b4dc2009-01-03 11:24:41 +0100115 select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
116 select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
Mark Brown2a9ae132010-11-23 19:31:18 +0000117 select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
Ian Lartey992bee42010-07-31 00:32:11 +0100118 select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
Mark Brown227b4dc2009-01-03 11:24:41 +0100119 select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
120 select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
Dimitris Papastamosc046fd42010-11-05 18:41:25 +0000121 select SND_SOC_WM8770 if SPI_MASTER
Mark Brown924914e2009-08-04 23:50:16 +0100122 select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
Johannes Stezenbachec3ea542011-06-22 14:59:25 +0200123 select SND_SOC_WM8782
Dimitris Papastamos33cf45c2010-09-29 11:14:56 +0100124 select SND_SOC_WM8804 if SND_SOC_I2C_AND_SPI
Mark Brownca53fb22008-10-22 22:41:11 +0100125 select SND_SOC_WM8900 if I2C
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200126 select SND_SOC_WM8903 if I2C
Mark Browna91eb192009-11-26 11:56:07 +0000127 select SND_SOC_WM8904 if I2C
Jonathan Cameron0b5e92c52009-04-27 13:49:44 +0000128 select SND_SOC_WM8940 if I2C
Mark Brownb35a28a2009-12-18 12:00:22 +0000129 select SND_SOC_WM8955 if I2C
Mark Brownf2644a22009-04-07 19:20:14 +0100130 select SND_SOC_WM8960 if I2C
Mark Brown74dc55e2009-06-09 09:55:51 +0100131 select SND_SOC_WM8961 if I2C
Mark Brown9a76f1f2010-08-05 13:20:59 +0100132 select SND_SOC_WM8962 if I2C
Mark Brownca53fb22008-10-22 22:41:11 +0100133 select SND_SOC_WM8971 if I2C
Mark Brown0a1bf552009-05-23 11:18:41 +0100134 select SND_SOC_WM8974 if I2C
Guennadi Liakhovetski0d34e912010-01-27 18:56:23 +0100135 select SND_SOC_WM8978 if I2C
Dimitris Papastamos6b3860b2011-07-15 13:51:30 +0100136 select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
Dimitris Papastamos6d6f8b82010-09-15 15:23:20 +0100137 select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
Mark Brown5409fb42009-04-07 18:45:21 +0100138 select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
Mark Brownca53fb22008-10-22 22:41:11 +0100139 select SND_SOC_WM8990 if I2C
Dimitris Papastamos203db222011-01-14 15:49:40 +0000140 select SND_SOC_WM8991 if I2C
Mark Brown942c4352009-06-05 16:32:59 +0100141 select SND_SOC_WM8993 if I2C
Mark Brownfead2152010-02-02 10:06:55 +0000142 select SND_SOC_WM8994 if MFD_WM8994
Dimitris Papastamos6a504a72010-12-22 11:33:11 +0000143 select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
Mark Browna9ba6152011-06-24 12:10:44 +0100144 select SND_SOC_WM8996 if I2C
Charles Keepax40843ae2013-08-12 23:46:55 +0100145 select SND_SOC_WM8997 if MFD_WM8997
Mark Brown86ed3662009-05-22 15:01:19 +0100146 select SND_SOC_WM9081 if I2C
Mark Brown39b8eab2010-04-28 18:36:10 +0100147 select SND_SOC_WM9090 if I2C
Ian Molton2aceefe2009-01-16 11:04:18 +0000148 select SND_SOC_WM9705 if SND_SOC_AC97_BUS
Mark Brownca53fb22008-10-22 22:41:11 +0100149 select SND_SOC_WM9712 if SND_SOC_AC97_BUS
150 select SND_SOC_WM9713 if SND_SOC_AC97_BUS
Mark Brown0c941612008-07-29 11:42:35 +0100151 help
152 Normally ASoC codec drivers are only built if a machine driver which
153 uses them is also built since they are only usable with a machine
154 driver. Selecting this option will allow these drivers to be built
155 without an explicit machine driver for test and development purposes.
156
Mark Brownca53fb22008-10-22 22:41:11 +0100157 Support for the bus types used to access the codecs to be built must
158 be selected separately.
159
Mark Brown0c941612008-07-29 11:42:35 +0100160 If unsure select "N".
161
Haojian Zhuangf213f4b2010-08-19 00:35:25 +0800162config SND_SOC_88PM860X
163 tristate
164
Mark Brown07ed8732012-06-18 21:08:44 +0100165config SND_SOC_ARIZONA
166 tristate
167 default y if SND_SOC_WM5102=y
Mark Brown5c6af632012-07-09 19:09:41 +0100168 default y if SND_SOC_WM5110=y
Charles Keepax40843ae2013-08-12 23:46:55 +0100169 default y if SND_SOC_WM8997=y
Mark Brown07ed8732012-06-18 21:08:44 +0100170 default m if SND_SOC_WM5102=m
Mark Brown5c6af632012-07-09 19:09:41 +0100171 default m if SND_SOC_WM5110=m
Charles Keepax40843ae2013-08-12 23:46:55 +0100172 default m if SND_SOC_WM8997=m
Mark Brown07ed8732012-06-18 21:08:44 +0100173
Mark Browna2342ae2009-07-29 21:21:49 +0100174config SND_SOC_WM_HUBS
175 tristate
Chanwoo Choi41f9a312010-07-20 14:28:33 +0900176 default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
177 default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
Mark Brown0c941612008-07-29 11:42:35 +0100178
Mark Brown2159ad932012-10-11 11:54:02 +0900179config SND_SOC_WM_ADSP
180 tristate
Mark Brown804f5ba2012-08-25 20:29:05 -0700181 default y if SND_SOC_WM5102=y
Mark Brown9a3e1b82013-11-19 16:04:01 +0000182 default y if SND_SOC_WM5110=y
Mark Brown2159ad932012-10-11 11:54:02 +0900183 default y if SND_SOC_WM2200=y
Mark Brown804f5ba2012-08-25 20:29:05 -0700184 default m if SND_SOC_WM5102=m
Mark Brown9a3e1b82013-11-19 16:04:01 +0000185 default m if SND_SOC_WM5110=m
Mark Brown2159ad932012-10-11 11:54:02 +0900186 default m if SND_SOC_WM2200=m
187
Ola Lilja679d7ab2012-06-07 14:00:21 +0200188config SND_SOC_AB8500_CODEC
189 tristate
190
Richard Purdie7f137ab2006-10-06 18:38:37 +0200191config SND_SOC_AC97_CODEC
192 tristate
Takashi Iwai89fe5112008-05-23 16:10:37 +0200193 select SND_AC97_CODEC
Richard Purdie7f137ab2006-10-06 18:38:37 +0200194
Barry Song7eaae412009-08-13 11:59:32 +0800195config SND_SOC_AD1836
196 tristate
197
Barry Songa1533d92010-03-19 14:48:33 +0800198config SND_SOC_AD193X
Barry Song12747382009-07-16 16:00:05 +0800199 tristate
200
Lars-Peter Clausen6c3d7132014-02-17 13:16:54 +0100201config SND_SOC_AD193X_SPI
202 tristate
203 select SND_SOC_AD193X
204
205config SND_SOC_AD193X_I2C
206 tristate
207 select SND_SOC_AD193X
208
Cliff Cai5f57dc82008-07-29 11:42:34 +0100209config SND_SOC_AD1980
210 tristate
211
Cliff Cai0e77e782008-09-27 16:57:26 +0800212config SND_SOC_AD73311
213 tristate
Lars-Peter Clausen631ed8a2011-06-13 15:26:20 +0200214
215config SND_SOC_ADAU1701
Mark Brown1291e142014-01-23 12:58:16 +0000216 tristate "Analog Devices ADAU1701 CODEC"
217 depends on I2C
Lars-Peter Clausen40216ce2011-11-28 09:44:17 +0100218 select SND_SOC_SIGMADSP
Lars-Peter Clausen631ed8a2011-06-13 15:26:20 +0200219
Lars-Peter Clausenddd7a262011-08-15 20:15:22 +0200220config SND_SOC_ADAU1373
221 tristate
222
Lars-Peter Clausen603597c2014-02-18 15:57:35 +0100223config SND_SOC_ADAU1977
224 tristate
225
226config SND_SOC_ADAU1977_SPI
227 tristate
228 select SND_SOC_ADAU1977
229 select REGMAP_SPI
230
231config SND_SOC_ADAU1977_I2C
232 tristate
233 select SND_SOC_ADAU1977
234 select REGMAP_I2C
235
Lars-Peter Clausencc526882011-06-27 17:04:01 +0200236config SND_SOC_ADAV80X
237 tristate
238
Lars-Peter Clausen0c2d6962014-02-17 13:16:56 +0100239config SND_SOC_ADAV801
240 tristate
241 select SND_SOC_ADAV80X
242
243config SND_SOC_ADAV803
244 tristate
245 select SND_SOC_ADAV80X
246
Graeme Gregory2dcf9fb2009-11-04 17:49:22 +0000247config SND_SOC_ADS117X
248 tristate
Cliff Cai0e77e782008-09-27 16:57:26 +0800249
Daniel Macka3819342009-03-09 02:13:17 +0100250config SND_SOC_AK4104
Mark Brown1291e142014-01-23 12:58:16 +0000251 tristate "AKM AK4104 CODEC"
252 depends on SPI_MASTER
Daniel Macka3819342009-03-09 02:13:17 +0100253
Richard Purdie796d2ca2008-06-23 14:51:28 +0100254config SND_SOC_AK4535
255 tristate
256
Kuninori Morimotoa2911cd2013-07-03 21:15:13 -0700257config SND_SOC_AK4554
Mark Brown1291e142014-01-23 12:58:16 +0000258 tristate "AKM AK4554 CODEC"
Kuninori Morimotoa2911cd2013-07-03 21:15:13 -0700259
Dmitry Artamonow00d27012011-05-18 19:25:09 +0400260config SND_SOC_AK4641
261 tristate
262
Kuninori Morimotoa3a83d92009-08-21 10:23:41 +0900263config SND_SOC_AK4642
Mark Brown1291e142014-01-23 12:58:16 +0000264 tristate "AKM AK4642 CODEC"
265 depends on I2C
Kuninori Morimotoa3a83d92009-08-21 10:23:41 +0900266
Joonyoung Shim2312fd82009-09-10 00:12:43 +0900267config SND_SOC_AK4671
268 tristate
269
Daniel Mackcc289be2013-03-08 12:07:28 +0100270config SND_SOC_AK5386
Mark Brown1291e142014-01-23 12:58:16 +0000271 tristate "AKM AK5638 CODEC"
Daniel Mackcc289be2013-03-08 12:07:28 +0100272
Arnaud Patard (Rtp)6f4bc952010-10-21 19:40:02 +0200273config SND_SOC_ALC5623
274 tristate
Mark Brown1291e142014-01-23 12:58:16 +0000275
Leon Romanovsky94d5f7c2011-11-05 12:38:02 +0200276config SND_SOC_ALC5632
277 tristate
Arnaud Patard (Rtp)6f4bc952010-10-21 19:40:02 +0200278
Miguel Aguilarb56e9722010-03-11 09:32:59 -0600279config SND_SOC_CQ0093VC
280 tristate
281
apatard@mandriva.com72ed5a82010-05-27 14:57:41 +0200282config SND_SOC_CS42L51
283 tristate
284
Brian Austindfe0f982012-04-27 15:45:52 -0500285config SND_SOC_CS42L52
Mark Brown1291e142014-01-23 12:58:16 +0000286 tristate "Cirrus Logic CS42L52 CODEC"
287 depends on I2C
Brian Austindfe0f982012-04-27 15:45:52 -0500288
Brian Austin6d10c912011-11-16 12:32:27 -0600289config SND_SOC_CS42L73
Mark Brown1291e142014-01-23 12:58:16 +0000290 tristate "Cirrus Logic CS42L73 CODEC"
291 depends on I2C
Brian Austin6d10c912011-11-16 12:32:27 -0600292
Mark Brown3e860842008-09-06 18:11:51 +0100293# Cirrus Logic CS4270 Codec
294config SND_SOC_CS4270
Mark Brown1291e142014-01-23 12:58:16 +0000295 tristate "Cirrus Logic CS4270 CODEC"
296 depends on I2C
Mark Brown3e860842008-09-06 18:11:51 +0100297
Mark Brown3e860842008-09-06 18:11:51 +0100298# Cirrus Logic CS4270 Codec VD = 3.3V Errata
299# Select if you are affected by the errata where the part will not function
300# if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
301# not select any sample rates that require MCLK to be divided by 1.5.
302config SND_SOC_CS4270_VD33_ERRATA
303 bool
304 depends on SND_SOC_CS4270
305
Alexander Sverdlin67b22512011-01-19 21:22:06 +0300306config SND_SOC_CS4271
Mark Brown1291e142014-01-23 12:58:16 +0000307 tristate "Cirrus Logic CS4271 CODEC"
308 depends on SND_SOC_I2C_AND_SPI
Alexander Sverdlin67b22512011-01-19 21:22:06 +0300309
Nicolin Chen0c516b42014-03-20 18:18:37 +0800310config SND_SOC_CS42XX8
311 tristate
312
313config SND_SOC_CS42XX8_I2C
314 tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
315 depends on I2C
316 select SND_SOC_CS42XX8
317 select REGMAP_I2C
318
Janusz Krzysztofik459dc352009-07-22 05:22:28 +0200319config SND_SOC_CX20442
320 tristate
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800321 depends on TTY
Janusz Krzysztofik459dc352009-07-22 05:22:28 +0200322
Lars-Peter Clausen3b097d62010-06-22 00:46:31 +0200323config SND_SOC_JZ4740_CODEC
Lars-Peter Clausendd1b18a2012-10-27 17:15:08 +0200324 select REGMAP_MMIO
Lars-Peter Clausen3b097d62010-06-22 00:46:31 +0200325 tristate
326
Christian Pellegrin1cad1de2008-11-15 08:58:16 +0100327config SND_SOC_L3
328 tristate
329
Mark Brownb4541662010-06-20 14:05:46 +0100330config SND_SOC_DA7210
331 tristate
332
Adam Thomsonef5c2eb2013-02-14 12:02:51 +0000333config SND_SOC_DA7213
334 tristate
335
Adam Thomson48e27872012-06-11 13:15:27 +0100336config SND_SOC_DA732X
337 tristate
338
Ashish Chavan9911f7f2012-09-21 20:16:17 +0530339config SND_SOC_DA9055
340 tristate
341
Barry Song200ceb92013-05-18 20:25:00 +0800342config SND_SOC_BT_SCO
Lars-Peter Clausena077ff92011-03-07 08:04:59 +0100343 tristate
344
David Lamberta7107702011-01-06 08:00:37 -0600345config SND_SOC_DMIC
346 tristate
347
Mark Brown1291e142014-01-23 12:58:16 +0000348config SND_SOC_HDMI_CODEC
349 tristate "HDMI stub CODEC"
350
M R Swami Reddy2f989f72012-06-01 22:21:54 +0530351config SND_SOC_ISABELLE
352 tristate
353
M R Swami Reddydbf7a732012-03-30 16:03:43 +0530354config SND_SOC_LM49453
355 tristate
356
Mark Browne86e1242010-10-18 16:45:24 -0700357config SND_SOC_MAX98088
358 tristate
359
Kuninori Morimoto83f7cbc2012-11-20 20:27:10 -0800360config SND_SOC_MAX98090
361 tristate
362
Peter Hsiang82a5a932011-04-04 19:35:30 -0700363config SND_SOC_MAX98095
364 tristate
365
Christian Glindkamp0e45cab2011-03-09 11:20:04 +0100366config SND_SOC_MAX9850
367 tristate
368
Marek Belisko95169d02013-08-01 11:14:58 +0200369config SND_SOC_PCM1681
Mark Brown1291e142014-01-23 12:58:16 +0000370 tristate "Texas Instruments PCM1681 CODEC"
371 depends on I2C
Marek Belisko95169d02013-08-01 11:14:58 +0200372
Michael Trimarchi13b02fa2013-08-03 16:20:43 +0200373config SND_SOC_PCM1792A
Mark Brown1291e142014-01-23 12:58:16 +0000374 tristate "Texas Instruments PCM1792A CODEC"
375 depends on SPI_MASTER
Michael Trimarchi13b02fa2013-08-03 16:20:43 +0200376
Hugo Villeneuve1c0090c2008-11-19 01:37:31 -0500377config SND_SOC_PCM3008
378 tristate
379
Mark Brown5a3af122014-02-06 12:03:27 +0000380config SND_SOC_PCM512x
Mark Brown22066222014-03-07 11:44:08 +0800381 tristate
382
383config SND_SOC_PCM512x_I2C
384 tristate "Texas Instruments PCM512x CODECs - I2C"
385 depends on I2C
386 select SND_SOC_PCM512x
387 select REGMAP_I2C
388
389config SND_SOC_PCM512x_SPI
390 tristate "Texas Instruments PCM512x CODECs - SPI"
391 depends on SPI_MASTER
392 select SND_SOC_PCM512x
393 select REGMAP_SPI
Mark Brown5a3af122014-02-06 12:03:27 +0000394
Oder Chiou49ef7922014-05-20 15:01:53 +0800395config SND_SOC_RL6231
396 tristate
397 default y if SND_SOC_RT5640=y
398 default y if SND_SOC_RT5645=y
399 default y if SND_SOC_RT5651=y
400 default m if SND_SOC_RT5640=m
401 default m if SND_SOC_RT5645=m
402 default m if SND_SOC_RT5651=m
403
Axel Lin689b9562011-09-22 20:52:12 +0800404config SND_SOC_RT5631
405 tristate
406
Bard Liao997b0522013-06-11 13:10:16 +0800407config SND_SOC_RT5640
408 tristate
409
Oder Chiou1319b2f2014-04-28 19:59:10 +0800410config SND_SOC_RT5645
411 tristate
412
Bard Liao40bc18a2014-04-16 19:20:46 +0800413config SND_SOC_RT5651
414 tristate
415
Zeng Zhaoming9b34e6c2011-02-24 02:08:21 +0800416#Freescale sgtl5000 codec
417config SND_SOC_SGTL5000
Mark Brown1291e142014-01-23 12:58:16 +0000418 tristate "Freescale SGTL5000 CODEC"
419 depends on I2C
Zeng Zhaoming9b34e6c2011-02-24 02:08:21 +0800420
Andrey Smirnov330345e2012-10-05 18:55:02 -0700421config SND_SOC_SI476X
422 tristate
423
Lars-Peter Clausen40216ce2011-11-28 09:44:17 +0100424config SND_SOC_SIGMADSP
425 tristate
426 select CRC32
427
Rongjun Yingf516e362014-03-05 16:34:34 +0800428config SND_SOC_SIRF_AUDIO_CODEC
429 tristate "SiRF SoC internal audio codec"
430 select REGMAP_MMIO
431
Vinod Koul4dc69be2011-01-04 20:16:07 +0530432config SND_SOC_SN95031
433 tristate
434
Chaithrika U Sbe461ba2009-05-28 05:10:50 -0400435config SND_SOC_SPDIF
Mark Brown1291e142014-01-23 12:58:16 +0000436 tristate "S/PDIF CODEC"
Chaithrika U Sbe461ba2009-05-28 05:10:50 -0400437
Lars-Peter Clausenb6b5e762013-05-23 20:14:50 +0200438config SND_SOC_SSM2518
439 tristate
440
Mark Brown3e860842008-09-06 18:11:51 +0100441config SND_SOC_SSM2602
442 tristate
443
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +0100444config SND_SOC_SSM2602_SPI
445 select SND_SOC_SSM2602
446 tristate
447
448config SND_SOC_SSM2602_I2C
449 select SND_SOC_SSM2602
450 tristate
451
Johannes Stezenbachc034abf2011-06-22 14:59:24 +0200452config SND_SOC_STA32X
453 tristate
454
Rajeev Kumar3be58db2012-07-04 16:11:12 +0530455config SND_SOC_STA529
456 tristate
457
Jon Smirl3c166c72009-05-23 19:13:07 -0400458config SND_SOC_STAC9766
459 tristate
460
Daniel Mack4fa89342013-03-08 13:52:09 +0100461config SND_SOC_TAS5086
Mark Brown1291e142014-01-23 12:58:16 +0000462 tristate "Texas Instruments TAS5086 speaker amplifier"
463 depends on I2C
Daniel Mack4fa89342013-03-08 13:52:09 +0100464
Arun KSc1f27192008-10-02 14:45:49 +0530465config SND_SOC_TLV320AIC23
466 tristate
Arun KSc1f27192008-10-02 14:45:49 +0530467
Max Filippovb3fc5722014-03-06 14:04:41 +0400468config SND_SOC_TLV320AIC23_I2C
469 tristate
470 select SND_SOC_TLV320AIC23
471
472config SND_SOC_TLV320AIC23_SPI
473 tristate
474 select SND_SOC_TLV320AIC23
475
Mark Brown3e860842008-09-06 18:11:51 +0100476config SND_SOC_TLV320AIC26
Paul Bolle379cf392013-03-12 21:08:38 +0100477 tristate
Takashi Iwai446e0f62008-10-10 08:26:57 +0200478 depends on SPI
Mark Brown3e860842008-09-06 18:11:51 +0100479
Jyri Sarhae00447f2014-03-11 12:57:32 +0200480config SND_SOC_TLV320AIC31XX
481 tristate
482
Wolfram Sang684a65d2011-10-11 12:43:02 +0200483config SND_SOC_TLV320AIC32X4
Javier Martin1d471cd2011-03-02 14:52:32 +0100484 tristate
485
Mark Brown3e860842008-09-06 18:11:51 +0100486config SND_SOC_TLV320AIC3X
Mark Brown1291e142014-01-23 12:58:16 +0000487 tristate "Texas Instruments TLV320AIC3x CODECs"
488 depends on I2C
Mark Brown3e860842008-09-06 18:11:51 +0100489
Peter Ujfalusic8bf93f2009-10-15 09:03:56 +0300490config SND_SOC_TLV320DAC33
491 tristate
492
Steve Sakomancc175572008-10-30 21:35:26 -0700493config SND_SOC_TWL4030
Peter Ujfalusi57fe7252011-05-31 12:02:49 +0300494 select MFD_TWL4030_AUDIO
Steve Sakomancc175572008-10-30 21:35:26 -0700495 tristate
Steve Sakomancc175572008-10-30 21:35:26 -0700496
Misael Lopez Cruz8ecbabd2010-03-19 11:25:51 +0000497config SND_SOC_TWL6040
498 tristate
499
Christian Pellegrin1cad1de2008-11-15 08:58:16 +0100500config SND_SOC_UDA134X
501 tristate
Christian Pellegrin1cad1de2008-11-15 08:58:16 +0100502
Philipp Zabelb7482f52008-05-28 17:58:06 +0100503config SND_SOC_UDA1380
504 tristate
505
Mark Brown49d7ad92010-08-20 17:24:51 +0100506config SND_SOC_WL1273
507 tristate
508
Dimitris Papastamose3523e02012-08-23 15:59:56 +0100509config SND_SOC_WM0010
510 tristate
511
Mark Brown4bb3f432011-04-08 16:49:42 +0900512config SND_SOC_WM1250_EV1
513 tristate
514
Mark Brown4911ccd2011-12-02 21:59:18 +0000515config SND_SOC_WM2000
516 tristate
517
Mark Brownd5315a22012-01-25 19:29:41 +0000518config SND_SOC_WM2200
519 tristate
520
Mark Brown6d4baf02011-09-20 15:44:21 +0100521config SND_SOC_WM5100
522 tristate
523
Mark Brown93e87912012-06-19 16:38:15 +0100524config SND_SOC_WM5102
525 tristate
526
Mark Brown5c6af632012-07-09 19:09:41 +0100527config SND_SOC_WM5110
528 tristate
529
Mark Brown40aa4a32008-12-16 10:15:12 +0000530config SND_SOC_WM8350
531 tristate
532
Mark Brownaaf1e172009-03-10 10:55:15 +0000533config SND_SOC_WM8400
534 tristate
535
Mark Brown5d421512008-06-05 13:49:32 +0100536config SND_SOC_WM8510
Mark Brown1291e142014-01-23 12:58:16 +0000537 tristate "Wolfson Microelectronics WM8510 CODEC"
538 depends on SND_SOC_I2C_AND_SPI
Mark Brown5d421512008-06-05 13:49:32 +0100539
Mark Brown1dcf98f2009-07-01 18:28:54 +0100540config SND_SOC_WM8523
Mark Brown1291e142014-01-23 12:58:16 +0000541 tristate "Wolfson Microelectronics WM8523 DAC"
542 depends on I2C
Mark Brown1dcf98f2009-07-01 18:28:54 +0100543
Mark Browne88ba012008-08-06 13:18:26 +0100544config SND_SOC_WM8580
Mark Brown1291e142014-01-23 12:58:16 +0000545 tristate "Wolfson Microelectronics WM8523 CODEC"
546 depends on I2C
Mark Browne88ba012008-08-06 13:18:26 +0100547
Mike Arthurbd6d4172009-08-18 20:37:49 +0100548config SND_SOC_WM8711
Mark Brown1291e142014-01-23 12:58:16 +0000549 tristate "Wolfson Microelectronics WM8711 CODEC"
550 depends on SND_SOC_I2C_AND_SPI
Mike Arthurbd6d4172009-08-18 20:37:49 +0100551
Neil Jones89933de2009-11-02 15:14:17 +0000552config SND_SOC_WM8727
553 tristate
554
Mark Brown71cfc902008-11-13 14:33:14 +0000555config SND_SOC_WM8728
Mark Brown1291e142014-01-23 12:58:16 +0000556 tristate "Wolfson Microelectronics WM8728 DAC"
557 depends on SND_SOC_I2C_AND_SPI
Mark Brown71cfc902008-11-13 14:33:14 +0000558
Richard Purdie7f137ab2006-10-06 18:38:37 +0200559config SND_SOC_WM8731
Mark Brown1291e142014-01-23 12:58:16 +0000560 tristate "Wolfson Microelectronics WM8731 CODEC"
561 depends on SND_SOC_I2C_AND_SPI
Richard Purdie7f137ab2006-10-06 18:38:37 +0200562
Mark Brown2a9ae132010-11-23 19:31:18 +0000563config SND_SOC_WM8737
Mark Brown1291e142014-01-23 12:58:16 +0000564 tristate "Wolfson Microelectronics WM8737 ADC"
565 depends on SND_SOC_I2C_AND_SPI
Mark Brown2a9ae132010-11-23 19:31:18 +0000566
Ian Lartey992bee42010-07-31 00:32:11 +0100567config SND_SOC_WM8741
Mark Brown1291e142014-01-23 12:58:16 +0000568 tristate "Wolfson Microelectronics WM8737 DAC"
569 depends on SND_SOC_I2C_AND_SPI
Ian Lartey992bee42010-07-31 00:32:11 +0100570
Richard Purdie7f137ab2006-10-06 18:38:37 +0200571config SND_SOC_WM8750
Mark Brown1291e142014-01-23 12:58:16 +0000572 tristate "Wolfson Microelectronics WM8750 CODEC"
573 depends on SND_SOC_I2C_AND_SPI
Richard Purdie7f137ab2006-10-06 18:38:37 +0200574
Liam Girdwood33703b72007-04-16 19:18:15 +0200575config SND_SOC_WM8753
Mark Brown1291e142014-01-23 12:58:16 +0000576 tristate "Wolfson Microelectronics WM8753 CODEC"
577 depends on SND_SOC_I2C_AND_SPI
Liam Girdwood33703b72007-04-16 19:18:15 +0200578
Dimitris Papastamosc046fd42010-11-05 18:41:25 +0000579config SND_SOC_WM8770
Mark Brown1291e142014-01-23 12:58:16 +0000580 tristate "Wolfson Microelectronics WM8770 CODEC"
Mark Browne479d852014-02-07 15:57:50 +0000581 depends on SPI_MASTER
Dimitris Papastamosc046fd42010-11-05 18:41:25 +0000582
Mark Brown924914e2009-08-04 23:50:16 +0100583config SND_SOC_WM8776
Mark Brown1291e142014-01-23 12:58:16 +0000584 tristate "Wolfson Microelectronics WM8776 CODEC"
585 depends on SND_SOC_I2C_AND_SPI
Mark Brown924914e2009-08-04 23:50:16 +0100586
Johannes Stezenbachec3ea542011-06-22 14:59:25 +0200587config SND_SOC_WM8782
588 tristate
589
Dimitris Papastamos33cf45c2010-09-29 11:14:56 +0100590config SND_SOC_WM8804
Mark Brown1291e142014-01-23 12:58:16 +0000591 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver"
592 depends on SND_SOC_I2C_AND_SPI
Dimitris Papastamos33cf45c2010-09-29 11:14:56 +0100593
Mark Brown0e0e16a2008-08-04 12:06:45 +0100594config SND_SOC_WM8900
595 tristate
596
Mark Brownf1c0a022008-08-26 13:05:27 +0100597config SND_SOC_WM8903
Mark Brown1291e142014-01-23 12:58:16 +0000598 tristate "Wolfson Microelectronics WM8903 CODEC"
599 depends on I2C
Mark Brownf1c0a022008-08-26 13:05:27 +0100600
Mark Browna91eb192009-11-26 11:56:07 +0000601config SND_SOC_WM8904
602 tristate
603
Jonathan Cameron0b5e92c52009-04-27 13:49:44 +0000604config SND_SOC_WM8940
605 tristate
606
Mark Brownb35a28a2009-12-18 12:00:22 +0000607config SND_SOC_WM8955
608 tristate
609
Mark Brownf2644a22009-04-07 19:20:14 +0100610config SND_SOC_WM8960
611 tristate
612
Mark Brown74dc55e2009-06-09 09:55:51 +0100613config SND_SOC_WM8961
614 tristate
615
Mark Brown9a76f1f2010-08-05 13:20:59 +0100616config SND_SOC_WM8962
Mark Brown1291e142014-01-23 12:58:16 +0000617 tristate "Wolfson Microelectronics WM8962 CODEC"
618 depends on I2C
Mark Brown9a76f1f2010-08-05 13:20:59 +0100619
Kenneth Kiraly8bae3e22008-09-10 19:33:32 +0100620config SND_SOC_WM8971
621 tristate
622
Mark Brown0a1bf552009-05-23 11:18:41 +0100623config SND_SOC_WM8974
624 tristate
625
Guennadi Liakhovetski0d34e912010-01-27 18:56:23 +0100626config SND_SOC_WM8978
627 tristate
628
Dimitris Papastamos6b3860b2011-07-15 13:51:30 +0100629config SND_SOC_WM8983
630 tristate
631
Dimitris Papastamos6d6f8b82010-09-15 15:23:20 +0100632config SND_SOC_WM8985
633 tristate
634
Mark Brown5409fb42009-04-07 18:45:21 +0100635config SND_SOC_WM8988
636 tristate
637
Mark Brownf10485e2008-06-05 13:49:33 +0100638config SND_SOC_WM8990
639 tristate
640
Dimitris Papastamos203db222011-01-14 15:49:40 +0000641config SND_SOC_WM8991
642 tristate
643
Mark Brown942c4352009-06-05 16:32:59 +0100644config SND_SOC_WM8993
645 tristate
646
Mark Brown9e6e96a2010-01-29 17:47:12 +0000647config SND_SOC_WM8994
648 tristate
649
Dimitris Papastamos6a504a72010-12-22 11:33:11 +0000650config SND_SOC_WM8995
651 tristate
652
Mark Browna9ba6152011-06-24 12:10:44 +0100653config SND_SOC_WM8996
654 tristate
655
Charles Keepax40843ae2013-08-12 23:46:55 +0100656config SND_SOC_WM8997
657 tristate
658
Mark Brown86ed3662009-05-22 15:01:19 +0100659config SND_SOC_WM9081
660 tristate
661
Mark Brown59792aa2011-12-02 22:00:39 +0000662config SND_SOC_WM9090
663 tristate
664
Ian Molton2aceefe2009-01-16 11:04:18 +0000665config SND_SOC_WM9705
666 tristate
667
Richard Purdie7f137ab2006-10-06 18:38:37 +0200668config SND_SOC_WM9712
669 tristate
Timur Tabib0c813c2007-07-31 18:18:44 +0200670
Liam Girdwood83ac08c2008-02-15 16:43:11 +0100671config SND_SOC_WM9713
672 tristate
Joonyoung Shim9db9ed92009-07-15 20:34:00 +0900673
674# Amp
Lars-Peter Clausen9b0a25f2011-03-07 08:04:55 +0100675config SND_SOC_LM4857
676 tristate
677
Wolfram Sang394d2bb2012-01-27 16:10:23 +0100678config SND_SOC_MAX9768
679 tristate
680
Joonyoung Shim9db9ed92009-07-15 20:34:00 +0900681config SND_SOC_MAX9877
682 tristate
Peter Ujfalusi493b67e2009-10-09 15:55:41 +0300683
Philippe Rétornaz8b908b82012-05-15 13:53:50 +0200684config SND_SOC_MC13783
685 tristate
686
Tomoya MORINAGAd808fe92012-03-19 20:59:28 +0900687config SND_SOC_ML26124
688 tristate
689
Peter Ujfalusi493b67e2009-10-09 15:55:41 +0300690config SND_SOC_TPA6130A2
Mark Brown1291e142014-01-23 12:58:16 +0000691 tristate "Texas Instruments TPA6130A2 headphone amplifier"
692 depends on I2C
Mark Brown4d1a7722014-02-07 15:40:35 +0000693
694endmenu