blob: 1cd6ab344d67def61db455d956ac2d7075a1f6d8 [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 Brown070504a2009-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
Maciej S. Szmigieroa60abdf2015-05-10 00:12:04 +020019 select SND_SOC_AC97_CODEC
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 Clausendab464b2014-05-27 10:53:18 +020026 select SND_SOC_ADAU1761_I2C if I2C
27 select SND_SOC_ADAU1761_SPI if SPI
Lars-Peter Clausen2923af02014-05-27 10:53:19 +020028 select SND_SOC_ADAU1781_I2C if I2C
29 select SND_SOC_ADAU1781_SPI if SPI
Lars-Peter Clausen0c2d6962014-02-17 13:16:56 +010030 select SND_SOC_ADAV801 if SPI_MASTER
31 select SND_SOC_ADAV803 if I2C
Lars-Peter Clausen603597c2014-02-18 15:57:35 +010032 select SND_SOC_ADAU1977_SPI if SPI_MASTER
33 select SND_SOC_ADAU1977_I2C if I2C
Lars-Peter Clausenaf2d8b52013-07-22 18:49:52 +020034 select SND_SOC_ADAU1701 if I2C
Lars-Peter Clausena0d35462016-06-02 14:19:42 +020035 select SND_SOC_ADAU7002
Mike Frysinger754dec6b72011-03-27 00:43:59 -040036 select SND_SOC_ADS117X
Daniel Macka3819342009-03-09 02:13:17 +010037 select SND_SOC_AK4104 if SPI_MASTER
Mark Brownca53fb22008-10-22 22:41:11 +010038 select SND_SOC_AK4535 if I2C
Mark Brown0d724f82014-01-23 12:50:51 +000039 select SND_SOC_AK4554
Kuninori Morimotob0757062015-09-15 08:26:36 +000040 select SND_SOC_AK4613 if I2C
Dmitry Artamonow00d27012011-05-18 19:25:09 +040041 select SND_SOC_AK4641 if I2C
Kuninori Morimotoa3a83d92009-08-21 10:23:41 +090042 select SND_SOC_AK4642 if I2C
Joonyoung Shim2312fd82009-09-10 00:12:43 +090043 select SND_SOC_AK4671 if I2C
Daniel Mackcc289be2013-03-08 12:07:28 +010044 select SND_SOC_AK5386
Jarkko Nikula473f89f2010-10-29 16:47:44 +030045 select SND_SOC_ALC5623 if I2C
Leon Romanovsky94d5f7c2011-11-05 12:38:02 +020046 select SND_SOC_ALC5632 if I2C
Kuninori Morimoto54aba082016-04-22 09:09:14 +000047 select SND_SOC_BT_SCO
Miguel Aguilarb56e9722010-03-11 09:32:59 -060048 select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC
Brian Austineef5bb22014-08-04 15:11:16 -050049 select SND_SOC_CS35L32 if I2C
Paul Handrigan3333cb72016-06-20 11:45:18 -050050 select SND_SOC_CS35L33 if I2C
Brian Austina1253ef2014-04-15 15:49:33 -050051 select SND_SOC_CS42L51_I2C if I2C
Arnd Bergmanna2915d42014-04-29 19:18:22 +080052 select SND_SOC_CS42L52 if I2C && INPUT
Brian Austin272b5ed2014-05-05 15:09:08 -050053 select SND_SOC_CS42L56 if I2C && INPUT
Brian Austin6d10c912011-11-16 12:32:27 -060054 select SND_SOC_CS42L73 if I2C
Paul Handriganfb6f8062014-06-23 17:29:53 -050055 select SND_SOC_CS4265 if I2C
Mark Brownca53fb22008-10-22 22:41:11 +010056 select SND_SOC_CS4270 if I2C
Axel Linc973b8a2014-10-06 23:09:47 +080057 select SND_SOC_CS4271_I2C if I2C
58 select SND_SOC_CS4271_SPI if SPI_MASTER
Nicolin Chen0c516b42014-03-20 18:18:37 +080059 select SND_SOC_CS42XX8_I2C if I2C
Tim Howee40da862015-07-16 14:51:40 -050060 select SND_SOC_CS4349 if I2C
Richard Fitzgerald66105502015-11-03 15:08:35 +000061 select SND_SOC_CS47L24 if MFD_CS47L24
Nicolin Chende9b12142016-05-25 12:38:34 -070062 select SND_SOC_CS53L30 if I2C
Joe Millenbach4f73bc42013-01-17 22:44:22 -080063 select SND_SOC_CX20442 if TTY
Axel Linc6823632015-05-04 17:28:02 +080064 select SND_SOC_DA7210 if SND_SOC_I2C_AND_SPI
Adam Thomsonef5c2eb2013-02-14 12:02:51 +000065 select SND_SOC_DA7213 if I2C
Adam Thomson4d509342015-11-25 14:24:38 +000066 select SND_SOC_DA7218 if I2C
Adam Thomson6d817c02015-09-29 16:44:01 +010067 select SND_SOC_DA7219 if I2C
Adam Thomson48e27872012-06-11 13:15:27 +010068 select SND_SOC_DA732X if I2C
Ashish Chavan9911f7f2012-09-21 20:16:17 +053069 select SND_SOC_DA9055 if I2C
Lars-Peter Clausen8a36eaa2014-08-17 12:03:05 +020070 select SND_SOC_DMIC
Sean Cross567e4f92014-07-31 10:43:36 +080071 select SND_SOC_ES8328_SPI if SPI_MASTER
72 select SND_SOC_ES8328_I2C if I2C
Marek Beliskoefc47202015-06-20 22:47:01 +020073 select SND_SOC_GTM601
Subhransu S. Prusty18382ea2015-11-10 18:42:06 +053074 select SND_SOC_HDAC_HDMI
Ricard Wanderlof3b7ce992015-08-27 11:35:20 +020075 select SND_SOC_ICS43432
ZhengShunQiandecbc002015-11-09 10:10:19 +080076 select SND_SOC_INNO_RK3036
M R Swami Reddy2f989f72012-06-01 22:21:54 +053077 select SND_SOC_ISABELLE if I2C
Axel Linf8f626f2011-12-06 15:38:51 +080078 select SND_SOC_JZ4740_CODEC
Mark Brown9b74c7d2011-03-07 12:23:10 +000079 select SND_SOC_LM4857 if I2C
M R Swami Reddydbf7a732012-03-30 16:03:43 +053080 select SND_SOC_LM49453 if I2C
Mark Browne86e1242010-10-18 16:45:24 -070081 select SND_SOC_MAX98088 if I2C
Kuninori Morimoto83f7cbc2012-11-20 20:27:10 -080082 select SND_SOC_MAX98090 if I2C
Peter Hsiang82a5a932011-04-04 19:35:30 -070083 select SND_SOC_MAX98095 if I2C
Guenter Roeckffa04752015-02-11 13:13:18 -080084 select SND_SOC_MAX98357A if GPIOLIB
anish kumarca2cd6b2016-04-27 15:39:05 -070085 select SND_SOC_MAX98371 if I2C
anish kumar805d1322016-02-17 17:28:49 -080086 select SND_SOC_MAX9867 if I2C
Anish Kumar1ff27652015-03-09 15:50:34 -070087 select SND_SOC_MAX98925 if I2C
anish kumara2e28762016-01-14 14:03:33 -080088 select SND_SOC_MAX98926 if I2C
Christian Glindkamp0e45cab2011-03-09 11:20:04 +010089 select SND_SOC_MAX9850 if I2C
Peter Rosin3b2af7f2016-05-14 23:09:39 +020090 select SND_SOC_MAX9860 if I2C
Wolfram Sang394d2bb2012-01-27 16:10:23 +010091 select SND_SOC_MAX9768 if I2C
Mark Brownb4541662010-06-20 14:05:46 +010092 select SND_SOC_MAX9877 if I2C
Philippe Rétornaz8b908b82012-05-15 13:53:50 +020093 select SND_SOC_MC13783 if MFD_MC13XXX
Tomoya MORINAGAd808fe92012-03-19 20:59:28 +090094 select SND_SOC_ML26124 if I2C
Anatol Pomozov34ca27f2015-10-02 09:49:14 -070095 select SND_SOC_NAU8825 if I2C
Jyri Sarha09184112016-03-31 16:36:00 +030096 select SND_SOC_HDMI_CODEC
Marek Belisko95169d02013-08-01 11:14:58 +020097 select SND_SOC_PCM1681 if I2C
Jacob Siverskog70e3e562016-01-22 13:39:54 +010098 select SND_SOC_PCM179X_I2C if I2C
Jacob Siverskog1b347b62016-01-22 13:39:53 +010099 select SND_SOC_PCM179X_SPI if SPI_MASTER
Hugo Villeneuve1c0090c2008-11-19 01:37:31 -0500100 select SND_SOC_PCM3008
Damien.Horsleya9b17a62015-12-08 15:59:00 +0000101 select SND_SOC_PCM3168A_I2C if I2C
102 select SND_SOC_PCM3168A_SPI if SPI_MASTER
Florian Meier97d3ddd2016-05-13 09:14:12 +0000103 select SND_SOC_PCM5102A
Mark Brown22066222014-03-07 11:44:08 +0800104 select SND_SOC_PCM512x_I2C if I2C
105 select SND_SOC_PCM512x_SPI if SPI_MASTER
Bard Liao07cf7cba2014-06-20 14:41:13 +0800106 select SND_SOC_RT286 if I2C
Bard Liao6adcafa2015-06-26 10:59:49 +0800107 select SND_SOC_RT298 if I2C
Oder Chiou4a6180e2016-02-03 19:53:24 +0800108 select SND_SOC_RT5514 if I2C
Bard Liaob1d15052015-12-15 14:57:41 +0800109 select SND_SOC_RT5616 if I2C
Axel Lin689b9562011-09-22 20:52:12 +0800110 select SND_SOC_RT5631 if I2C
Bard Liao997b0522013-06-11 13:10:16 +0800111 select SND_SOC_RT5640 if I2C
Oder Chiou1319b2f2014-04-28 19:59:10 +0800112 select SND_SOC_RT5645 if I2C
Bard Liao40bc18a2014-04-16 19:20:46 +0800113 select SND_SOC_RT5651 if I2C
Bard Liaod3cb2de2015-11-09 14:47:34 +0800114 select SND_SOC_RT5659 if I2C
Bard Liao5e8351d2014-06-30 20:31:13 +0800115 select SND_SOC_RT5670 if I2C
Anatol Pomozovac884fc2014-10-17 11:56:42 -0700116 select SND_SOC_RT5677 if I2C && SPI_MASTER
Zeng Zhaoming9b34e6c2011-02-24 02:08:21 +0800117 select SND_SOC_SGTL5000 if I2C
Andrey Smirnov330345e2012-10-05 18:55:02 -0700118 select SND_SOC_SI476X if MFD_SI476X_CORE
Rongjun Yingf516e362014-03-05 16:34:34 +0800119 select SND_SOC_SIRF_AUDIO_CODEC
Vinod Koul4dc69be2011-01-04 20:16:07 +0530120 select SND_SOC_SN95031 if INTEL_SCU_IPC
Chaithrika U Sbe461ba2009-05-28 05:10:50 -0400121 select SND_SOC_SPDIF
Lars-Peter Clausenb6b5e762013-05-23 20:14:50 +0200122 select SND_SOC_SSM2518 if I2C
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +0100123 select SND_SOC_SSM2602_SPI if SPI_MASTER
124 select SND_SOC_SSM2602_I2C if I2C
Anatol Pomozov1ee44ce2014-09-26 13:31:06 -0700125 select SND_SOC_SSM4567 if I2C
Johannes Stezenbachc034abf2011-06-22 14:59:24 +0200126 select SND_SOC_STA32X if I2C
Sven Brandau2439ea12014-04-02 10:25:05 +0200127 select SND_SOC_STA350 if I2C
Rajeev Kumar3be58db2012-07-04 16:11:12 +0530128 select SND_SOC_STA529 if I2C
Jon Smirl3c166c72009-05-23 19:13:07 -0400129 select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
Arnaud Pouliquen32a726b2015-06-22 16:31:11 +0200130 select SND_SOC_STI_SAS
Dan Murphy5df7f712014-07-14 15:10:45 -0500131 select SND_SOC_TAS2552 if I2C
Daniel Mack4fa89342013-03-08 13:52:09 +0100132 select SND_SOC_TAS5086 if I2C
Kevin Cernekee3fd6e7d2015-05-03 17:00:18 -0700133 select SND_SOC_TAS571X if I2C
Andreas Dannenbergbd023ad2016-04-26 17:15:57 -0500134 select SND_SOC_TAS5720 if I2C
Peter Rosinfbace432014-11-08 14:40:17 +0100135 select SND_SOC_TFA9879 if I2C
Max Filippovb3fc5722014-03-06 14:04:41 +0400136 select SND_SOC_TLV320AIC23_I2C if I2C
137 select SND_SOC_TLV320AIC23_SPI if SPI_MASTER
Mark Brownca53fb22008-10-22 22:41:11 +0100138 select SND_SOC_TLV320AIC26 if SPI_MASTER
Jyri Sarhae00447f2014-03-11 12:57:32 +0200139 select SND_SOC_TLV320AIC31XX if I2C
Jeremy McDermond3bcfd222016-04-18 17:24:05 -0700140 select SND_SOC_TLV320AIC32X4_I2C if I2C
Jeremy McDermond125bc682016-04-18 17:24:06 -0700141 select SND_SOC_TLV320AIC32X4_SPI if SPI_MASTER
Mark Brownca53fb22008-10-22 22:41:11 +0100142 select SND_SOC_TLV320AIC3X if I2C
Peter Ujfalusi493b67e2009-10-09 15:55:41 +0300143 select SND_SOC_TPA6130A2 if I2C
Peter Ujfalusic8bf93f2009-10-15 09:03:56 +0300144 select SND_SOC_TLV320DAC33 if I2C
Dylan Reid2880fc82014-11-13 11:18:29 -0800145 select SND_SOC_TS3A227E if I2C
Steve Sakomancc175572008-10-30 21:35:26 -0700146 select SND_SOC_TWL4030 if TWL4030_CORE
Peter Ujfalusi8eaeb932012-04-03 11:56:51 +0300147 select SND_SOC_TWL6040 if TWL6040_CORE
Christian Pellegrin1cad1de2008-11-15 08:58:16 +0100148 select SND_SOC_UDA134X
Mark Brownca53fb22008-10-22 22:41:11 +0100149 select SND_SOC_UDA1380 if I2C
Matti Aaltonen40285f82011-03-01 10:10:37 -0300150 select SND_SOC_WL1273 if MFD_WL1273_CORE
Dimitris Papastamose3523e02012-08-23 15:59:56 +0100151 select SND_SOC_WM0010 if SPI_MASTER
Mark Brown4bb3f432011-04-08 16:49:42 +0900152 select SND_SOC_WM1250_EV1 if I2C
Mark Brown3a66d382010-02-11 13:27:19 +0000153 select SND_SOC_WM2000 if I2C
Mark Brownd5315a22012-01-25 19:29:41 +0000154 select SND_SOC_WM2200 if I2C
Mark Brown6d4baf02011-09-20 15:44:21 +0100155 select SND_SOC_WM5100 if I2C
Mark Brown93e87912012-06-19 16:38:15 +0100156 select SND_SOC_WM5102 if MFD_WM5102
Mark Brown5c6af632012-07-09 19:09:41 +0100157 select SND_SOC_WM5110 if MFD_WM5110
Mark Brown40aa4a32008-12-16 10:15:12 +0000158 select SND_SOC_WM8350 if MFD_WM8350
Mark Brownaaf1e172009-03-10 10:55:15 +0000159 select SND_SOC_WM8400 if MFD_WM8400
Mark Brown227b4dc2009-01-03 11:24:41 +0100160 select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
Mark Brown1dcf98f2009-07-01 18:28:54 +0100161 select SND_SOC_WM8523 if I2C
Mark Brownca53fb22008-10-22 22:41:11 +0100162 select SND_SOC_WM8580 if I2C
Mark Brown08aff8c2009-08-18 21:15:14 +0100163 select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
Neil Jones89933de2009-11-02 15:14:17 +0000164 select SND_SOC_WM8727
Mark Brown227b4dc2009-01-03 11:24:41 +0100165 select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
166 select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
Mark Brown2a9ae132010-11-23 19:31:18 +0000167 select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
Ian Lartey992bee42010-07-31 00:32:11 +0100168 select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
Mark Brown227b4dc2009-01-03 11:24:41 +0100169 select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
170 select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
Dimitris Papastamosc046fd42010-11-05 18:41:25 +0000171 select SND_SOC_WM8770 if SPI_MASTER
Mark Brown924914e2009-08-04 23:50:16 +0100172 select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
Johannes Stezenbachec3ea542011-06-22 14:59:25 +0200173 select SND_SOC_WM8782
Charles Keepaxbbed2972015-02-22 16:43:21 +0000174 select SND_SOC_WM8804_I2C if I2C
175 select SND_SOC_WM8804_SPI if SPI_MASTER
Mark Brownca53fb22008-10-22 22:41:11 +0100176 select SND_SOC_WM8900 if I2C
Martin Schwidefsky0244ad02013-08-30 09:39:53 +0200177 select SND_SOC_WM8903 if I2C
Mark Browna91eb192009-11-26 11:56:07 +0000178 select SND_SOC_WM8904 if I2C
Jonathan Cameron0b5e92c52009-04-27 13:49:44 +0000179 select SND_SOC_WM8940 if I2C
Mark Brownb35a28a2009-12-18 12:00:22 +0000180 select SND_SOC_WM8955 if I2C
Mark Brownf2644a22009-04-07 19:20:14 +0100181 select SND_SOC_WM8960 if I2C
Mark Brown74dc55e2009-06-09 09:55:51 +0100182 select SND_SOC_WM8961 if I2C
Arnd Bergmanna2915d42014-04-29 19:18:22 +0800183 select SND_SOC_WM8962 if I2C && INPUT
Mark Brownca53fb22008-10-22 22:41:11 +0100184 select SND_SOC_WM8971 if I2C
Mark Brown0a1bf552009-05-23 11:18:41 +0100185 select SND_SOC_WM8974 if I2C
Guennadi Liakhovetski0d34e912010-01-27 18:56:23 +0100186 select SND_SOC_WM8978 if I2C
Dimitris Papastamos6b3860b2011-07-15 13:51:30 +0100187 select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
Dimitris Papastamos6d6f8b82010-09-15 15:23:20 +0100188 select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
Mark Brown5409fb42009-04-07 18:45:21 +0100189 select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
Mark Brownca53fb22008-10-22 22:41:11 +0100190 select SND_SOC_WM8990 if I2C
Dimitris Papastamos203db222011-01-14 15:49:40 +0000191 select SND_SOC_WM8991 if I2C
Mark Brown942c4352009-06-05 16:32:59 +0100192 select SND_SOC_WM8993 if I2C
Mark Brownfead2152010-02-02 10:06:55 +0000193 select SND_SOC_WM8994 if MFD_WM8994
Dimitris Papastamos6a504a72010-12-22 11:33:11 +0000194 select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
Mark Browna9ba6152011-06-24 12:10:44 +0100195 select SND_SOC_WM8996 if I2C
Charles Keepax40843ae2013-08-12 23:46:55 +0100196 select SND_SOC_WM8997 if MFD_WM8997
Richard Fitzgerald6ebbce02015-09-28 14:01:09 +0100197 select SND_SOC_WM8998 if MFD_WM8998
Mark Brown86ed3662009-05-22 15:01:19 +0100198 select SND_SOC_WM9081 if I2C
Mark Brown39b8eab2010-04-28 18:36:10 +0100199 select SND_SOC_WM9090 if I2C
Ian Molton2aceefe2009-01-16 11:04:18 +0000200 select SND_SOC_WM9705 if SND_SOC_AC97_BUS
Mark Brownca53fb22008-10-22 22:41:11 +0100201 select SND_SOC_WM9712 if SND_SOC_AC97_BUS
202 select SND_SOC_WM9713 if SND_SOC_AC97_BUS
Mark Brown0c941612008-07-29 11:42:35 +0100203 help
204 Normally ASoC codec drivers are only built if a machine driver which
205 uses them is also built since they are only usable with a machine
206 driver. Selecting this option will allow these drivers to be built
207 without an explicit machine driver for test and development purposes.
208
Mark Brownca53fb22008-10-22 22:41:11 +0100209 Support for the bus types used to access the codecs to be built must
210 be selected separately.
211
Mark Brown0c941612008-07-29 11:42:35 +0100212 If unsure select "N".
213
Haojian Zhuangf213f4b2010-08-19 00:35:25 +0800214config SND_SOC_88PM860X
215 tristate
216
Mark Brown07ed8732012-06-18 21:08:44 +0100217config SND_SOC_ARIZONA
218 tristate
Richard Fitzgerald66105502015-11-03 15:08:35 +0000219 default y if SND_SOC_CS47L24=y
Mark Brown07ed8732012-06-18 21:08:44 +0100220 default y if SND_SOC_WM5102=y
Mark Brown5c6af632012-07-09 19:09:41 +0100221 default y if SND_SOC_WM5110=y
Charles Keepax40843ae2013-08-12 23:46:55 +0100222 default y if SND_SOC_WM8997=y
Richard Fitzgerald6ebbce02015-09-28 14:01:09 +0100223 default y if SND_SOC_WM8998=y
Richard Fitzgerald66105502015-11-03 15:08:35 +0000224 default m if SND_SOC_CS47L24=m
Mark Brown07ed8732012-06-18 21:08:44 +0100225 default m if SND_SOC_WM5102=m
Mark Brown5c6af632012-07-09 19:09:41 +0100226 default m if SND_SOC_WM5110=m
Charles Keepax40843ae2013-08-12 23:46:55 +0100227 default m if SND_SOC_WM8997=m
Richard Fitzgerald6ebbce02015-09-28 14:01:09 +0100228 default m if SND_SOC_WM8998=m
Mark Brown07ed8732012-06-18 21:08:44 +0100229
Mark Browna2342ae2009-07-29 21:21:49 +0100230config SND_SOC_WM_HUBS
231 tristate
Chanwoo Choi41f9a312010-07-20 14:28:33 +0900232 default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
233 default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
Mark Brown0c941612008-07-29 11:42:35 +0100234
Mark Brown2159ad92012-10-11 11:54:02 +0900235config SND_SOC_WM_ADSP
236 tristate
Charles Keepax1d981e02015-12-15 11:29:42 +0000237 select SND_SOC_COMPRESS
Richard Fitzgerald66105502015-11-03 15:08:35 +0000238 default y if SND_SOC_CS47L24=y
Mark Brown804f5ba2012-08-25 20:29:05 -0700239 default y if SND_SOC_WM5102=y
Mark Brown9a3e1b82013-11-19 16:04:01 +0000240 default y if SND_SOC_WM5110=y
Mark Brown2159ad92012-10-11 11:54:02 +0900241 default y if SND_SOC_WM2200=y
Richard Fitzgerald66105502015-11-03 15:08:35 +0000242 default m if SND_SOC_CS47L24=m
Mark Brown804f5ba2012-08-25 20:29:05 -0700243 default m if SND_SOC_WM5102=m
Mark Brown9a3e1b82013-11-19 16:04:01 +0000244 default m if SND_SOC_WM5110=m
Mark Brown2159ad92012-10-11 11:54:02 +0900245 default m if SND_SOC_WM2200=m
246
Ola Lilja679d7ab2012-06-07 14:00:21 +0200247config SND_SOC_AB8500_CODEC
248 tristate
249
Richard Purdie7f137ab2006-10-06 18:38:37 +0200250config SND_SOC_AC97_CODEC
Maciej S. Szmigieroa60abdf2015-05-10 00:12:04 +0200251 tristate "Build generic ASoC AC97 CODEC driver"
Takashi Iwai89fe5112008-05-23 16:10:37 +0200252 select SND_AC97_CODEC
Maciej S. Szmigieroa60abdf2015-05-10 00:12:04 +0200253 select SND_SOC_AC97_BUS
Richard Purdie7f137ab2006-10-06 18:38:37 +0200254
Barry Song7eaae412009-08-13 11:59:32 +0800255config SND_SOC_AD1836
256 tristate
257
Barry Songa1533d92010-03-19 14:48:33 +0800258config SND_SOC_AD193X
Barry Song12747382009-07-16 16:00:05 +0800259 tristate
260
Lars-Peter Clausen6c3d7132014-02-17 13:16:54 +0100261config SND_SOC_AD193X_SPI
262 tristate
263 select SND_SOC_AD193X
264
265config SND_SOC_AD193X_I2C
266 tristate
267 select SND_SOC_AD193X
268
Cliff Cai5f57dc82008-07-29 11:42:34 +0100269config SND_SOC_AD1980
Lars-Peter Clausen82d14632014-11-18 19:45:53 +0100270 select REGMAP_AC97
Cliff Cai5f57dc82008-07-29 11:42:34 +0100271 tristate
272
Cliff Cai0e77e782008-09-27 16:57:26 +0800273config SND_SOC_AD73311
274 tristate
Lars-Peter Clausen631ed8a2011-06-13 15:26:20 +0200275
Lars-Peter Clausen0eadaa92016-06-09 19:39:06 +0200276config SND_SOC_ADAU_UTILS
277 tristate
278
Lars-Peter Clausen41018662014-05-27 10:53:17 +0200279config SND_SOC_ADAU1373
280 tristate
Lars-Peter Clausen0eadaa92016-06-09 19:39:06 +0200281 select SND_SOC_ADAU_UTILS
Lars-Peter Clausen41018662014-05-27 10:53:17 +0200282
Lars-Peter Clausen631ed8a2011-06-13 15:26:20 +0200283config SND_SOC_ADAU1701
Mark Brown1291e142014-01-23 12:58:16 +0000284 tristate "Analog Devices ADAU1701 CODEC"
285 depends on I2C
Lars-Peter Clausen6b109982014-06-06 14:09:17 +0200286 select SND_SOC_SIGMADSP_I2C
Lars-Peter Clausen631ed8a2011-06-13 15:26:20 +0200287
Lars-Peter Clausen41018662014-05-27 10:53:17 +0200288config SND_SOC_ADAU17X1
Lars-Peter Clausenddd7a262011-08-15 20:15:22 +0200289 tristate
Lars-Peter Clausen6b109982014-06-06 14:09:17 +0200290 select SND_SOC_SIGMADSP_REGMAP
Lars-Peter Clausen0eadaa92016-06-09 19:39:06 +0200291 select SND_SOC_ADAU_UTILS
Lars-Peter Clausenddd7a262011-08-15 20:15:22 +0200292
Lars-Peter Clausendab464b2014-05-27 10:53:18 +0200293config SND_SOC_ADAU1761
294 tristate
295 select SND_SOC_ADAU17X1
296
297config SND_SOC_ADAU1761_I2C
298 tristate
299 select SND_SOC_ADAU1761
300 select REGMAP_I2C
301
302config SND_SOC_ADAU1761_SPI
303 tristate
304 select SND_SOC_ADAU1761
305 select REGMAP_SPI
306
Lars-Peter Clausen2923af02014-05-27 10:53:19 +0200307config SND_SOC_ADAU1781
308 select SND_SOC_ADAU17X1
309 tristate
310
311config SND_SOC_ADAU1781_I2C
312 tristate
313 select SND_SOC_ADAU1781
314 select REGMAP_I2C
315
316config SND_SOC_ADAU1781_SPI
317 tristate
318 select SND_SOC_ADAU1781
319 select REGMAP_SPI
Graeme Gregory2dcf9fb2009-11-04 17:49:22 +0000320
Lars-Peter Clausen603597c2014-02-18 15:57:35 +0100321config SND_SOC_ADAU1977
322 tristate
323
324config SND_SOC_ADAU1977_SPI
325 tristate
326 select SND_SOC_ADAU1977
327 select REGMAP_SPI
328
329config SND_SOC_ADAU1977_I2C
330 tristate
331 select SND_SOC_ADAU1977
332 select REGMAP_I2C
333
Lars-Peter Clausena0d35462016-06-02 14:19:42 +0200334config SND_SOC_ADAU7002
335 tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter"
336
Graeme Gregory2dcf9fb2009-11-04 17:49:22 +0000337config SND_SOC_ADAV80X
Cliff Cai0e77e782008-09-27 16:57:26 +0800338 tristate
Daniel Macka3819342009-03-09 02:13:17 +0100339
Lars-Peter Clausen0c2d6962014-02-17 13:16:56 +0100340config SND_SOC_ADAV801
341 tristate
342 select SND_SOC_ADAV80X
343
344config SND_SOC_ADAV803
345 tristate
346 select SND_SOC_ADAV80X
347
Daniel Macka3819342009-03-09 02:13:17 +0100348config SND_SOC_ADS117X
349 tristate
Richard Purdie796d2ca2008-06-23 14:51:28 +0100350
351config SND_SOC_AK4104
Mark Brown1291e142014-01-23 12:58:16 +0000352 tristate "AKM AK4104 CODEC"
353 depends on SPI_MASTER
Mark Brown3e860842008-09-06 18:11:51 +0100354
355config SND_SOC_AK4535
356 tristate
357
Kuninori Morimotoa2911cd2013-07-03 21:15:13 -0700358config SND_SOC_AK4554
Mark Brown1291e142014-01-23 12:58:16 +0000359 tristate "AKM AK4554 CODEC"
Kuninori Morimotoa2911cd2013-07-03 21:15:13 -0700360
Kuninori Morimotob0757062015-09-15 08:26:36 +0000361config SND_SOC_AK4613
362 tristate "AKM AK4613 CODEC"
363 depends on I2C
364
Dmitry Artamonow00d27012011-05-18 19:25:09 +0400365config SND_SOC_AK4641
366 tristate
367
Kuninori Morimotoa3a83d92009-08-21 10:23:41 +0900368config SND_SOC_AK4642
Mark Brown1291e142014-01-23 12:58:16 +0000369 tristate "AKM AK4642 CODEC"
370 depends on I2C
Kuninori Morimotoa3a83d92009-08-21 10:23:41 +0900371
Joonyoung Shim2312fd82009-09-10 00:12:43 +0900372config SND_SOC_AK4671
373 tristate
374
Daniel Mackcc289be2013-03-08 12:07:28 +0100375config SND_SOC_AK5386
Mark Brown1291e142014-01-23 12:58:16 +0000376 tristate "AKM AK5638 CODEC"
Daniel Mackcc289be2013-03-08 12:07:28 +0100377
Arnaud Patard (Rtp)6f4bc952010-10-21 19:40:02 +0200378config SND_SOC_ALC5623
Andrew Lunn7d6d4782014-05-03 20:30:11 +0200379 tristate "Realtek ALC5623 CODEC"
Takashi Iwai5dc04f52014-05-26 16:08:37 +0200380 depends on I2C
Mark Brown1291e142014-01-23 12:58:16 +0000381
Leon Romanovsky94d5f7c2011-11-05 12:38:02 +0200382config SND_SOC_ALC5632
383 tristate
Arnaud Patard (Rtp)6f4bc952010-10-21 19:40:02 +0200384
Kuninori Morimoto54aba082016-04-22 09:09:14 +0000385config SND_SOC_BT_SCO
Garlic Tseng8b0b50d2016-07-04 15:06:42 +0800386 tristate "Dummy BT SCO codec driver"
Kuninori Morimoto54aba082016-04-22 09:09:14 +0000387
Miguel Aguilarb56e9722010-03-11 09:32:59 -0600388config SND_SOC_CQ0093VC
389 tristate
390
Brian Austineef5bb22014-08-04 15:11:16 -0500391config SND_SOC_CS35L32
392 tristate "Cirrus Logic CS35L32 CODEC"
393 depends on I2C
394
Paul Handrigan3333cb72016-06-20 11:45:18 -0500395config SND_SOC_CS35L33
396 tristate "Cirrus Logic CS35L33 CODEC"
397 depends on I2C
398
apatard@mandriva.com72ed5a82010-05-27 14:57:41 +0200399config SND_SOC_CS42L51
400 tristate
401
Brian Austina1253ef2014-04-15 15:49:33 -0500402config SND_SOC_CS42L51_I2C
Thomas Petazzoni4e449232014-10-28 17:08:40 +0100403 tristate "Cirrus Logic CS42L51 CODEC (I2C)"
Randy Dunlape894beb2014-10-31 10:54:23 -0700404 depends on I2C
Brian Austina1253ef2014-04-15 15:49:33 -0500405 select SND_SOC_CS42L51
406
Brian Austindfe0f982012-04-27 15:45:52 -0500407config SND_SOC_CS42L52
Mark Brown1291e142014-01-23 12:58:16 +0000408 tristate "Cirrus Logic CS42L52 CODEC"
Arnd Bergmanna2915d42014-04-29 19:18:22 +0800409 depends on I2C && INPUT
Brian Austindfe0f982012-04-27 15:45:52 -0500410
Brian Austin272b5ed2014-05-05 15:09:08 -0500411config SND_SOC_CS42L56
412 tristate "Cirrus Logic CS42L56 CODEC"
413 depends on I2C && INPUT
Mark Brown3e860842008-09-06 18:11:51 +0100414
415config SND_SOC_CS42L73
Mark Brown1291e142014-01-23 12:58:16 +0000416 tristate "Cirrus Logic CS42L73 CODEC"
417 depends on I2C
Mark Brown3e860842008-09-06 18:11:51 +0100418
Paul Handriganfb6f8062014-06-23 17:29:53 -0500419config SND_SOC_CS4265
420 tristate "Cirrus Logic CS4265 CODEC"
421 depends on I2C
422 select REGMAP_I2C
423
Mark Brown3e860842008-09-06 18:11:51 +0100424# Cirrus Logic CS4270 Codec
425config SND_SOC_CS4270
Mark Brown1291e142014-01-23 12:58:16 +0000426 tristate "Cirrus Logic CS4270 CODEC"
427 depends on I2C
Mark Brown3e860842008-09-06 18:11:51 +0100428
Mark Brown3e860842008-09-06 18:11:51 +0100429# Cirrus Logic CS4270 Codec VD = 3.3V Errata
430# Select if you are affected by the errata where the part will not function
431# if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
432# not select any sample rates that require MCLK to be divided by 1.5.
433config SND_SOC_CS4270_VD33_ERRATA
434 bool
435 depends on SND_SOC_CS4270
436
Alexander Sverdlin67b22512011-01-19 21:22:06 +0300437config SND_SOC_CS4271
Axel Linc973b8a2014-10-06 23:09:47 +0800438 tristate
439
440config SND_SOC_CS4271_I2C
441 tristate "Cirrus Logic CS4271 CODEC (I2C)"
442 depends on I2C
443 select SND_SOC_CS4271
444 select REGMAP_I2C
445
446config SND_SOC_CS4271_SPI
447 tristate "Cirrus Logic CS4271 CODEC (SPI)"
448 depends on SPI_MASTER
449 select SND_SOC_CS4271
450 select REGMAP_SPI
Alexander Sverdlin67b22512011-01-19 21:22:06 +0300451
Nicolin Chen0c516b42014-03-20 18:18:37 +0800452config SND_SOC_CS42XX8
453 tristate
454
455config SND_SOC_CS42XX8_I2C
456 tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)"
457 depends on I2C
458 select SND_SOC_CS42XX8
459 select REGMAP_I2C
460
Tim Howee40da862015-07-16 14:51:40 -0500461# Cirrus Logic CS4349 HiFi DAC
462config SND_SOC_CS4349
463 tristate "Cirrus Logic CS4349 CODEC"
464 depends on I2C
465
Richard Fitzgerald66105502015-11-03 15:08:35 +0000466config SND_SOC_CS47L24
467 tristate
468
Nicolin Chende9b12142016-05-25 12:38:34 -0700469# Cirrus Logic Quad-Channel ADC
470config SND_SOC_CS53L30
471 tristate "Cirrus Logic CS53L30 CODEC"
472 depends on I2C
473
Janusz Krzysztofik459dc352009-07-22 05:22:28 +0200474config SND_SOC_CX20442
475 tristate
Joe Millenbach4f73bc42013-01-17 22:44:22 -0800476 depends on TTY
Janusz Krzysztofik459dc352009-07-22 05:22:28 +0200477
Lars-Peter Clausen3b097d62010-06-22 00:46:31 +0200478config SND_SOC_JZ4740_CODEC
Lars-Peter Clausendd1b18a2012-10-27 17:15:08 +0200479 select REGMAP_MMIO
Lars-Peter Clausen3b097d62010-06-22 00:46:31 +0200480 tristate
481
Christian Pellegrin1cad1de2008-11-15 08:58:16 +0100482config SND_SOC_L3
483 tristate
484
Mark Brownb4541662010-06-20 14:05:46 +0100485config SND_SOC_DA7210
486 tristate
487
Adam Thomsonef5c2eb2013-02-14 12:02:51 +0000488config SND_SOC_DA7213
489 tristate
490
Adam Thomson4d509342015-11-25 14:24:38 +0000491config SND_SOC_DA7218
492 tristate
493
Adam Thomson6d817c02015-09-29 16:44:01 +0100494config SND_SOC_DA7219
495 tristate
496
Adam Thomson48e27872012-06-11 13:15:27 +0100497config SND_SOC_DA732X
498 tristate
499
Ashish Chavan9911f7f2012-09-21 20:16:17 +0530500config SND_SOC_DA9055
501 tristate
502
David Lamberta7107702011-01-06 08:00:37 -0600503config SND_SOC_DMIC
504 tristate
505
Jyri Sarha09184112016-03-31 16:36:00 +0300506config SND_SOC_HDMI_CODEC
Arnd Bergmann6de7df82016-05-31 23:12:00 +0200507 tristate
508 select SND_PCM_ELD
509 select SND_PCM_IEC958
510 select HDMI
Jyri Sarha09184112016-03-31 16:36:00 +0300511
Sean Cross567e4f92014-07-31 10:43:36 +0800512config SND_SOC_ES8328
513 tristate "Everest Semi ES8328 CODEC"
514
515config SND_SOC_ES8328_I2C
516 tristate
517 select SND_SOC_ES8328
518
519config SND_SOC_ES8328_SPI
520 tristate
521 select SND_SOC_ES8328
522
Marek Beliskoefc47202015-06-20 22:47:01 +0200523config SND_SOC_GTM601
524 tristate 'GTM601 UMTS modem audio codec'
525
Mark Brown9049a482015-11-23 14:43:06 +0000526config SND_SOC_HDAC_HDMI
527 tristate
528 select SND_HDA_EXT_CORE
Subhransu S. Prusty2428bca2016-02-12 07:46:02 +0530529 select SND_PCM_ELD
Mark Brown9049a482015-11-23 14:43:06 +0000530 select HDMI
531
Ricard Wanderlof3b7ce992015-08-27 11:35:20 +0200532config SND_SOC_ICS43432
533 tristate
534
ZhengShunQiandecbc002015-11-09 10:10:19 +0800535config SND_SOC_INNO_RK3036
536 tristate "Inno codec driver for RK3036 SoC"
Antonio Ospite73159172016-01-25 18:23:30 +0100537 select REGMAP_MMIO
ZhengShunQiandecbc002015-11-09 10:10:19 +0800538
M R Swami Reddy2f989f72012-06-01 22:21:54 +0530539config SND_SOC_ISABELLE
540 tristate
541
M R Swami Reddydbf7a732012-03-30 16:03:43 +0530542config SND_SOC_LM49453
543 tristate
544
Mark Browne86e1242010-10-18 16:45:24 -0700545config SND_SOC_MAX98088
546 tristate
547
Kuninori Morimoto83f7cbc2012-11-20 20:27:10 -0800548config SND_SOC_MAX98090
549 tristate
550
Peter Hsiang82a5a932011-04-04 19:35:30 -0700551config SND_SOC_MAX98095
552 tristate
553
Kenneth Westfieldaf5adf12015-02-05 12:53:40 -0800554config SND_SOC_MAX98357A
555 tristate
556
anish kumarca2cd6b2016-04-27 15:39:05 -0700557config SND_SOC_MAX98371
558 tristate
559
Sylwester Nawrocki4c5d1462016-06-29 13:26:37 +0200560config SND_SOC_MAX98504
561 tristate "Maxim MAX98504 speaker amplifier"
562 depends on I2C
563
anish kumar805d1322016-02-17 17:28:49 -0800564config SND_SOC_MAX9867
565 tristate
566
Anish Kumar1ff27652015-03-09 15:50:34 -0700567config SND_SOC_MAX98925
568 tristate
569
anish kumara2e28762016-01-14 14:03:33 -0800570config SND_SOC_MAX98926
571 tristate
572
Christian Glindkamp0e45cab2011-03-09 11:20:04 +0100573config SND_SOC_MAX9850
574 tristate
575
Peter Rosin3b2af7f2016-05-14 23:09:39 +0200576config SND_SOC_MAX9860
577 tristate "Maxim MAX9860 Mono Audio Voice Codec"
578 depends on I2C
579 select REGMAP_I2C
580
Marek Belisko95169d02013-08-01 11:14:58 +0200581config SND_SOC_PCM1681
Mark Brown1291e142014-01-23 12:58:16 +0000582 tristate "Texas Instruments PCM1681 CODEC"
583 depends on I2C
Marek Belisko95169d02013-08-01 11:14:58 +0200584
Michael Trimarchi0471cd92016-01-10 00:38:04 +0100585config SND_SOC_PCM179X
Jacob Siverskog1b347b62016-01-22 13:39:53 +0100586 tristate
587
Jacob Siverskog70e3e562016-01-22 13:39:54 +0100588config SND_SOC_PCM179X_I2C
589 tristate "Texas Instruments PCM179X CODEC (I2C)"
590 depends on I2C
591 select SND_SOC_PCM179X
592 help
593 Enable support for Texas Instruments PCM179x CODEC.
594 Select this if your PCM179x is connected via an I2C bus.
595
Jacob Siverskog1b347b62016-01-22 13:39:53 +0100596config SND_SOC_PCM179X_SPI
597 tristate "Texas Instruments PCM179X CODEC (SPI)"
Mark Brown1291e142014-01-23 12:58:16 +0000598 depends on SPI_MASTER
Jacob Siverskog1b347b62016-01-22 13:39:53 +0100599 select SND_SOC_PCM179X
600 help
601 Enable support for Texas Instruments PCM179x CODEC.
602 Select this if your PCM179x is connected via an SPI bus.
Michael Trimarchi13b02fa2013-08-03 16:20:43 +0200603
Hugo Villeneuve1c0090c2008-11-19 01:37:31 -0500604config SND_SOC_PCM3008
605 tristate
606
Damien.Horsleya9b17a62015-12-08 15:59:00 +0000607config SND_SOC_PCM3168A
608 tristate
609
610config SND_SOC_PCM3168A_I2C
611 tristate "Texas Instruments PCM3168A CODEC - I2C"
612 depends on I2C
613 select SND_SOC_PCM3168A
614 select REGMAP_I2C
615
616config SND_SOC_PCM3168A_SPI
617 tristate "Texas Instruments PCM3168A CODEC - SPI"
618 depends on SPI_MASTER
619 select SND_SOC_PCM3168A
620 select REGMAP_SPI
621
Florian Meier97d3ddd2016-05-13 09:14:12 +0000622config SND_SOC_PCM5102A
623 tristate
624
Mark Brown5a3af122014-02-06 12:03:27 +0000625config SND_SOC_PCM512x
Mark Brown22066222014-03-07 11:44:08 +0800626 tristate
627
628config SND_SOC_PCM512x_I2C
629 tristate "Texas Instruments PCM512x CODECs - I2C"
630 depends on I2C
631 select SND_SOC_PCM512x
632 select REGMAP_I2C
633
634config SND_SOC_PCM512x_SPI
635 tristate "Texas Instruments PCM512x CODECs - SPI"
636 depends on SPI_MASTER
637 select SND_SOC_PCM512x
638 select REGMAP_SPI
Mark Brown5a3af122014-02-06 12:03:27 +0000639
Oder Chiou49ef7922014-05-20 15:01:53 +0800640config SND_SOC_RL6231
641 tristate
Oder Chiou4a6180e2016-02-03 19:53:24 +0800642 default y if SND_SOC_RT5514=y
Bard Liaob1d15052015-12-15 14:57:41 +0800643 default y if SND_SOC_RT5616=y
Oder Chiou49ef7922014-05-20 15:01:53 +0800644 default y if SND_SOC_RT5640=y
645 default y if SND_SOC_RT5645=y
646 default y if SND_SOC_RT5651=y
Bard Liaod3cb2de2015-11-09 14:47:34 +0800647 default y if SND_SOC_RT5659=y
Bard Liao5e8351d2014-06-30 20:31:13 +0800648 default y if SND_SOC_RT5670=y
Axel Lin30f14b42014-06-10 08:57:36 +0800649 default y if SND_SOC_RT5677=y
Oder Chiou4a6180e2016-02-03 19:53:24 +0800650 default m if SND_SOC_RT5514=m
Bard Liaob1d15052015-12-15 14:57:41 +0800651 default m if SND_SOC_RT5616=m
Oder Chiou49ef7922014-05-20 15:01:53 +0800652 default m if SND_SOC_RT5640=m
653 default m if SND_SOC_RT5645=m
654 default m if SND_SOC_RT5651=m
Bard Liaod3cb2de2015-11-09 14:47:34 +0800655 default m if SND_SOC_RT5659=m
Bard Liao5e8351d2014-06-30 20:31:13 +0800656 default m if SND_SOC_RT5670=m
Axel Lin30f14b42014-06-10 08:57:36 +0800657 default m if SND_SOC_RT5677=m
Oder Chiou49ef7922014-05-20 15:01:53 +0800658
Oder Chioubc08f962015-06-12 17:06:29 +0800659config SND_SOC_RL6347A
660 tristate
661 default y if SND_SOC_RT286=y
Bard Liao6adcafa2015-06-26 10:59:49 +0800662 default y if SND_SOC_RT298=y
Oder Chioubc08f962015-06-12 17:06:29 +0800663 default m if SND_SOC_RT286=m
Bard Liao6adcafa2015-06-26 10:59:49 +0800664 default m if SND_SOC_RT298=m
Oder Chioubc08f962015-06-12 17:06:29 +0800665
Bard Liao07cf7cba2014-06-20 14:41:13 +0800666config SND_SOC_RT286
667 tristate
Bard Liaoa5774832014-10-03 09:55:07 +0800668 depends on I2C
Bard Liao07cf7cba2014-06-20 14:41:13 +0800669
Bard Liao6adcafa2015-06-26 10:59:49 +0800670config SND_SOC_RT298
671 tristate
672 depends on I2C
673
Oder Chiou4a6180e2016-02-03 19:53:24 +0800674config SND_SOC_RT5514
Bard Liaob1d15052015-12-15 14:57:41 +0800675 tristate
676
Oder Chiou6eebf352016-06-06 18:33:31 +0800677config SND_SOC_RT5514_SPI
678 tristate
679
Bard Liao997b0522013-06-11 13:10:16 +0800680config SND_SOC_RT5616
Caesar Wang288bc352016-03-04 14:54:50 +0800681 tristate "Realtek RT5616 CODEC"
Arnd Bergmannaf139d52016-03-15 22:42:50 +0100682 depends on I2C
Bard Liao997b0522013-06-11 13:10:16 +0800683
Oder Chiou1319b2f2014-04-28 19:59:10 +0800684config SND_SOC_RT5631
685 tristate "Realtek ALC5631/RT5631 CODEC"
686 depends on I2C
Bard Liao40bc18a2014-04-16 19:20:46 +0800687
688config SND_SOC_RT5640
689 tristate
Bard Liao5e8351d2014-06-30 20:31:13 +0800690
691config SND_SOC_RT5645
692 tristate
Oder Chiou0e826e82014-05-26 20:32:33 +0800693
694config SND_SOC_RT5651
Ben Zhang359ff7f2014-12-10 20:15:25 -0800695 tristate
696
Bard Liaod3cb2de2015-11-09 14:47:34 +0800697config SND_SOC_RT5659
698 tristate
699
Mark Brown1291e142014-01-23 12:58:16 +0000700config SND_SOC_RT5670
701 tristate
Zeng Zhaoming9b34e6c2011-02-24 02:08:21 +0800702
Andrey Smirnov330345e2012-10-05 18:55:02 -0700703config SND_SOC_RT5677
704 tristate
705 select REGMAP_I2C
Ben Zhange29bee02014-10-20 20:30:13 -0700706 select REGMAP_IRQ
707
708config SND_SOC_RT5677_SPI
709 tristate
Arnd Bergmann4c121122015-01-28 22:31:30 +0100710 default SND_SOC_RT5677 && SPI
Chaithrika U Sbe461ba2009-05-28 05:10:50 -0400711
Lars-Peter Clausen40216ce2011-11-28 09:44:17 +0100712#Freescale sgtl5000 codec
713config SND_SOC_SGTL5000
714 tristate "Freescale SGTL5000 CODEC"
715 depends on I2C
Chaithrika U Sbe461ba2009-05-28 05:10:50 -0400716
717config SND_SOC_SI476X
Mark Brown3e860842008-09-06 18:11:51 +0100718 tristate
719
Lars-Peter Clausen6b109982014-06-06 14:09:17 +0200720config SND_SOC_SIGMADSP
721 tristate
722 select CRC32
723
724config SND_SOC_SIGMADSP_I2C
725 tristate
726 select SND_SOC_SIGMADSP
727
Rongjun Yingf516e362014-03-05 16:34:34 +0800728config SND_SOC_SIGMADSP_REGMAP
729 tristate
730 select SND_SOC_SIGMADSP
731
Mark Brown3e860842008-09-06 18:11:51 +0100732config SND_SOC_SIRF_AUDIO_CODEC
Jon Smirl3c166c72009-05-23 19:13:07 -0400733 tristate "SiRF SoC internal audio codec"
734 select REGMAP_MMIO
735
Mark Brown1291e142014-01-23 12:58:16 +0000736config SND_SOC_SN95031
Arun KSc1f27192008-10-02 14:45:49 +0530737 tristate
Lars-Peter Clausenb6b5e762013-05-23 20:14:50 +0200738
739config SND_SOC_SPDIF
740 tristate "S/PDIF CODEC"
Mark Brown3e860842008-09-06 18:11:51 +0100741
742config SND_SOC_SSM2518
Arun KSc1f27192008-10-02 14:45:49 +0530743 tristate
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +0100744
Stefan Kristiansson555b9ee2014-09-29 22:41:10 +0300745config SND_SOC_SSM2602
746 tristate
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +0100747
Stefan Kristiansson555b9ee2014-09-29 22:41:10 +0300748config SND_SOC_SSM2602_SPI
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +0100749 tristate "Analog Devices SSM2602 CODEC - SPI"
750 depends on SPI_MASTER
Stefan Kristiansson555b9ee2014-09-29 22:41:10 +0300751 select SND_SOC_SSM2602
752 select REGMAP_SPI
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +0100753
Stefan Kristiansson555b9ee2014-09-29 22:41:10 +0300754config SND_SOC_SSM2602_I2C
Lars-Peter Clausenc924dc62014-02-17 13:16:53 +0100755 tristate "Analog Devices SSM2602 CODEC - I2C"
Anatol Pomozov1ee44ce2014-09-26 13:31:06 -0700756 depends on I2C
757 select SND_SOC_SSM2602
758 select REGMAP_I2C
Arun KSc1f27192008-10-02 14:45:49 +0530759
760config SND_SOC_SSM4567
Arun KSc1f27192008-10-02 14:45:49 +0530761 tristate "Analog Devices ssm4567 amplifier driver support"
Max Filippovb3fc5722014-03-06 14:04:41 +0400762 depends on I2C
Sven Brandau2439ea12014-04-02 10:25:05 +0200763
764config SND_SOC_STA32X
Thomas Niederprüm6fad6252015-01-22 00:02:00 +0100765 tristate "STA326, STA328 and STA329 speaker amplifier"
766 depends on I2C
Thomas Niederprüma1be4ce2015-01-22 00:01:53 +0100767 select REGMAP_I2C
Mark Brown3e860842008-09-06 18:11:51 +0100768
Sven Brandau2439ea12014-04-02 10:25:05 +0200769config SND_SOC_STA350
770 tristate "STA350 speaker amplifier"
771 depends on I2C
772
Mark Brown3e860842008-09-06 18:11:51 +0100773config SND_SOC_STA529
774 tristate
Mark Brownd5d8d832008-10-13 19:16:14 +0100775
Takashi Iwai446e0f62008-10-10 08:26:57 +0200776config SND_SOC_STAC9766
Mark Brown3e860842008-09-06 18:11:51 +0100777 tristate
778
Arnaud Pouliquen32a726b2015-06-22 16:31:11 +0200779config SND_SOC_STI_SAS
780 tristate "codec Audio support for STI SAS codec"
Arnaud Pouliquen32a726b2015-06-22 16:31:11 +0200781
Dan Murphy5df7f712014-07-14 15:10:45 -0500782config SND_SOC_TAS2552
783 tristate "Texas Instruments TAS2552 Mono Audio amplifier"
784 depends on I2C
785
Mark Brown3e860842008-09-06 18:11:51 +0100786config SND_SOC_TAS5086
787 tristate "Texas Instruments TAS5086 speaker amplifier"
788 depends on I2C
789
Kevin Cernekee3fd6e7d2015-05-03 17:00:18 -0700790config SND_SOC_TAS571X
Petr Kulhavy23a282c2016-03-31 18:41:26 +0200791 tristate "Texas Instruments TAS5711/TAS5717/TAS5719/TAS5721 power amplifiers"
Kevin Cernekee3fd6e7d2015-05-03 17:00:18 -0700792 depends on I2C
793
Andreas Dannenbergbd023ad2016-04-26 17:15:57 -0500794config SND_SOC_TAS5720
795 tristate "Texas Instruments TAS5720 Mono Audio amplifier"
796 depends on I2C
797 help
798 Enable support for Texas Instruments TAS5720L/M high-efficiency mono
799 Class-D audio power amplifiers.
800
Peter Rosinfbace432014-11-08 14:40:17 +0100801config SND_SOC_TFA9879
802 tristate "NXP Semiconductors TFA9879 amplifier"
803 depends on I2C
804
Mark Brown3e860842008-09-06 18:11:51 +0100805config SND_SOC_TLV320AIC23
806 tristate
807
Max Filippovb3fc5722014-03-06 14:04:41 +0400808config SND_SOC_TLV320AIC23_I2C
Max Filippovd004ebb2014-10-29 16:25:38 +0300809 tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C"
Max Filippovbf9706f2014-11-03 13:10:53 +0300810 depends on I2C
Max Filippovb3fc5722014-03-06 14:04:41 +0400811 select SND_SOC_TLV320AIC23
812
813config SND_SOC_TLV320AIC23_SPI
Max Filippovd004ebb2014-10-29 16:25:38 +0300814 tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI"
Max Filippovbf9706f2014-11-03 13:10:53 +0300815 depends on SPI_MASTER
Max Filippovb3fc5722014-03-06 14:04:41 +0400816 select SND_SOC_TLV320AIC23
817
Mark Brown3e860842008-09-06 18:11:51 +0100818config SND_SOC_TLV320AIC26
Paul Bolle379cf392013-03-12 21:08:38 +0100819 tristate
Mark Brown3e860842008-09-06 18:11:51 +0100820 depends on SPI
821
Jyri Sarhae00447f2014-03-11 12:57:32 +0200822config SND_SOC_TLV320AIC31XX
Peter Ujfalusi96665e32014-07-25 15:07:48 +0300823 tristate "Texas Instruments TLV320AIC31xx CODECs"
Peter Ujfalusia9ef83f2014-07-25 15:07:47 +0300824 depends on I2C
825 select REGMAP_I2C
Jyri Sarhae00447f2014-03-11 12:57:32 +0200826
Wolfram Sang684a65d2011-10-11 12:43:02 +0200827config SND_SOC_TLV320AIC32X4
Javier Martin1d471cd2011-03-02 14:52:32 +0100828 tristate
829
Jeremy McDermond3bcfd222016-04-18 17:24:05 -0700830config SND_SOC_TLV320AIC32X4_I2C
831 tristate
832 depends on I2C
833 select SND_SOC_TLV320AIC32X4
834
Jeremy McDermond125bc682016-04-18 17:24:06 -0700835config SND_SOC_TLV320AIC32X4_SPI
836 tristate
837 depends on SPI_MASTER
838 select SND_SOC_TLV320AIC32X4
839
Mark Brown3e860842008-09-06 18:11:51 +0100840config SND_SOC_TLV320AIC3X
Mark Brown1291e142014-01-23 12:58:16 +0000841 tristate "Texas Instruments TLV320AIC3x CODECs"
842 depends on I2C
Mark Brown3e860842008-09-06 18:11:51 +0100843
Peter Ujfalusic8bf93f2009-10-15 09:03:56 +0300844config SND_SOC_TLV320DAC33
845 tristate
846
Dylan Reid2880fc82014-11-13 11:18:29 -0800847config SND_SOC_TS3A227E
848 tristate "TI Headset/Mic detect and keypress chip"
849 depends on I2C
850
Steve Sakomancc175572008-10-30 21:35:26 -0700851config SND_SOC_TWL4030
Peter Ujfalusi57fe7252011-05-31 12:02:49 +0300852 select MFD_TWL4030_AUDIO
Steve Sakomancc175572008-10-30 21:35:26 -0700853 tristate
Steve Sakomancc175572008-10-30 21:35:26 -0700854
Misael Lopez Cruz8ecbabd2010-03-19 11:25:51 +0000855config SND_SOC_TWL6040
856 tristate
857
Christian Pellegrin1cad1de2008-11-15 08:58:16 +0100858config SND_SOC_UDA134X
859 tristate
Christian Pellegrin1cad1de2008-11-15 08:58:16 +0100860
Philipp Zabelb7482f52008-05-28 17:58:06 +0100861config SND_SOC_UDA1380
862 tristate
863
Mark Brown49d7ad92010-08-20 17:24:51 +0100864config SND_SOC_WL1273
865 tristate
866
Dimitris Papastamose3523e02012-08-23 15:59:56 +0100867config SND_SOC_WM0010
868 tristate
869
Mark Brown4bb3f432011-04-08 16:49:42 +0900870config SND_SOC_WM1250_EV1
871 tristate
872
Mark Brown4911ccd2011-12-02 21:59:18 +0000873config SND_SOC_WM2000
874 tristate
875
Mark Brownd5315a22012-01-25 19:29:41 +0000876config SND_SOC_WM2200
877 tristate
878
Mark Brown6d4baf02011-09-20 15:44:21 +0100879config SND_SOC_WM5100
880 tristate
881
Mark Brown93e87912012-06-19 16:38:15 +0100882config SND_SOC_WM5102
883 tristate
884
Mark Brown5c6af632012-07-09 19:09:41 +0100885config SND_SOC_WM5110
886 tristate
887
Mark Brown40aa4a32008-12-16 10:15:12 +0000888config SND_SOC_WM8350
889 tristate
890
Mark Brownaaf1e172009-03-10 10:55:15 +0000891config SND_SOC_WM8400
892 tristate
893
Mark Brown5d421512008-06-05 13:49:32 +0100894config SND_SOC_WM8510
Mark Brown1291e142014-01-23 12:58:16 +0000895 tristate "Wolfson Microelectronics WM8510 CODEC"
896 depends on SND_SOC_I2C_AND_SPI
Mark Brown5d421512008-06-05 13:49:32 +0100897
Mark Brown1dcf98f2009-07-01 18:28:54 +0100898config SND_SOC_WM8523
Mark Brown1291e142014-01-23 12:58:16 +0000899 tristate "Wolfson Microelectronics WM8523 DAC"
900 depends on I2C
Mark Brown1dcf98f2009-07-01 18:28:54 +0100901
Mark Browne88ba012008-08-06 13:18:26 +0100902config SND_SOC_WM8580
Mark Brown1291e142014-01-23 12:58:16 +0000903 tristate "Wolfson Microelectronics WM8523 CODEC"
904 depends on I2C
Mark Browne88ba012008-08-06 13:18:26 +0100905
Mike Arthurbd6d4172009-08-18 20:37:49 +0100906config SND_SOC_WM8711
Mark Brown1291e142014-01-23 12:58:16 +0000907 tristate "Wolfson Microelectronics WM8711 CODEC"
908 depends on SND_SOC_I2C_AND_SPI
Mike Arthurbd6d4172009-08-18 20:37:49 +0100909
Neil Jones89933de2009-11-02 15:14:17 +0000910config SND_SOC_WM8727
911 tristate
912
Mark Brown71cfc902008-11-13 14:33:14 +0000913config SND_SOC_WM8728
Mark Brown1291e142014-01-23 12:58:16 +0000914 tristate "Wolfson Microelectronics WM8728 DAC"
915 depends on SND_SOC_I2C_AND_SPI
Mark Brown71cfc902008-11-13 14:33:14 +0000916
Richard Purdie7f137ab2006-10-06 18:38:37 +0200917config SND_SOC_WM8731
Mark Brown1291e142014-01-23 12:58:16 +0000918 tristate "Wolfson Microelectronics WM8731 CODEC"
919 depends on SND_SOC_I2C_AND_SPI
Richard Purdie7f137ab2006-10-06 18:38:37 +0200920
Mark Brown2a9ae132010-11-23 19:31:18 +0000921config SND_SOC_WM8737
Mark Brown1291e142014-01-23 12:58:16 +0000922 tristate "Wolfson Microelectronics WM8737 ADC"
923 depends on SND_SOC_I2C_AND_SPI
Mark Brown2a9ae132010-11-23 19:31:18 +0000924
Ian Lartey992bee42010-07-31 00:32:11 +0100925config SND_SOC_WM8741
Mark Brown1291e142014-01-23 12:58:16 +0000926 tristate "Wolfson Microelectronics WM8737 DAC"
927 depends on SND_SOC_I2C_AND_SPI
Ian Lartey992bee42010-07-31 00:32:11 +0100928
Richard Purdie7f137ab2006-10-06 18:38:37 +0200929config SND_SOC_WM8750
Mark Brown1291e142014-01-23 12:58:16 +0000930 tristate "Wolfson Microelectronics WM8750 CODEC"
931 depends on SND_SOC_I2C_AND_SPI
Richard Purdie7f137ab2006-10-06 18:38:37 +0200932
Liam Girdwood33703b72007-04-16 19:18:15 +0200933config SND_SOC_WM8753
Mark Brown1291e142014-01-23 12:58:16 +0000934 tristate "Wolfson Microelectronics WM8753 CODEC"
935 depends on SND_SOC_I2C_AND_SPI
Liam Girdwood33703b72007-04-16 19:18:15 +0200936
Dimitris Papastamosc046fd42010-11-05 18:41:25 +0000937config SND_SOC_WM8770
Mark Brown1291e142014-01-23 12:58:16 +0000938 tristate "Wolfson Microelectronics WM8770 CODEC"
Mark Browne479d852014-02-07 15:57:50 +0000939 depends on SPI_MASTER
Dimitris Papastamosc046fd42010-11-05 18:41:25 +0000940
Mark Brown924914e2009-08-04 23:50:16 +0100941config SND_SOC_WM8776
Mark Brown1291e142014-01-23 12:58:16 +0000942 tristate "Wolfson Microelectronics WM8776 CODEC"
943 depends on SND_SOC_I2C_AND_SPI
Mark Brown924914e2009-08-04 23:50:16 +0100944
Johannes Stezenbachec3ea542011-06-22 14:59:25 +0200945config SND_SOC_WM8782
946 tristate
947
Dimitris Papastamos33cf45c2010-09-29 11:14:56 +0100948config SND_SOC_WM8804
Charles Keepaxbbed2972015-02-22 16:43:21 +0000949 tristate
950
951config SND_SOC_WM8804_I2C
952 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C"
953 depends on I2C
954 select SND_SOC_WM8804
955 select REGMAP_I2C
956
957config SND_SOC_WM8804_SPI
958 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI"
959 depends on SPI_MASTER
960 select SND_SOC_WM8804
961 select REGMAP_SPI
Dimitris Papastamos33cf45c2010-09-29 11:14:56 +0100962
Mark Brown0e0e16a2008-08-04 12:06:45 +0100963config SND_SOC_WM8900
964 tristate
965
Mark Brownf1c0a022008-08-26 13:05:27 +0100966config SND_SOC_WM8903
Mark Brown1291e142014-01-23 12:58:16 +0000967 tristate "Wolfson Microelectronics WM8903 CODEC"
968 depends on I2C
Mark Brownf1c0a022008-08-26 13:05:27 +0100969
Mark Browna91eb192009-11-26 11:56:07 +0000970config SND_SOC_WM8904
971 tristate
972
Jonathan Cameron0b5e92c52009-04-27 13:49:44 +0000973config SND_SOC_WM8940
974 tristate
975
Mark Brownb35a28a2009-12-18 12:00:22 +0000976config SND_SOC_WM8955
977 tristate
978
Mark Brownf2644a22009-04-07 19:20:14 +0100979config SND_SOC_WM8960
Fabio Estevam465011f2016-03-27 19:06:14 -0300980 tristate "Wolfson Microelectronics WM8960 CODEC"
Mark Brown3fcdfc92016-03-30 11:02:49 -0700981 depends on I2C
Mark Brownf2644a22009-04-07 19:20:14 +0100982
Mark Brown74dc55e2009-06-09 09:55:51 +0100983config SND_SOC_WM8961
984 tristate
985
Mark Brown9a76f1f2010-08-05 13:20:59 +0100986config SND_SOC_WM8962
Mark Brown1291e142014-01-23 12:58:16 +0000987 tristate "Wolfson Microelectronics WM8962 CODEC"
Arnd Bergmanna2915d42014-04-29 19:18:22 +0800988 depends on I2C && INPUT
Mark Brown9a76f1f2010-08-05 13:20:59 +0100989
Kenneth Kiraly8bae3e22008-09-10 19:33:32 +0100990config SND_SOC_WM8971
991 tristate
992
Mark Brown0a1bf552009-05-23 11:18:41 +0100993config SND_SOC_WM8974
Mans Rullgard2005bd82015-12-16 13:02:55 +0000994 tristate "Wolfson Microelectronics WM8974 codec"
995 depends on I2C
Mark Brown0a1bf552009-05-23 11:18:41 +0100996
Guennadi Liakhovetski0d34e912010-01-27 18:56:23 +0100997config SND_SOC_WM8978
Geert Uytterhoeven77c54532014-08-28 14:48:24 +0200998 tristate "Wolfson Microelectronics WM8978 codec"
999 depends on I2C
Guennadi Liakhovetski0d34e912010-01-27 18:56:23 +01001000
Dimitris Papastamos6b3860b2011-07-15 13:51:30 +01001001config SND_SOC_WM8983
1002 tristate
1003
Dimitris Papastamos6d6f8b82010-09-15 15:23:20 +01001004config SND_SOC_WM8985
Petr Kulhavy811e66d2016-05-26 22:19:16 +02001005 tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver"
Arnd Bergmannb82d67f2016-06-17 12:12:00 +02001006 depends on SND_SOC_I2C_AND_SPI
Dimitris Papastamos6d6f8b82010-09-15 15:23:20 +01001007
Mark Brown5409fb42009-04-07 18:45:21 +01001008config SND_SOC_WM8988
1009 tristate
1010
Mark Brownf10485e2008-06-05 13:49:33 +01001011config SND_SOC_WM8990
1012 tristate
1013
Dimitris Papastamos203db222011-01-14 15:49:40 +00001014config SND_SOC_WM8991
1015 tristate
1016
Mark Brown942c4352009-06-05 16:32:59 +01001017config SND_SOC_WM8993
1018 tristate
1019
Mark Brown9e6e96a2010-01-29 17:47:12 +00001020config SND_SOC_WM8994
1021 tristate
1022
Dimitris Papastamos6a504a72010-12-22 11:33:11 +00001023config SND_SOC_WM8995
1024 tristate
1025
Mark Browna9ba6152011-06-24 12:10:44 +01001026config SND_SOC_WM8996
1027 tristate
1028
Charles Keepax40843ae2013-08-12 23:46:55 +01001029config SND_SOC_WM8997
1030 tristate
1031
Richard Fitzgerald6ebbce02015-09-28 14:01:09 +01001032config SND_SOC_WM8998
1033 tristate
1034
Mark Brown86ed3662009-05-22 15:01:19 +01001035config SND_SOC_WM9081
1036 tristate
1037
Mark Brown59792aa2011-12-02 22:00:39 +00001038config SND_SOC_WM9090
1039 tristate
1040
Ian Molton2aceefe2009-01-16 11:04:18 +00001041config SND_SOC_WM9705
1042 tristate
1043
Richard Purdie7f137ab2006-10-06 18:38:37 +02001044config SND_SOC_WM9712
1045 tristate
Timur Tabib0c813c2007-07-31 18:18:44 +02001046
Liam Girdwood83ac08c2008-02-15 16:43:11 +01001047config SND_SOC_WM9713
1048 tristate
Robert Jarzmik700dadf2015-11-01 20:23:39 +01001049 select REGMAP_AC97
Joonyoung Shim9db9ed92009-07-15 20:34:00 +09001050
1051# Amp
Lars-Peter Clausen9b0a25f2011-03-07 08:04:55 +01001052config SND_SOC_LM4857
1053 tristate
1054
Wolfram Sang394d2bb2012-01-27 16:10:23 +01001055config SND_SOC_MAX9768
1056 tristate
1057
Joonyoung Shim9db9ed92009-07-15 20:34:00 +09001058config SND_SOC_MAX9877
1059 tristate
Peter Ujfalusi493b67e2009-10-09 15:55:41 +03001060
Philippe Rétornaz8b908b82012-05-15 13:53:50 +02001061config SND_SOC_MC13783
1062 tristate
1063
Tomoya MORINAGAd808fe92012-03-19 20:59:28 +09001064config SND_SOC_ML26124
1065 tristate
1066
Anatol Pomozov34ca27f2015-10-02 09:49:14 -07001067config SND_SOC_NAU8825
1068 tristate
1069
Peter Ujfalusi493b67e2009-10-09 15:55:41 +03001070config SND_SOC_TPA6130A2
Mark Brown1291e142014-01-23 12:58:16 +00001071 tristate "Texas Instruments TPA6130A2 headphone amplifier"
1072 depends on I2C
Mark Brown4d1a7722014-02-07 15:40:35 +00001073
1074endmenu