1# 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 11config SND_SOC_ALL_CODECS 12 tristate "Build all ASoC CODEC drivers" 13 select SND_SOC_L3 14 select SND_SOC_AC97_CODEC if SND_SOC_AC97_BUS 15 select SND_SOC_AD1836 if SPI_MASTER 16 select SND_SOC_AD1938 if SPI_MASTER 17 select SND_SOC_AD1980 if SND_SOC_AC97_BUS 18 select SND_SOC_ADS117X 19 select SND_SOC_AD73311 if I2C 20 select SND_SOC_AK4104 if SPI_MASTER 21 select SND_SOC_AK4535 if I2C 22 select SND_SOC_AK4642 if I2C 23 select SND_SOC_AK4671 if I2C 24 select SND_SOC_CS4270 if I2C 25 select SND_SOC_MAX9877 if I2C 26 select SND_SOC_DA7210 if I2C 27 select SND_SOC_PCM3008 28 select SND_SOC_SPDIF 29 select SND_SOC_SSM2602 if I2C 30 select SND_SOC_STAC9766 if SND_SOC_AC97_BUS 31 select SND_SOC_TLV320AIC23 if I2C 32 select SND_SOC_TLV320AIC26 if SPI_MASTER 33 select SND_SOC_TLV320AIC3X if I2C 34 select SND_SOC_TPA6130A2 if I2C 35 select SND_SOC_TLV320DAC33 if I2C 36 select SND_SOC_TWL4030 if TWL4030_CORE 37 select SND_SOC_UDA134X 38 select SND_SOC_UDA1380 if I2C 39 select SND_SOC_WM2000 if I2C 40 select SND_SOC_WM8350 if MFD_WM8350 41 select SND_SOC_WM8400 if MFD_WM8400 42 select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI 43 select SND_SOC_WM8523 if I2C 44 select SND_SOC_WM8580 if I2C 45 select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI 46 select SND_SOC_WM8727 47 select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI 48 select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI 49 select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI 50 select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI 51 select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI 52 select SND_SOC_WM8900 if I2C 53 select SND_SOC_WM8903 if I2C 54 select SND_SOC_WM8904 if I2C 55 select SND_SOC_WM8940 if I2C 56 select SND_SOC_WM8955 if I2C 57 select SND_SOC_WM8960 if I2C 58 select SND_SOC_WM8961 if I2C 59 select SND_SOC_WM8971 if I2C 60 select SND_SOC_WM8974 if I2C 61 select SND_SOC_WM8978 if I2C 62 select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI 63 select SND_SOC_WM8990 if I2C 64 select SND_SOC_WM8993 if I2C 65 select SND_SOC_WM8994 if MFD_WM8994 66 select SND_SOC_WM9081 if I2C 67 select SND_SOC_WM9705 if SND_SOC_AC97_BUS 68 select SND_SOC_WM9712 if SND_SOC_AC97_BUS 69 select SND_SOC_WM9713 if SND_SOC_AC97_BUS 70 help 71 Normally ASoC codec drivers are only built if a machine driver which 72 uses them is also built since they are only usable with a machine 73 driver. Selecting this option will allow these drivers to be built 74 without an explicit machine driver for test and development purposes. 75 76 Support for the bus types used to access the codecs to be built must 77 be selected separately. 78 79 If unsure select "N". 80 81config SND_SOC_WM_HUBS 82 tristate 83 default y if SND_SOC_WM8993=y 84 default m if SND_SOC_WM8993=m 85 86config SND_SOC_AC97_CODEC 87 tristate 88 select SND_AC97_CODEC 89 90config SND_SOC_AD1836 91 tristate 92 93config SND_SOC_AD1938 94 tristate 95 96config SND_SOC_AD1980 97 tristate 98 99config SND_SOC_AD73311 100 tristate 101 102config SND_SOC_ADS117X 103 tristate 104 105config SND_SOC_AK4104 106 tristate 107 108config SND_SOC_AK4535 109 tristate 110 111config SND_SOC_AK4642 112 tristate 113 114config SND_SOC_AK4671 115 tristate 116 117# Cirrus Logic CS4270 Codec 118config SND_SOC_CS4270 119 tristate 120 121config SND_SOC_DA7210 122 tristate 123 124# Cirrus Logic CS4270 Codec VD = 3.3V Errata 125# Select if you are affected by the errata where the part will not function 126# if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will 127# not select any sample rates that require MCLK to be divided by 1.5. 128config SND_SOC_CS4270_VD33_ERRATA 129 bool 130 depends on SND_SOC_CS4270 131 132config SND_SOC_CX20442 133 tristate 134 135config SND_SOC_L3 136 tristate 137 138config SND_SOC_PCM3008 139 tristate 140 141config SND_SOC_SPDIF 142 tristate 143 144config SND_SOC_SSM2602 145 tristate 146 147config SND_SOC_STAC9766 148 tristate 149 150config SND_SOC_TLV320AIC23 151 tristate 152 153config SND_SOC_TLV320AIC26 154 tristate "TI TLV320AIC26 Codec support" if SND_SOC_OF_SIMPLE 155 depends on SPI 156 157config SND_SOC_TLV320AIC3X 158 tristate 159 160config SND_SOC_TLV320DAC33 161 tristate 162 163config SND_SOC_TWL4030 164 select TWL4030_CODEC 165 tristate 166 167config SND_SOC_UDA134X 168 tristate 169 170config SND_SOC_UDA1380 171 tristate 172 173config SND_SOC_WM8350 174 tristate 175 176config SND_SOC_WM8400 177 tristate 178 179config SND_SOC_WM8510 180 tristate 181 182config SND_SOC_WM8523 183 tristate 184 185config SND_SOC_WM8580 186 tristate 187 188config SND_SOC_WM8711 189 tristate 190 191config SND_SOC_WM8727 192 tristate 193 194config SND_SOC_WM8728 195 tristate 196 197config SND_SOC_WM8731 198 tristate 199 200config SND_SOC_WM8750 201 tristate 202 203config SND_SOC_WM8753 204 tristate 205 206config SND_SOC_WM8776 207 tristate 208 209config SND_SOC_WM8900 210 tristate 211 212config SND_SOC_WM8903 213 tristate 214 215config SND_SOC_WM8904 216 tristate 217 218config SND_SOC_WM8940 219 tristate 220 221config SND_SOC_WM8955 222 tristate 223 224config SND_SOC_WM8960 225 tristate 226 227config SND_SOC_WM8961 228 tristate 229 230config SND_SOC_WM8971 231 tristate 232 233config SND_SOC_WM8974 234 tristate 235 236config SND_SOC_WM8978 237 tristate 238 239config SND_SOC_WM8988 240 tristate 241 242config SND_SOC_WM8990 243 tristate 244 245config SND_SOC_WM8993 246 tristate 247 248config SND_SOC_WM8994 249 tristate 250 251config SND_SOC_WM9081 252 tristate 253 254config SND_SOC_WM9705 255 tristate 256 257config SND_SOC_WM9712 258 tristate 259 260config SND_SOC_WM9713 261 tristate 262 263# Amp 264config SND_SOC_MAX9877 265 tristate 266 267config SND_SOC_TPA6130A2 268 tristate 269 270config SND_SOC_WM2000 271 tristate 272