1# SPDX-License-Identifier: GPL-2.0-only 2# Helper to resolve issues with configs that have SPI enabled but I2C 3# modular, meaning we can't build the codec driver in with I2C support. 4# We use an ordered list of conditional defaults to pick the appropriate 5# setting - SPI can't be modular so that case doesn't need to be covered. 6config SND_SOC_I2C_AND_SPI 7 tristate 8 default m if I2C=m 9 default y if I2C=y 10 default y if SPI_MASTER=y 11 12menu "CODEC drivers" 13 14config SND_SOC_ALL_CODECS 15 tristate "Build all ASoC CODEC drivers" 16 depends on COMPILE_TEST 17 imply SND_SOC_88PM860X 18 imply SND_SOC_L3 19 imply SND_SOC_AB8500_CODEC 20 imply SND_SOC_AC97_CODEC 21 imply SND_SOC_AD1836 22 imply SND_SOC_AD193X_SPI 23 imply SND_SOC_AD193X_I2C 24 imply SND_SOC_AD1980 25 imply SND_SOC_AD73311 26 imply SND_SOC_ADAU1372_I2C 27 imply SND_SOC_ADAU1372_SPI 28 imply SND_SOC_ADAU1373 29 imply SND_SOC_ADAU1761_I2C 30 imply SND_SOC_ADAU1761_SPI 31 imply SND_SOC_ADAU1781_I2C 32 imply SND_SOC_ADAU1781_SPI 33 imply SND_SOC_ADAV801 34 imply SND_SOC_ADAV803 35 imply SND_SOC_ADAU1977_SPI 36 imply SND_SOC_ADAU1977_I2C 37 imply SND_SOC_ADAU1701 38 imply SND_SOC_ADAU7002 39 imply SND_SOC_ADAU7118_I2C 40 imply SND_SOC_ADAU7118_HW 41 imply SND_SOC_ADS117X 42 imply SND_SOC_AK4104 43 imply SND_SOC_AK4118 44 imply SND_SOC_AK4375 45 imply SND_SOC_AK4458 46 imply SND_SOC_AK4535 47 imply SND_SOC_AK4554 48 imply SND_SOC_AK4613 49 imply SND_SOC_AK4641 50 imply SND_SOC_AK4642 51 imply SND_SOC_AK4671 52 imply SND_SOC_AK5386 53 imply SND_SOC_AK5558 54 imply SND_SOC_ALC5623 55 imply SND_SOC_ALC5632 56 imply SND_SOC_AW8738 57 imply SND_SOC_BT_SCO 58 imply SND_SOC_BD28623 59 imply SND_SOC_CQ0093VC 60 imply SND_SOC_CROS_EC_CODEC 61 imply SND_SOC_CS35L32 62 imply SND_SOC_CS35L33 63 imply SND_SOC_CS35L34 64 imply SND_SOC_CS35L35 65 imply SND_SOC_CS35L36 66 imply SND_SOC_CS35L41_SPI 67 imply SND_SOC_CS35L41_I2C 68 imply SND_SOC_CS35L45_I2C 69 imply SND_SOC_CS35L45_SPI 70 imply SND_SOC_CS42L42 71 imply SND_SOC_CS42L51_I2C 72 imply SND_SOC_CS42L52 73 imply SND_SOC_CS42L56 74 imply SND_SOC_CS42L73 75 imply SND_SOC_CS4234 76 imply SND_SOC_CS4265 77 imply SND_SOC_CS4270 78 imply SND_SOC_CS4271_I2C 79 imply SND_SOC_CS4271_SPI 80 imply SND_SOC_CS42XX8_I2C 81 imply SND_SOC_CS43130 82 imply SND_SOC_CS4341 83 imply SND_SOC_CS4349 84 imply SND_SOC_CS47L15 85 imply SND_SOC_CS47L24 86 imply SND_SOC_CS47L35 87 imply SND_SOC_CS47L85 88 imply SND_SOC_CS47L90 89 imply SND_SOC_CS47L92 90 imply SND_SOC_CS53L30 91 imply SND_SOC_CX20442 92 imply SND_SOC_CX2072X 93 imply SND_SOC_DA7210 94 imply SND_SOC_DA7213 95 imply SND_SOC_DA7218 96 imply SND_SOC_DA7219 97 imply SND_SOC_DA732X 98 imply SND_SOC_DA9055 99 imply SND_SOC_DMIC 100 imply SND_SOC_ES8316 101 imply SND_SOC_ES8328_SPI 102 imply SND_SOC_ES8328_I2C 103 imply SND_SOC_ES7134 104 imply SND_SOC_ES7241 105 imply SND_SOC_GTM601 106 imply SND_SOC_HDAC_HDMI 107 imply SND_SOC_HDAC_HDA 108 imply SND_SOC_ICS43432 109 imply SND_SOC_INNO_RK3036 110 imply SND_SOC_ISABELLE 111 imply SND_SOC_JZ4740_CODEC 112 imply SND_SOC_JZ4725B_CODEC 113 imply SND_SOC_JZ4760_CODEC 114 imply SND_SOC_JZ4770_CODEC 115 imply SND_SOC_LM4857 116 imply SND_SOC_LM49453 117 imply SND_SOC_LOCHNAGAR_SC 118 imply SND_SOC_MAX98088 119 imply SND_SOC_MAX98090 120 imply SND_SOC_MAX98095 121 imply SND_SOC_MAX98357A 122 imply SND_SOC_MAX98371 123 imply SND_SOC_MAX98504 124 imply SND_SOC_MAX98520 125 imply SND_SOC_MAX9867 126 imply SND_SOC_MAX98925 127 imply SND_SOC_MAX98926 128 imply SND_SOC_MAX98927 129 imply SND_SOC_MAX98373_I2C 130 imply SND_SOC_MAX98373_SDW 131 imply SND_SOC_MAX98390 132 imply SND_SOC_MAX98396 133 imply SND_SOC_MAX9850 134 imply SND_SOC_MAX9860 135 imply SND_SOC_MAX9759 136 imply SND_SOC_MAX9768 137 imply SND_SOC_MAX9877 138 imply SND_SOC_MC13783 139 imply SND_SOC_ML26124 140 imply SND_SOC_MT6351 141 imply SND_SOC_MT6358 142 imply SND_SOC_MT6359 143 imply SND_SOC_MT6660 144 imply SND_SOC_NAU8315 145 imply SND_SOC_NAU8540 146 imply SND_SOC_NAU8810 147 imply SND_SOC_NAU8821 148 imply SND_SOC_NAU8822 149 imply SND_SOC_NAU8824 150 imply SND_SOC_NAU8825 151 imply SND_SOC_HDMI_CODEC 152 imply SND_SOC_PCM1681 153 imply SND_SOC_PCM1789_I2C 154 imply SND_SOC_PCM179X_I2C 155 imply SND_SOC_PCM179X_SPI 156 imply SND_SOC_PCM186X_I2C 157 imply SND_SOC_PCM186X_SPI 158 imply SND_SOC_PCM3008 159 imply SND_SOC_PCM3060_I2C 160 imply SND_SOC_PCM3060_SPI 161 imply SND_SOC_PCM3168A_I2C 162 imply SND_SOC_PCM3168A_SPI 163 imply SND_SOC_PCM5102A 164 imply SND_SOC_PCM512x_I2C 165 imply SND_SOC_PCM512x_SPI 166 imply SND_SOC_RK3328 167 imply SND_SOC_RK817 168 imply SND_SOC_RT274 169 imply SND_SOC_RT286 170 imply SND_SOC_RT298 171 imply SND_SOC_RT1011 172 imply SND_SOC_RT1015 173 imply SND_SOC_RT1015P 174 imply SND_SOC_RT1016 175 imply SND_SOC_RT1019 176 imply SND_SOC_RT1305 177 imply SND_SOC_RT1308 178 imply SND_SOC_RT5514 179 imply SND_SOC_RT5616 180 imply SND_SOC_RT5631 181 imply SND_SOC_RT5640 182 imply SND_SOC_RT5645 183 imply SND_SOC_RT5651 184 imply SND_SOC_RT5659 185 imply SND_SOC_RT5660 186 imply SND_SOC_RT5663 187 imply SND_SOC_RT5665 188 imply SND_SOC_RT5668 189 imply SND_SOC_RT5670 190 imply SND_SOC_RT5677 191 imply SND_SOC_RT5682_I2C 192 imply SND_SOC_RT5682_SDW 193 imply SND_SOC_RT5682S 194 imply SND_SOC_RT700_SDW 195 imply SND_SOC_RT711_SDW 196 imply SND_SOC_RT711_SDCA_SDW 197 imply SND_SOC_RT715_SDW 198 imply SND_SOC_RT715_SDCA_SDW 199 imply SND_SOC_RT1308_SDW 200 imply SND_SOC_RT1316_SDW 201 imply SND_SOC_RT9120 202 imply SND_SOC_SDW_MOCKUP 203 imply SND_SOC_SGTL5000 204 imply SND_SOC_SI476X 205 imply SND_SOC_SIMPLE_AMPLIFIER 206 imply SND_SOC_SIMPLE_MUX 207 imply SND_SOC_SPDIF 208 imply SND_SOC_SSM2305 209 imply SND_SOC_SSM2518 210 imply SND_SOC_SSM2602_SPI 211 imply SND_SOC_SSM2602_I2C 212 imply SND_SOC_SSM4567 213 imply SND_SOC_STA32X 214 imply SND_SOC_STA350 215 imply SND_SOC_STA529 216 imply SND_SOC_STAC9766 217 imply SND_SOC_STI_SAS 218 imply SND_SOC_TAS2552 219 imply SND_SOC_TAS2562 220 imply SND_SOC_TAS2764 221 imply SND_SOC_TAS2770 222 imply SND_SOC_TAS5086 223 imply SND_SOC_TAS571X 224 imply SND_SOC_TAS5720 225 imply SND_SOC_TAS6424 226 imply SND_SOC_TDA7419 227 imply SND_SOC_TFA9879 228 imply SND_SOC_TFA989X 229 imply SND_SOC_TLV320ADC3XXX 230 imply SND_SOC_TLV320ADCX140 231 imply SND_SOC_TLV320AIC23_I2C 232 imply SND_SOC_TLV320AIC23_SPI 233 imply SND_SOC_TLV320AIC26 234 imply SND_SOC_TLV320AIC31XX 235 imply SND_SOC_TLV320AIC32X4_I2C 236 imply SND_SOC_TLV320AIC32X4_SPI 237 imply SND_SOC_TLV320AIC3X_I2C 238 imply SND_SOC_TLV320AIC3X_SPI 239 imply SND_SOC_TPA6130A2 240 imply SND_SOC_TLV320DAC33 241 imply SND_SOC_TSCS42XX 242 imply SND_SOC_TSCS454 243 imply SND_SOC_TS3A227E 244 imply SND_SOC_TWL4030 245 imply SND_SOC_TWL6040 246 imply SND_SOC_UDA1334 247 imply SND_SOC_UDA134X 248 imply SND_SOC_UDA1380 249 imply SND_SOC_WCD9335 250 imply SND_SOC_WCD934X 251 imply SND_SOC_WCD938X_SDW 252 imply SND_SOC_LPASS_MACRO_COMMON 253 imply SND_SOC_LPASS_RX_MACRO 254 imply SND_SOC_LPASS_TX_MACRO 255 imply SND_SOC_WL1273 256 imply SND_SOC_WM0010 257 imply SND_SOC_WM1250_EV1 258 imply SND_SOC_WM2000 259 imply SND_SOC_WM2200 260 imply SND_SOC_WM5100 261 imply SND_SOC_WM5102 262 imply SND_SOC_WM5110 263 imply SND_SOC_WM8350 264 imply SND_SOC_WM8400 265 imply SND_SOC_WM8510 266 imply SND_SOC_WM8523 267 imply SND_SOC_WM8524 268 imply SND_SOC_WM8580 269 imply SND_SOC_WM8711 270 imply SND_SOC_WM8727 271 imply SND_SOC_WM8728 272 imply SND_SOC_WM8731_I2C 273 imply SND_SOC_WM8731_SPI 274 imply SND_SOC_WM8737 275 imply SND_SOC_WM8741 276 imply SND_SOC_WM8750 277 imply SND_SOC_WM8753 278 imply SND_SOC_WM8770 279 imply SND_SOC_WM8776 280 imply SND_SOC_WM8782 281 imply SND_SOC_WM8804_I2C 282 imply SND_SOC_WM8804_SPI 283 imply SND_SOC_WM8900 284 imply SND_SOC_WM8903 285 imply SND_SOC_WM8904 286 imply SND_SOC_WM8940 287 imply SND_SOC_WM8955 288 imply SND_SOC_WM8960 289 imply SND_SOC_WM8961 290 imply SND_SOC_WM8962 291 imply SND_SOC_WM8971 292 imply SND_SOC_WM8974 293 imply SND_SOC_WM8978 294 imply SND_SOC_WM8983 295 imply SND_SOC_WM8985 296 imply SND_SOC_WM8988 297 imply SND_SOC_WM8990 298 imply SND_SOC_WM8991 299 imply SND_SOC_WM8993 300 imply SND_SOC_WM8994 301 imply SND_SOC_WM8995 302 imply SND_SOC_WM8996 303 imply SND_SOC_WM8997 304 imply SND_SOC_WM8998 305 imply SND_SOC_WM9081 306 imply SND_SOC_WM9090 307 imply SND_SOC_WM9705 308 imply SND_SOC_WM9712 309 imply SND_SOC_WM9713 310 imply SND_SOC_WSA881X 311 imply SND_SOC_ZL38060 312 help 313 Normally ASoC codec drivers are only built if a machine driver which 314 uses them is also built since they are only usable with a machine 315 driver. Selecting this option will allow these drivers to be built 316 without an explicit machine driver for test and development purposes. 317 318 Support for the bus types used to access the codecs to be built must 319 be selected separately. 320 321 If unsure select "N". 322 323config SND_SOC_88PM860X 324 tristate 325 depends on MFD_88PM860X 326 327config SND_SOC_ARIZONA 328 tristate 329 default y if SND_SOC_CS47L24=y 330 default y if SND_SOC_WM5102=y 331 default y if SND_SOC_WM5110=y 332 default y if SND_SOC_WM8997=y 333 default y if SND_SOC_WM8998=y 334 default m if SND_SOC_CS47L24=m 335 default m if SND_SOC_WM5102=m 336 default m if SND_SOC_WM5110=m 337 default m if SND_SOC_WM8997=m 338 default m if SND_SOC_WM8998=m 339 340config SND_SOC_WM_HUBS 341 tristate 342 default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y 343 default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m 344 345config SND_SOC_WM_ADSP 346 tristate 347 select CS_DSP 348 select SND_SOC_COMPRESS 349 default y if SND_SOC_MADERA=y 350 default y if SND_SOC_CS47L24=y 351 default y if SND_SOC_WM5102=y 352 default y if SND_SOC_WM5110=y 353 default y if SND_SOC_WM2200=y 354 default y if SND_SOC_CS35L41_SPI=y 355 default y if SND_SOC_CS35L41_I2C=y 356 default m if SND_SOC_MADERA=m 357 default m if SND_SOC_CS47L24=m 358 default m if SND_SOC_WM5102=m 359 default m if SND_SOC_WM5110=m 360 default m if SND_SOC_WM2200=m 361 default m if SND_SOC_CS35L41_SPI=m 362 default m if SND_SOC_CS35L41_I2C=m 363 364config SND_SOC_AB8500_CODEC 365 tristate 366 depends on ABX500_CORE 367 368config SND_SOC_AC97_CODEC 369 tristate "Build generic ASoC AC97 CODEC driver" 370 select SND_AC97_CODEC 371 select SND_SOC_AC97_BUS 372 373config SND_SOC_AD1836 374 tristate 375 depends on SPI_MASTER 376 377config SND_SOC_AD193X 378 tristate 379 380config SND_SOC_AD193X_SPI 381 tristate 382 depends on SPI_MASTER 383 select SND_SOC_AD193X 384 385config SND_SOC_AD193X_I2C 386 tristate 387 depends on I2C 388 select SND_SOC_AD193X 389 390config SND_SOC_AD1980 391 tristate 392 depends on SND_SOC_AC97_BUS 393 select REGMAP_AC97 394 395config SND_SOC_AD73311 396 tristate 397 398config SND_SOC_ADAU_UTILS 399 tristate 400 401config SND_SOC_ADAU1372 402 tristate 403 select SND_SOC_ADAU_UTILS 404 405config SND_SOC_ADAU1372_I2C 406 tristate "Analog Devices ADAU1372 CODEC (I2C)" 407 depends on I2C 408 select SND_SOC_ADAU1372 409 select REGMAP_I2C 410 411config SND_SOC_ADAU1372_SPI 412 tristate "Analog Devices ADAU1372 CODEC (SPI)" 413 depends on SPI 414 select SND_SOC_ADAU1372 415 select REGMAP_SPI 416 417config SND_SOC_ADAU1373 418 tristate 419 depends on I2C 420 select SND_SOC_ADAU_UTILS 421 422config SND_SOC_ADAU1701 423 tristate "Analog Devices ADAU1701 CODEC" 424 depends on I2C 425 select SND_SOC_SIGMADSP_I2C 426 427config SND_SOC_ADAU17X1 428 tristate 429 select SND_SOC_SIGMADSP_REGMAP 430 select SND_SOC_ADAU_UTILS 431 432config SND_SOC_ADAU1761 433 tristate 434 select SND_SOC_ADAU17X1 435 436config SND_SOC_ADAU1761_I2C 437 tristate "Analog Devices AU1761 CODEC - I2C" 438 depends on I2C 439 select SND_SOC_ADAU1761 440 select REGMAP_I2C 441 442config SND_SOC_ADAU1761_SPI 443 tristate "Analog Devices AU1761 CODEC - SPI" 444 depends on SPI 445 select SND_SOC_ADAU1761 446 select REGMAP_SPI 447 448config SND_SOC_ADAU1781 449 select SND_SOC_ADAU17X1 450 tristate 451 452config SND_SOC_ADAU1781_I2C 453 tristate 454 depends on I2C 455 select SND_SOC_ADAU1781 456 select REGMAP_I2C 457 458config SND_SOC_ADAU1781_SPI 459 tristate 460 depends on SPI_MASTER 461 select SND_SOC_ADAU1781 462 select REGMAP_SPI 463 464config SND_SOC_ADAU1977 465 tristate 466 467config SND_SOC_ADAU1977_SPI 468 tristate 469 depends on SPI_MASTER 470 select SND_SOC_ADAU1977 471 select REGMAP_SPI 472 473config SND_SOC_ADAU1977_I2C 474 tristate 475 depends on I2C 476 select SND_SOC_ADAU1977 477 select REGMAP_I2C 478 479config SND_SOC_ADAU7002 480 tristate "Analog Devices ADAU7002 Stereo PDM-to-I2S/TDM Converter" 481 482config SND_SOC_ADAU7118 483 tristate 484 485config SND_SOC_ADAU7118_HW 486 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - HW Mode" 487 select SND_SOC_ADAU7118 488 help 489 Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM 490 Converter. In this mode, the device works in standalone mode which 491 means that there is no bus to communicate with it. Stereo mode is not 492 supported in this mode. 493 494 To compile this driver as a module, choose M here: the module 495 will be called snd-soc-adau7118-hw. 496 497config SND_SOC_ADAU7118_I2C 498 tristate "Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM Converter - I2C" 499 depends on I2C 500 select SND_SOC_ADAU7118 501 select REGMAP_I2C 502 help 503 Enable support for the Analog Devices ADAU7118 8 Channel PDM-to-I2S/TDM 504 Converter over I2C. This gives full support over the device. 505 506 To compile this driver as a module, choose M here: the module 507 will be called snd-soc-adau7118-i2c. 508 509config SND_SOC_ADAV80X 510 tristate 511 512config SND_SOC_ADAV801 513 tristate 514 depends on SPI_MASTER 515 select SND_SOC_ADAV80X 516 517config SND_SOC_ADAV803 518 tristate 519 depends on I2C 520 select SND_SOC_ADAV80X 521 522config SND_SOC_ADS117X 523 tristate 524 525config SND_SOC_AK4104 526 tristate "AKM AK4104 CODEC" 527 depends on SPI_MASTER 528 529config SND_SOC_AK4118 530 tristate "AKM AK4118 CODEC" 531 depends on I2C 532 select REGMAP_I2C 533 534config SND_SOC_AK4375 535 tristate "AKM AK4375 CODEC" 536 depends on I2C 537 select REGMAP_I2C 538 help 539 Enable support for the Asahi-Kasei AK4375 codec. 540 541 To compile this driver as a module, choose M here: the module 542 will be called snd-soc-ak4375. 543 544config SND_SOC_AK4458 545 tristate "AKM AK4458 CODEC" 546 depends on I2C 547 select REGMAP_I2C 548 549config SND_SOC_AK4535 550 tristate 551 depends on I2C 552 553config SND_SOC_AK4554 554 tristate "AKM AK4554 CODEC" 555 556config SND_SOC_AK4613 557 tristate "AKM AK4613 CODEC" 558 depends on I2C 559 560config SND_SOC_AK4641 561 tristate 562 depends on I2C 563 564config SND_SOC_AK4642 565 tristate "AKM AK4642 CODEC" 566 depends on I2C 567 568config SND_SOC_AK4671 569 tristate 570 depends on I2C 571 572config SND_SOC_AK5386 573 tristate "AKM AK5638 CODEC" 574 575config SND_SOC_AK5558 576 tristate "AKM AK5558 CODEC" 577 depends on I2C 578 select REGMAP_I2C 579 580config SND_SOC_ALC5623 581 tristate "Realtek ALC5623 CODEC" 582 depends on I2C 583 584config SND_SOC_ALC5632 585 tristate 586 depends on I2C 587 588config SND_SOC_AW8738 589 tristate "Awinic AW8738 Audio Amplifier" 590 select GPIOLIB 591 help 592 Enable support for the Awinic AW8738 audio amplifier (or similar). 593 The driver supports simple audio amplifiers similar to 594 SND_SOC_SIMPLE_AMPLIFIER, but additionally allows setting the 595 operation mode using the Awinic-specific one-wire pulse control. 596 597config SND_SOC_BD28623 598 tristate "ROHM BD28623 CODEC" 599 help 600 Enable support for ROHM BD28623MUV Class D speaker amplifier. 601 This codec does not have any control buses such as I2C, it 602 detect format of I2S automatically. 603 604config SND_SOC_BT_SCO 605 tristate "Dummy BT SCO codec driver" 606 607config SND_SOC_CPCAP 608 tristate "Motorola CPCAP codec" 609 depends on MFD_CPCAP 610 611config SND_SOC_CQ0093VC 612 tristate 613 614config SND_SOC_CROS_EC_CODEC 615 tristate "codec driver for ChromeOS EC" 616 depends on CROS_EC 617 select CRYPTO 618 select CRYPTO_LIB_SHA256 619 help 620 If you say yes here you will get support for the 621 ChromeOS Embedded Controller's Audio Codec. 622 623config SND_SOC_CS35L32 624 tristate "Cirrus Logic CS35L32 CODEC" 625 depends on I2C 626 627config SND_SOC_CS35L33 628 tristate "Cirrus Logic CS35L33 CODEC" 629 depends on I2C 630 631config SND_SOC_CS35L34 632 tristate "Cirrus Logic CS35L34 CODEC" 633 depends on I2C 634 635config SND_SOC_CS35L35 636 tristate "Cirrus Logic CS35L35 CODEC" 637 depends on I2C 638 639config SND_SOC_CS35L36 640 tristate "Cirrus Logic CS35L36 CODEC" 641 depends on I2C 642 643config SND_SOC_CS35L41_LIB 644 tristate 645 646config SND_SOC_CS35L41 647 tristate 648 649config SND_SOC_CS35L41_SPI 650 tristate "Cirrus Logic CS35L41 CODEC (SPI)" 651 depends on SPI_MASTER 652 select SND_SOC_CS35L41_LIB 653 select SND_SOC_CS35L41 654 select REGMAP_SPI 655 656config SND_SOC_CS35L41_I2C 657 tristate "Cirrus Logic CS35L41 CODEC (I2C)" 658 depends on I2C 659 select SND_SOC_CS35L41_LIB 660 select SND_SOC_CS35L41 661 select REGMAP_I2C 662 663config SND_SOC_CS35L45_TABLES 664 tristate 665 666config SND_SOC_CS35L45 667 tristate 668 669config SND_SOC_CS35L45_SPI 670 tristate "Cirrus Logic CS35L45 CODEC (SPI)" 671 depends on SPI_MASTER 672 select REGMAP 673 select REGMAP_SPI 674 select SND_SOC_CS35L45_TABLES 675 select SND_SOC_CS35L45 676 help 677 Enable support for Cirrus Logic CS35L45 smart speaker amplifier 678 with SPI control. 679 680config SND_SOC_CS35L45_I2C 681 tristate "Cirrus Logic CS35L45 CODEC (I2C)" 682 depends on I2C 683 select REGMAP 684 select REGMAP_I2C 685 select SND_SOC_CS35L45_TABLES 686 select SND_SOC_CS35L45 687 help 688 Enable support for Cirrus Logic CS35L45 smart speaker amplifier 689 with I2C control. 690 691config SND_SOC_CS42L42 692 tristate "Cirrus Logic CS42L42 CODEC" 693 depends on I2C 694 695config SND_SOC_CS42L51 696 tristate 697 698config SND_SOC_CS42L51_I2C 699 tristate "Cirrus Logic CS42L51 CODEC (I2C)" 700 depends on I2C 701 select SND_SOC_CS42L51 702 703config SND_SOC_CS42L52 704 tristate "Cirrus Logic CS42L52 CODEC" 705 depends on I2C && INPUT 706 707config SND_SOC_CS42L56 708 tristate "Cirrus Logic CS42L56 CODEC" 709 depends on I2C && INPUT 710 711config SND_SOC_CS42L73 712 tristate "Cirrus Logic CS42L73 CODEC" 713 depends on I2C 714 715config SND_SOC_CS4234 716 tristate "Cirrus Logic CS4234 CODEC" 717 depends on I2C 718 select REGMAP_I2C 719 720config SND_SOC_CS4265 721 tristate "Cirrus Logic CS4265 CODEC" 722 depends on I2C 723 select REGMAP_I2C 724 725# Cirrus Logic CS4270 Codec 726config SND_SOC_CS4270 727 tristate "Cirrus Logic CS4270 CODEC" 728 depends on I2C 729 730# Cirrus Logic CS4270 Codec VD = 3.3V Errata 731# Select if you are affected by the errata where the part will not function 732# if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will 733# not select any sample rates that require MCLK to be divided by 1.5. 734config SND_SOC_CS4270_VD33_ERRATA 735 bool 736 depends on SND_SOC_CS4270 737 738config SND_SOC_CS4271 739 tristate 740 741config SND_SOC_CS4271_I2C 742 tristate "Cirrus Logic CS4271 CODEC (I2C)" 743 depends on I2C 744 select SND_SOC_CS4271 745 select REGMAP_I2C 746 747config SND_SOC_CS4271_SPI 748 tristate "Cirrus Logic CS4271 CODEC (SPI)" 749 depends on SPI_MASTER 750 select SND_SOC_CS4271 751 select REGMAP_SPI 752 753config SND_SOC_CS42XX8 754 tristate 755 756config SND_SOC_CS42XX8_I2C 757 tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)" 758 depends on I2C 759 select SND_SOC_CS42XX8 760 select REGMAP_I2C 761 762# Cirrus Logic CS43130 HiFi DAC 763config SND_SOC_CS43130 764 tristate "Cirrus Logic CS43130 CODEC" 765 depends on I2C 766 767config SND_SOC_CS4341 768 tristate "Cirrus Logic CS4341 CODEC" 769 depends on SND_SOC_I2C_AND_SPI 770 select REGMAP_I2C if I2C 771 select REGMAP_SPI if SPI_MASTER 772 773# Cirrus Logic CS4349 HiFi DAC 774config SND_SOC_CS4349 775 tristate "Cirrus Logic CS4349 CODEC" 776 depends on I2C 777 778config SND_SOC_CS47L15 779 tristate 780 depends on MFD_CS47L15 781 782config SND_SOC_CS47L24 783 tristate 784 depends on MFD_CS47L24 && MFD_ARIZONA 785 786config SND_SOC_CS47L35 787 tristate 788 depends on MFD_CS47L35 789 790config SND_SOC_CS47L85 791 tristate 792 depends on MFD_CS47L85 793 794config SND_SOC_CS47L90 795 tristate 796 depends on MFD_CS47L90 797 798config SND_SOC_CS47L92 799 tristate 800 depends on MFD_CS47L92 801 802# Cirrus Logic Quad-Channel ADC 803config SND_SOC_CS53L30 804 tristate "Cirrus Logic CS53L30 CODEC" 805 depends on I2C 806 807config SND_SOC_CX20442 808 tristate 809 depends on TTY 810 811config SND_SOC_CX2072X 812 tristate "Conexant CX2072X CODEC" 813 depends on I2C 814 help 815 Enable support for Conexant CX20721 and CX20723 codec chips. 816 817config SND_SOC_JZ4740_CODEC 818 depends on MACH_INGENIC || COMPILE_TEST 819 depends on OF 820 select REGMAP_MMIO 821 tristate "Ingenic JZ4740 internal CODEC" 822 help 823 Enable support for the internal CODEC found in the JZ4740 SoC 824 from Ingenic. 825 826 This driver can also be built as a module. If so, the module 827 will be called snd-soc-jz4740-codec. 828 829config SND_SOC_JZ4725B_CODEC 830 depends on MACH_INGENIC || COMPILE_TEST 831 depends on OF 832 select REGMAP 833 tristate "Ingenic JZ4725B internal CODEC" 834 help 835 Enable support for the internal CODEC found in the JZ4725B SoC 836 from Ingenic. 837 838 This driver can also be built as a module. If so, the module 839 will be called snd-soc-jz4725b-codec. 840 841config SND_SOC_JZ4760_CODEC 842 depends on MACH_INGENIC || COMPILE_TEST 843 depends on OF 844 select REGMAP 845 tristate "Ingenic JZ4760 internal CODEC" 846 help 847 Enable support for the internal CODEC found in the JZ4760 SoC 848 from Ingenic. 849 850 This driver can also be built as a module. If so, the module 851 will be called snd-soc-jz4760-codec. 852 853config SND_SOC_JZ4770_CODEC 854 depends on MACH_INGENIC || COMPILE_TEST 855 depends on OF 856 select REGMAP 857 tristate "Ingenic JZ4770 internal CODEC" 858 help 859 Enable support for the internal CODEC found in the JZ4770 SoC 860 from Ingenic. 861 862 This driver can also be built as a module. If so, the module 863 will be called snd-soc-jz4770-codec. 864 865config SND_SOC_L3 866 tristate 867 868config SND_SOC_DA7210 869 tristate 870 depends on SND_SOC_I2C_AND_SPI 871 872config SND_SOC_DA7213 873 tristate "Dialog DA7213 CODEC" 874 depends on I2C 875 876config SND_SOC_DA7218 877 tristate 878 depends on I2C 879 880config SND_SOC_DA7219 881 tristate 882 depends on I2C 883 884config SND_SOC_DA732X 885 tristate 886 depends on I2C 887 888config SND_SOC_DA9055 889 tristate 890 depends on I2C 891 892config SND_SOC_DMIC 893 tristate "Generic Digital Microphone CODEC" 894 help 895 Enable support for the Generic Digital Microphone CODEC. 896 Select this if your sound card has DMICs. 897 898config SND_SOC_HDMI_CODEC 899 tristate 900 select SND_PCM_ELD 901 select SND_PCM_IEC958 902 select HDMI 903 904config SND_SOC_ES7134 905 tristate "Everest Semi ES7134 CODEC" 906 907config SND_SOC_ES7241 908 tristate "Everest Semi ES7241 CODEC" 909 910config SND_SOC_ES8316 911 tristate "Everest Semi ES8316 CODEC" 912 depends on I2C 913 914config SND_SOC_ES8328 915 tristate 916 917config SND_SOC_ES8328_I2C 918 tristate "Everest Semi ES8328 CODEC (I2C)" 919 depends on I2C 920 select SND_SOC_ES8328 921 922config SND_SOC_ES8328_SPI 923 tristate "Everest Semi ES8328 CODEC (SPI)" 924 depends on SPI_MASTER 925 select SND_SOC_ES8328 926 927config SND_SOC_GTM601 928 tristate 'GTM601 UMTS modem audio codec' 929 930config SND_SOC_HDAC_HDMI 931 tristate 932 select SND_HDA_EXT_CORE 933 select SND_PCM_ELD 934 select HDMI 935 936config SND_SOC_HDAC_HDA 937 tristate 938 select SND_HDA 939 940config SND_SOC_ICS43432 941 tristate "ICS43423 and compatible i2s microphones" 942 943config SND_SOC_INNO_RK3036 944 tristate "Inno codec driver for RK3036 SoC" 945 select REGMAP_MMIO 946 947config SND_SOC_ISABELLE 948 tristate 949 depends on I2C 950 951config SND_SOC_LM49453 952 tristate 953 depends on I2C 954 955config SND_SOC_LOCHNAGAR_SC 956 tristate "Lochnagar Sound Card" 957 depends on MFD_LOCHNAGAR 958 help 959 This driver support the sound card functionality of the Cirrus 960 Logic Lochnagar audio development board. 961 962config SND_SOC_MADERA 963 tristate 964 default y if SND_SOC_CS47L15=y 965 default y if SND_SOC_CS47L35=y 966 default y if SND_SOC_CS47L85=y 967 default y if SND_SOC_CS47L90=y 968 default y if SND_SOC_CS47L92=y 969 default m if SND_SOC_CS47L15=m 970 default m if SND_SOC_CS47L35=m 971 default m if SND_SOC_CS47L85=m 972 default m if SND_SOC_CS47L90=m 973 default m if SND_SOC_CS47L92=m 974 975config SND_SOC_MAX98088 976 tristate "Maxim MAX98088/9 Low-Power, Stereo Audio Codec" 977 depends on I2C 978 979config SND_SOC_MAX98090 980 tristate 981 depends on I2C 982 983config SND_SOC_MAX98095 984 tristate 985 depends on I2C 986 987config SND_SOC_MAX98357A 988 tristate "Maxim MAX98357A CODEC" 989 990config SND_SOC_MAX98371 991 tristate 992 depends on I2C 993 994config SND_SOC_MAX98504 995 tristate "Maxim MAX98504 speaker amplifier" 996 depends on I2C 997 998config SND_SOC_MAX9867 999 tristate "Maxim MAX9867 CODEC" 1000 depends on I2C 1001 1002config SND_SOC_MAX98925 1003 tristate 1004 depends on I2C 1005 1006config SND_SOC_MAX98926 1007 tristate 1008 depends on I2C 1009 1010config SND_SOC_MAX98927 1011 tristate "Maxim Integrated MAX98927 Speaker Amplifier" 1012 depends on I2C 1013 1014config SND_SOC_MAX98520 1015 tristate "Maxim Integrated MAX98520 Speaker Amplifier" 1016 depends on I2C 1017 help 1018 Enable support for Maxim Integrated MAX98520 audio 1019 amplifier, which implements a tripler charge pump 1020 based boost converter and supports sample rates of 1021 8KHz to 192KHz. 1022 1023 To compile this driver as a module, choose M here. 1024 1025config SND_SOC_MAX98373 1026 tristate 1027 1028config SND_SOC_MAX98373_I2C 1029 tristate "Maxim Integrated MAX98373 Speaker Amplifier" 1030 depends on I2C 1031 select SND_SOC_MAX98373 1032 1033config SND_SOC_MAX98373_SDW 1034 tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW" 1035 depends on SOUNDWIRE 1036 select SND_SOC_MAX98373 1037 select REGMAP_SOUNDWIRE 1038 help 1039 Enable support for Maxim Integrated MAX98373 Soundwire 1040 amplifier. MAX98373 supports either the MIPI SoundWire 1041 compatible interface for audio and control data, or 1042 the PCM interface for audio data and a standard I2C 1043 interface for control data. Select this if MAX98373 is 1044 connected via soundwire. 1045 1046config SND_SOC_MAX98390 1047 tristate "Maxim Integrated MAX98390 Speaker Amplifier" 1048 depends on I2C 1049 1050config SND_SOC_MAX98396 1051 tristate "Analog Devices MAX98396 Speaker Amplifier" 1052 depends on I2C 1053 help 1054 Enable support for Analog Devices MAX98396 audio 1055 amplifier. The device provides a PCM interface for 1056 audio data and a standard I2C interface for control 1057 data communication. 1058 1059config SND_SOC_MAX9850 1060 tristate 1061 depends on I2C 1062 1063config SND_SOC_MAX9860 1064 tristate "Maxim MAX9860 Mono Audio Voice Codec" 1065 depends on I2C 1066 select REGMAP_I2C 1067 1068config SND_SOC_MSM8916_WCD_ANALOG 1069 tristate "Qualcomm MSM8916 WCD Analog Codec" 1070 depends on SPMI || COMPILE_TEST 1071 1072config SND_SOC_MSM8916_WCD_DIGITAL 1073 tristate "Qualcomm MSM8916 WCD DIGITAL Codec" 1074 select REGMAP_MMIO 1075 1076config SND_SOC_PCM1681 1077 tristate "Texas Instruments PCM1681 CODEC" 1078 depends on I2C 1079 1080config SND_SOC_PCM1789 1081 tristate 1082 1083config SND_SOC_PCM1789_I2C 1084 tristate "Texas Instruments PCM1789 CODEC (I2C)" 1085 depends on I2C 1086 select SND_SOC_PCM1789 1087 help 1088 Enable support for Texas Instruments PCM1789 CODEC. 1089 Select this if your PCM1789 is connected via an I2C bus. 1090 1091config SND_SOC_PCM179X 1092 tristate 1093 1094config SND_SOC_PCM179X_I2C 1095 tristate "Texas Instruments PCM179X CODEC (I2C)" 1096 depends on I2C 1097 select SND_SOC_PCM179X 1098 help 1099 Enable support for Texas Instruments PCM179x CODEC. 1100 Select this if your PCM179x is connected via an I2C bus. 1101 1102config SND_SOC_PCM179X_SPI 1103 tristate "Texas Instruments PCM179X CODEC (SPI)" 1104 depends on SPI_MASTER 1105 select SND_SOC_PCM179X 1106 help 1107 Enable support for Texas Instruments PCM179x CODEC. 1108 Select this if your PCM179x is connected via an SPI bus. 1109 1110config SND_SOC_PCM186X 1111 tristate 1112 1113config SND_SOC_PCM186X_I2C 1114 tristate "Texas Instruments PCM186x CODECs - I2C" 1115 depends on I2C 1116 select SND_SOC_PCM186X 1117 select REGMAP_I2C 1118 1119config SND_SOC_PCM186X_SPI 1120 tristate "Texas Instruments PCM186x CODECs - SPI" 1121 depends on SPI_MASTER 1122 select SND_SOC_PCM186X 1123 select REGMAP_SPI 1124 1125config SND_SOC_PCM3008 1126 tristate 1127 1128config SND_SOC_PCM3060 1129 tristate 1130 1131config SND_SOC_PCM3060_I2C 1132 tristate "Texas Instruments PCM3060 CODEC - I2C" 1133 depends on I2C 1134 select SND_SOC_PCM3060 1135 select REGMAP_I2C 1136 1137config SND_SOC_PCM3060_SPI 1138 tristate "Texas Instruments PCM3060 CODEC - SPI" 1139 depends on SPI_MASTER 1140 select SND_SOC_PCM3060 1141 select REGMAP_SPI 1142 1143config SND_SOC_PCM3168A 1144 tristate 1145 1146config SND_SOC_PCM3168A_I2C 1147 tristate "Texas Instruments PCM3168A CODEC - I2C" 1148 depends on I2C 1149 select SND_SOC_PCM3168A 1150 select REGMAP_I2C 1151 1152config SND_SOC_PCM3168A_SPI 1153 tristate "Texas Instruments PCM3168A CODEC - SPI" 1154 depends on SPI_MASTER 1155 select SND_SOC_PCM3168A 1156 select REGMAP_SPI 1157 1158config SND_SOC_PCM5102A 1159 tristate "Texas Instruments PCM5102A CODEC" 1160 1161config SND_SOC_PCM512x 1162 tristate 1163 1164config SND_SOC_PCM512x_I2C 1165 tristate "Texas Instruments PCM512x CODECs - I2C" 1166 depends on I2C 1167 select SND_SOC_PCM512x 1168 select REGMAP_I2C 1169 1170config SND_SOC_PCM512x_SPI 1171 tristate "Texas Instruments PCM512x CODECs - SPI" 1172 depends on SPI_MASTER 1173 select SND_SOC_PCM512x 1174 select REGMAP_SPI 1175 1176config SND_SOC_RK3328 1177 tristate "Rockchip RK3328 audio CODEC" 1178 select REGMAP_MMIO 1179 1180config SND_SOC_RK817 1181 tristate "Rockchip RK817 audio CODEC" 1182 depends on MFD_RK808 1183 select REGMAP_I2C 1184 1185config SND_SOC_RL6231 1186 tristate 1187 default y if SND_SOC_RT5514=y 1188 default y if SND_SOC_RT5616=y 1189 default y if SND_SOC_RT5640=y 1190 default y if SND_SOC_RT5645=y 1191 default y if SND_SOC_RT5651=y 1192 default y if SND_SOC_RT5659=y 1193 default y if SND_SOC_RT5660=y 1194 default y if SND_SOC_RT5663=y 1195 default y if SND_SOC_RT5665=y 1196 default y if SND_SOC_RT5668=y 1197 default y if SND_SOC_RT5670=y 1198 default y if SND_SOC_RT5677=y 1199 default y if SND_SOC_RT5682=y 1200 default y if SND_SOC_RT1011=y 1201 default y if SND_SOC_RT1015=y 1202 default y if SND_SOC_RT1015P=y 1203 default y if SND_SOC_RT1019=y 1204 default y if SND_SOC_RT1305=y 1205 default y if SND_SOC_RT1308=y 1206 default m if SND_SOC_RT5514=m 1207 default m if SND_SOC_RT5616=m 1208 default m if SND_SOC_RT5640=m 1209 default m if SND_SOC_RT5645=m 1210 default m if SND_SOC_RT5651=m 1211 default m if SND_SOC_RT5659=m 1212 default m if SND_SOC_RT5660=m 1213 default m if SND_SOC_RT5663=m 1214 default m if SND_SOC_RT5665=m 1215 default m if SND_SOC_RT5668=m 1216 default m if SND_SOC_RT5670=m 1217 default m if SND_SOC_RT5677=m 1218 default m if SND_SOC_RT5682=m 1219 default m if SND_SOC_RT1011=m 1220 default m if SND_SOC_RT1015=m 1221 default m if SND_SOC_RT1015P=m 1222 default m if SND_SOC_RT1019=m 1223 default m if SND_SOC_RT1305=m 1224 default m if SND_SOC_RT1308=m 1225 1226config SND_SOC_RL6347A 1227 tristate 1228 default y if SND_SOC_RT274=y 1229 default y if SND_SOC_RT286=y 1230 default y if SND_SOC_RT298=y 1231 default m if SND_SOC_RT274=m 1232 default m if SND_SOC_RT286=m 1233 default m if SND_SOC_RT298=m 1234 1235config SND_SOC_RT274 1236 tristate 1237 depends on I2C 1238 1239config SND_SOC_RT286 1240 tristate 1241 depends on I2C 1242 1243config SND_SOC_RT298 1244 tristate 1245 depends on I2C 1246 1247config SND_SOC_RT1011 1248 tristate 1249 depends on I2C 1250 1251config SND_SOC_RT1015 1252 tristate 1253 depends on I2C 1254 1255config SND_SOC_RT1015P 1256 tristate 1257 1258config SND_SOC_RT1016 1259 tristate 1260 depends on I2C 1261 1262config SND_SOC_RT1019 1263 tristate 1264 depends on I2C 1265 1266config SND_SOC_RT1305 1267 tristate 1268 depends on I2C 1269 1270config SND_SOC_RT1308 1271 tristate 1272 depends on I2C 1273 1274config SND_SOC_RT1308_SDW 1275 tristate "Realtek RT1308 Codec - SDW" 1276 depends on I2C && SOUNDWIRE 1277 select REGMAP_SOUNDWIRE 1278 1279config SND_SOC_RT1316_SDW 1280 tristate "Realtek RT1316 Codec - SDW" 1281 depends on SOUNDWIRE 1282 select REGMAP_SOUNDWIRE 1283 1284config SND_SOC_RT5514 1285 tristate 1286 depends on I2C 1287 1288config SND_SOC_RT5514_SPI 1289 tristate 1290 depends on SPI_MASTER 1291 1292config SND_SOC_RT5514_SPI_BUILTIN 1293 bool # force RT5514_SPI to be built-in to avoid link errors 1294 default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m 1295 1296config SND_SOC_RT5616 1297 tristate "Realtek RT5616 CODEC" 1298 depends on I2C 1299 1300config SND_SOC_RT5631 1301 tristate "Realtek ALC5631/RT5631 CODEC" 1302 depends on I2C 1303 1304config SND_SOC_RT5640 1305 tristate "Realtek RT5640/RT5639 Codec" 1306 depends on I2C 1307 1308config SND_SOC_RT5645 1309 tristate 1310 depends on I2C 1311 1312config SND_SOC_RT5651 1313 tristate 1314 depends on I2C 1315 1316config SND_SOC_RT5659 1317 tristate "Realtek RT5658/RT5659 Codec" 1318 depends on I2C 1319 1320config SND_SOC_RT5660 1321 tristate 1322 depends on I2C 1323 1324config SND_SOC_RT5663 1325 tristate 1326 depends on I2C 1327 1328config SND_SOC_RT5665 1329 tristate 1330 depends on I2C 1331 1332config SND_SOC_RT5668 1333 tristate 1334 depends on I2C 1335 1336config SND_SOC_RT5670 1337 tristate 1338 depends on I2C 1339 1340config SND_SOC_RT5677 1341 tristate 1342 depends on I2C 1343 select REGMAP_I2C 1344 select REGMAP_IRQ 1345 1346config SND_SOC_RT5677_SPI 1347 tristate 1348 default SND_SOC_RT5677 && SPI 1349 1350config SND_SOC_RT5682 1351 tristate 1352 1353config SND_SOC_RT5682_I2C 1354 tristate 1355 depends on I2C 1356 select SND_SOC_RT5682 1357 1358config SND_SOC_RT5682_SDW 1359 tristate "Realtek RT5682 Codec - SDW" 1360 depends on SOUNDWIRE 1361 select SND_SOC_RT5682 1362 select REGMAP_SOUNDWIRE 1363 1364config SND_SOC_RT5682S 1365 tristate 1366 depends on I2C 1367 1368config SND_SOC_RT700 1369 tristate 1370 1371config SND_SOC_RT700_SDW 1372 tristate "Realtek RT700 Codec - SDW" 1373 depends on SOUNDWIRE 1374 select SND_SOC_RT700 1375 select REGMAP_SOUNDWIRE 1376 1377config SND_SOC_RT711 1378 tristate 1379 1380config SND_SOC_RT711_SDW 1381 tristate "Realtek RT711 Codec - SDW" 1382 depends on SOUNDWIRE 1383 select SND_SOC_RT711 1384 select REGMAP_SOUNDWIRE 1385 1386config SND_SOC_RT711_SDCA_SDW 1387 tristate "Realtek RT711 SDCA Codec - SDW" 1388 depends on SOUNDWIRE 1389 select REGMAP_SOUNDWIRE 1390 select REGMAP_SOUNDWIRE_MBQ 1391 1392config SND_SOC_RT715 1393 tristate 1394 1395config SND_SOC_RT715_SDW 1396 tristate "Realtek RT715 Codec - SDW" 1397 depends on SOUNDWIRE 1398 select SND_SOC_RT715 1399 select REGMAP_SOUNDWIRE 1400 1401config SND_SOC_RT715_SDCA_SDW 1402 tristate "Realtek RT715 SDCA Codec - SDW" 1403 depends on SOUNDWIRE 1404 select REGMAP_SOUNDWIRE 1405 select REGMAP_SOUNDWIRE_MBQ 1406 1407config SND_SOC_RT9120 1408 tristate "Richtek RT9120 Stereo Class-D Amplifier" 1409 depends on I2C 1410 select REGMAP_I2C 1411 help 1412 Enable support for Richtek RT9120 20W, stereo, inductor-less, 1413 high-efficiency Class-D audio amplifier. 1414 1415config SND_SOC_SDW_MOCKUP 1416 tristate "SoundWire mockup codec" 1417 depends on EXPERT 1418 depends on SOUNDWIRE 1419 help 1420 This option enables a SoundWire mockup codec that does not drive the 1421 bus, take part in the command/command protocol or generate data on a 1422 Source port. 1423 This option is only intended to be used for tests on a device 1424 with a connector, in combination with a bus analyzer, or to test new 1425 topologies that differ from the actual hardware layout. 1426 This mockup device could be totally virtual but could also be a 1427 real physical one with one key restriction: it is not allowed by the 1428 SoundWire specification to be configured via a sideband mechanism and 1429 generate audio data for capture. However, nothing prevents such a 1430 peripheral device from snooping the bus. 1431 1432#Freescale sgtl5000 codec 1433config SND_SOC_SGTL5000 1434 tristate "Freescale SGTL5000 CODEC" 1435 depends on I2C 1436 1437config SND_SOC_SI476X 1438 tristate 1439 1440config SND_SOC_SIGMADSP 1441 tristate 1442 select CRC32 1443 1444config SND_SOC_SIGMADSP_I2C 1445 tristate 1446 select SND_SOC_SIGMADSP 1447 1448config SND_SOC_SIGMADSP_REGMAP 1449 tristate 1450 select SND_SOC_SIGMADSP 1451 1452config SND_SOC_SIMPLE_AMPLIFIER 1453 tristate "Simple Audio Amplifier" 1454 1455config SND_SOC_SIMPLE_MUX 1456 tristate "Simple Audio Mux" 1457 depends on GPIOLIB 1458 1459config SND_SOC_SPDIF 1460 tristate "S/PDIF CODEC" 1461 1462config SND_SOC_SSM2305 1463 tristate "Analog Devices SSM2305 Class-D Amplifier" 1464 help 1465 Enable support for Analog Devices SSM2305 filterless 1466 high-efficiency mono Class-D audio power amplifiers. 1467 1468config SND_SOC_SSM2518 1469 tristate "Analog Devices SSM2518 Class-D Amplifier" 1470 depends on I2C 1471 1472config SND_SOC_SSM2602 1473 tristate 1474 1475config SND_SOC_SSM2602_SPI 1476 tristate "Analog Devices SSM2602 CODEC - SPI" 1477 depends on SPI_MASTER 1478 select SND_SOC_SSM2602 1479 select REGMAP_SPI 1480 1481config SND_SOC_SSM2602_I2C 1482 tristate "Analog Devices SSM2602 CODEC - I2C" 1483 depends on I2C 1484 select SND_SOC_SSM2602 1485 select REGMAP_I2C 1486 1487config SND_SOC_SSM4567 1488 tristate "Analog Devices ssm4567 amplifier driver support" 1489 depends on I2C 1490 1491config SND_SOC_STA32X 1492 tristate "STA326, STA328 and STA329 speaker amplifier" 1493 depends on I2C 1494 select REGMAP_I2C 1495 1496config SND_SOC_STA350 1497 tristate "STA350 speaker amplifier" 1498 depends on I2C 1499 1500config SND_SOC_STA529 1501 tristate 1502 depends on I2C 1503 1504config SND_SOC_STAC9766 1505 tristate 1506 depends on SND_SOC_AC97_BUS 1507 1508config SND_SOC_STI_SAS 1509 tristate "codec Audio support for STI SAS codec" 1510 1511config SND_SOC_TAS2552 1512 tristate "Texas Instruments TAS2552 Mono Audio amplifier" 1513 depends on I2C 1514 1515config SND_SOC_TAS2562 1516 tristate "Texas Instruments TAS2562 Mono Audio amplifier" 1517 depends on I2C 1518 1519config SND_SOC_TAS2764 1520 tristate "Texas Instruments TAS2764 Mono Audio amplifier" 1521 depends on I2C 1522 1523config SND_SOC_TAS2770 1524 tristate "Texas Instruments TAS2770 speaker amplifier" 1525 depends on I2C 1526 1527config SND_SOC_TAS5086 1528 tristate "Texas Instruments TAS5086 speaker amplifier" 1529 depends on I2C 1530 1531config SND_SOC_TAS571X 1532 tristate "Texas Instruments TAS571x power amplifiers" 1533 depends on I2C 1534 help 1535 Enable support for Texas Instruments TAS5707, TAS5711, TAS5717, 1536 TAS5719 and TAS5721 power amplifiers 1537 1538config SND_SOC_TAS5720 1539 tristate "Texas Instruments TAS5720 Mono Audio amplifier" 1540 depends on I2C 1541 help 1542 Enable support for Texas Instruments TAS5720L/M high-efficiency mono 1543 Class-D audio power amplifiers. 1544 1545config SND_SOC_TAS5805M 1546 tristate "Texas Instruments TAS5805M speaker amplifier" 1547 depends on I2C 1548 help 1549 Enable support for Texas Instruments TAS5805M Class-D 1550 amplifiers. This is a speaker amplifier with an integrated 1551 DSP. DSP configuration for each instance needs to be supplied 1552 via a device-tree attribute. 1553 1554config SND_SOC_TAS6424 1555 tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier" 1556 depends on I2C 1557 help 1558 Enable support for Texas Instruments TAS6424 high-efficiency 1559 digital input quad-channel Class-D audio power amplifiers. 1560 1561config SND_SOC_TDA7419 1562 tristate "ST TDA7419 audio processor" 1563 depends on I2C 1564 select REGMAP_I2C 1565 1566config SND_SOC_TFA9879 1567 tristate "NXP Semiconductors TFA9879 amplifier" 1568 depends on I2C 1569 1570config SND_SOC_TFA989X 1571 tristate "NXP/Goodix TFA989X (TFA1) amplifiers" 1572 depends on I2C 1573 select REGMAP_I2C 1574 help 1575 Enable support for NXP (now Goodix) TFA989X (TFA1 family) speaker 1576 amplifiers, e.g. TFA9895. 1577 Note that the driver currently bypasses the built-in "CoolFlux DSP" 1578 and does not support (hardware) volume control. 1579 1580config SND_SOC_TLV320ADC3XXX 1581 tristate "Texas Instruments TLV320ADC3001/3101 audio ADC" 1582 depends on I2C 1583 help 1584 Enable support for Texas Instruments TLV320ADC3001 and TLV320ADC3101 1585 ADCs. 1586 1587config SND_SOC_TLV320AIC23 1588 tristate 1589 1590config SND_SOC_TLV320AIC23_I2C 1591 tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C" 1592 depends on I2C 1593 select SND_SOC_TLV320AIC23 1594 1595config SND_SOC_TLV320AIC23_SPI 1596 tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI" 1597 depends on SPI_MASTER 1598 select SND_SOC_TLV320AIC23 1599 1600config SND_SOC_TLV320AIC26 1601 tristate 1602 depends on SPI 1603 1604config SND_SOC_TLV320AIC31XX 1605 tristate "Texas Instruments TLV320AIC31xx CODECs" 1606 depends on I2C 1607 select REGMAP_I2C 1608 1609config SND_SOC_TLV320AIC32X4 1610 tristate 1611 depends on COMMON_CLK 1612 1613config SND_SOC_TLV320AIC32X4_I2C 1614 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C" 1615 depends on I2C 1616 depends on COMMON_CLK 1617 select SND_SOC_TLV320AIC32X4 1618 1619config SND_SOC_TLV320AIC32X4_SPI 1620 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI" 1621 depends on SPI_MASTER 1622 depends on COMMON_CLK 1623 select SND_SOC_TLV320AIC32X4 1624 1625config SND_SOC_TLV320AIC3X 1626 tristate 1627 1628config SND_SOC_TLV320AIC3X_I2C 1629 tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C" 1630 depends on I2C 1631 select SND_SOC_TLV320AIC3X 1632 select REGMAP_I2C 1633 1634config SND_SOC_TLV320AIC3X_SPI 1635 tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI" 1636 depends on SPI_MASTER 1637 select SND_SOC_TLV320AIC3X 1638 select REGMAP_SPI 1639 1640config SND_SOC_TLV320DAC33 1641 tristate 1642 depends on I2C 1643 1644config SND_SOC_TLV320ADCX140 1645 tristate "Texas Instruments TLV320ADCX140 CODEC family" 1646 depends on I2C 1647 select REGMAP_I2C 1648 help 1649 Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and 1650 tlv320adc6140 quad channel ADCs. 1651 1652config SND_SOC_TS3A227E 1653 tristate "TI Headset/Mic detect and keypress chip" 1654 depends on I2C 1655 1656config SND_SOC_TSCS42XX 1657 tristate "Tempo Semiconductor TSCS42xx CODEC" 1658 depends on I2C 1659 select REGMAP_I2C 1660 help 1661 Add support for Tempo Semiconductor's TSCS42xx audio CODEC. 1662 1663config SND_SOC_TSCS454 1664 tristate "Tempo Semiconductor TSCS454 CODEC" 1665 depends on I2C 1666 select REGMAP_I2C 1667 help 1668 Add support for Tempo Semiconductor's TSCS454 audio CODEC. 1669 1670config SND_SOC_TWL4030 1671 tristate 1672 depends on TWL4030_CORE 1673 select MFD_TWL4030_AUDIO 1674 1675config SND_SOC_TWL6040 1676 tristate 1677 depends on TWL6040_CORE 1678 1679config SND_SOC_UDA1334 1680 tristate "NXP UDA1334 DAC" 1681 depends on GPIOLIB 1682 help 1683 The UDA1334 is an NXP audio codec, supports the I2S-bus data format 1684 and has basic features such as de-emphasis (at 44.1 kHz sampling 1685 rate) and mute. 1686 1687config SND_SOC_UDA134X 1688 tristate 1689 1690config SND_SOC_UDA1380 1691 tristate 1692 depends on I2C 1693 1694config SND_SOC_WCD9335 1695 tristate "WCD9335 Codec" 1696 depends on SLIMBUS 1697 select REGMAP_SLIMBUS 1698 select REGMAP_IRQ 1699 help 1700 The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports 1701 Qualcomm Technologies, Inc. (QTI) multimedia solutions, 1702 including the MSM8996, MSM8976, and MSM8956 chipsets. 1703 1704config SND_SOC_WCD_MBHC 1705 tristate 1706 1707config SND_SOC_WCD934X 1708 tristate "WCD9340/WCD9341 Codec" 1709 depends on COMMON_CLK 1710 select SND_SOC_WCD_MBHC 1711 depends on MFD_WCD934X 1712 help 1713 The WCD9340/9341 is a audio codec IC Integrated in 1714 Qualcomm SoCs like SDM845. 1715 1716config SND_SOC_WCD938X 1717 depends on SND_SOC_WCD938X_SDW 1718 tristate 1719 depends on SOUNDWIRE || !SOUNDWIRE 1720 1721config SND_SOC_WCD938X_SDW 1722 tristate "WCD9380/WCD9385 Codec - SDW" 1723 select SND_SOC_WCD938X 1724 select SND_SOC_WCD_MBHC 1725 select REGMAP_IRQ 1726 depends on SOUNDWIRE 1727 select REGMAP_SOUNDWIRE 1728 help 1729 The WCD9380/9385 is a audio codec IC Integrated in 1730 Qualcomm SoCs like SM8250. 1731 1732config SND_SOC_WL1273 1733 tristate 1734 1735config SND_SOC_WM0010 1736 tristate 1737 depends on SPI_MASTER 1738 1739config SND_SOC_WM1250_EV1 1740 tristate 1741 depends on I2C 1742 1743config SND_SOC_WM2000 1744 tristate 1745 depends on I2C 1746 1747config SND_SOC_WM2200 1748 tristate 1749 depends on I2C 1750 1751config SND_SOC_WM5100 1752 tristate 1753 depends on I2C 1754 1755config SND_SOC_WM5102 1756 tristate 1757 depends on MFD_WM5102 && MFD_ARIZONA 1758 1759config SND_SOC_WM5110 1760 tristate 1761 depends on MFD_WM5110 && MFD_ARIZONA 1762 1763config SND_SOC_WM8350 1764 tristate 1765 depends on MFD_WM8350 1766 1767config SND_SOC_WM8400 1768 tristate 1769 # FIXME nothing selects SND_SOC_WM8400?? 1770 depends on MFD_WM8400 1771 1772config SND_SOC_WM8510 1773 tristate "Wolfson Microelectronics WM8510 CODEC" 1774 depends on SND_SOC_I2C_AND_SPI 1775 1776config SND_SOC_WM8523 1777 tristate "Wolfson Microelectronics WM8523 DAC" 1778 depends on I2C 1779 1780config SND_SOC_WM8524 1781 tristate "Wolfson Microelectronics WM8524 DAC" 1782 depends on GPIOLIB 1783 1784config SND_SOC_WM8580 1785 tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs" 1786 depends on I2C 1787 1788config SND_SOC_WM8711 1789 tristate "Wolfson Microelectronics WM8711 CODEC" 1790 depends on SND_SOC_I2C_AND_SPI 1791 1792config SND_SOC_WM8727 1793 tristate 1794 1795config SND_SOC_WM8728 1796 tristate "Wolfson Microelectronics WM8728 DAC" 1797 depends on SND_SOC_I2C_AND_SPI 1798 1799config SND_SOC_WM8731 1800 tristate 1801 1802config SND_SOC_WM8731_I2C 1803 tristate "Wolfson Microelectronics WM8731 CODEC with I2C" 1804 depends on I2C 1805 select REGMAP 1806 select SND_SOC_WM8731 1807 1808config SND_SOC_WM8731_SPI 1809 tristate "Wolfson Microelectronics WM8731 CODEC with SPI" 1810 depends on SPI 1811 select REGMAP 1812 select SND_SOC_WM8731 1813 1814config SND_SOC_WM8737 1815 tristate "Wolfson Microelectronics WM8737 ADC" 1816 depends on SND_SOC_I2C_AND_SPI 1817 1818config SND_SOC_WM8741 1819 tristate "Wolfson Microelectronics WM8741 DAC" 1820 depends on SND_SOC_I2C_AND_SPI 1821 1822config SND_SOC_WM8750 1823 tristate "Wolfson Microelectronics WM8750 CODEC" 1824 depends on SND_SOC_I2C_AND_SPI 1825 1826config SND_SOC_WM8753 1827 tristate "Wolfson Microelectronics WM8753 CODEC" 1828 depends on SND_SOC_I2C_AND_SPI 1829 1830config SND_SOC_WM8770 1831 tristate "Wolfson Microelectronics WM8770 CODEC" 1832 depends on SPI_MASTER 1833 1834config SND_SOC_WM8776 1835 tristate "Wolfson Microelectronics WM8776 CODEC" 1836 depends on SND_SOC_I2C_AND_SPI 1837 1838config SND_SOC_WM8782 1839 tristate "Wolfson Microelectronics WM8782 ADC" 1840 1841config SND_SOC_WM8804 1842 tristate 1843 1844config SND_SOC_WM8804_I2C 1845 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C" 1846 depends on I2C 1847 select SND_SOC_WM8804 1848 select REGMAP_I2C 1849 1850config SND_SOC_WM8804_SPI 1851 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI" 1852 depends on SPI_MASTER 1853 select SND_SOC_WM8804 1854 select REGMAP_SPI 1855 1856config SND_SOC_WM8900 1857 tristate 1858 depends on SND_SOC_I2C_AND_SPI 1859 1860config SND_SOC_WM8903 1861 tristate "Wolfson Microelectronics WM8903 CODEC" 1862 depends on I2C 1863 1864config SND_SOC_WM8904 1865 tristate "Wolfson Microelectronics WM8904 CODEC" 1866 depends on I2C 1867 1868config SND_SOC_WM8940 1869 tristate "Wolfson Microelectronics WM8940 codec" 1870 depends on I2C 1871 1872config SND_SOC_WM8955 1873 tristate 1874 depends on I2C 1875 1876config SND_SOC_WM8960 1877 tristate "Wolfson Microelectronics WM8960 CODEC" 1878 depends on I2C 1879 1880config SND_SOC_WM8961 1881 tristate 1882 depends on I2C 1883 1884config SND_SOC_WM8962 1885 tristate "Wolfson Microelectronics WM8962 CODEC" 1886 depends on I2C && INPUT 1887 1888config SND_SOC_WM8971 1889 tristate 1890 depends on I2C 1891 1892config SND_SOC_WM8974 1893 tristate "Wolfson Microelectronics WM8974 codec" 1894 depends on I2C 1895 1896config SND_SOC_WM8978 1897 tristate "Wolfson Microelectronics WM8978 codec" 1898 depends on I2C 1899 1900config SND_SOC_WM8983 1901 tristate 1902 depends on SND_SOC_I2C_AND_SPI 1903 1904config SND_SOC_WM8985 1905 tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver" 1906 depends on SND_SOC_I2C_AND_SPI 1907 1908config SND_SOC_WM8988 1909 tristate 1910 depends on SND_SOC_I2C_AND_SPI 1911 1912config SND_SOC_WM8990 1913 tristate 1914 depends on I2C 1915 1916config SND_SOC_WM8991 1917 tristate 1918 depends on I2C 1919 1920config SND_SOC_WM8993 1921 tristate 1922 depends on I2C 1923 1924config SND_SOC_WM8994 1925 tristate 1926 1927config SND_SOC_WM8995 1928 tristate 1929 depends on SND_SOC_I2C_AND_SPI 1930 1931config SND_SOC_WM8996 1932 tristate 1933 depends on I2C 1934 1935config SND_SOC_WM8997 1936 tristate 1937 depends on MFD_WM8997 && MFD_ARIZONA 1938 1939config SND_SOC_WM8998 1940 tristate 1941 depends on MFD_WM8998 && MFD_ARIZONA 1942 1943config SND_SOC_WM9081 1944 tristate 1945 depends on I2C 1946 1947config SND_SOC_WM9090 1948 tristate 1949 depends on I2C 1950 1951config SND_SOC_WM9705 1952 tristate 1953 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW 1954 select REGMAP_AC97 1955 select AC97_BUS_COMPAT if AC97_BUS_NEW 1956 1957config SND_SOC_WM9712 1958 tristate 1959 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW 1960 select REGMAP_AC97 1961 select AC97_BUS_COMPAT if AC97_BUS_NEW 1962 1963config SND_SOC_WM9713 1964 tristate 1965 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW 1966 select REGMAP_AC97 1967 select AC97_BUS_COMPAT if AC97_BUS_NEW 1968 1969config SND_SOC_WSA881X 1970 tristate "WSA881X Codec" 1971 depends on SOUNDWIRE 1972 select REGMAP_SOUNDWIRE 1973 tristate 1974 help 1975 This enables support for Qualcomm WSA8810/WSA8815 Class-D 1976 Smart Speaker Amplifier. 1977 1978config SND_SOC_ZL38060 1979 tristate "Microsemi ZL38060 Connected Home Audio Processor" 1980 depends on SPI_MASTER 1981 select REGMAP 1982 help 1983 Support for ZL38060 Connected Home Audio Processor from Microsemi, 1984 which consists of a Digital Signal Processor (DSP), several Digital 1985 Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs. 1986 1987# Amp 1988config SND_SOC_LM4857 1989 tristate 1990 depends on I2C 1991 1992config SND_SOC_MAX9759 1993 tristate "Maxim MAX9759 speaker Amplifier" 1994 depends on GPIOLIB 1995 1996config SND_SOC_MAX9768 1997 tristate 1998 depends on I2C 1999 2000config SND_SOC_MAX9877 2001 tristate 2002 depends on I2C 2003 2004config SND_SOC_MC13783 2005 tristate 2006 depends on MFD_MC13XXX 2007 2008config SND_SOC_ML26124 2009 tristate 2010 depends on I2C 2011 2012config SND_SOC_MT6351 2013 tristate "MediaTek MT6351 Codec" 2014 2015config SND_SOC_MT6358 2016 tristate "MediaTek MT6358 Codec" 2017 help 2018 Enable support for the platform which uses MT6358 as 2019 external codec device. 2020 2021config SND_SOC_MT6359 2022 tristate "MediaTek MT6359 Codec" 2023 depends on MTK_PMIC_WRAP 2024 help 2025 Enable support for the platform which uses MT6359 as 2026 external codec device. 2027 2028config SND_SOC_MT6359_ACCDET 2029 tristate "MediaTek MT6359 ACCDET driver" 2030 depends on MTK_PMIC_WRAP 2031 help 2032 ACCDET means Accessory Detection technology, MediaTek develop it 2033 for ASoC codec soc-jack detection mechanism. 2034 Select N if you don't have jack on board. 2035 2036config SND_SOC_MT6660 2037 tristate "Mediatek MT6660 Speaker Amplifier" 2038 depends on I2C 2039 help 2040 MediaTek MT6660 is a smart power amplifier which contain 2041 speaker protection, multi-band DRC, equalizer functions. 2042 Select N if you don't have MT6660 on board. 2043 Select M to build this as module. 2044 2045config SND_SOC_NAU8315 2046 tristate "Nuvoton Technology Corporation NAU8315 CODEC" 2047 depends on GPIOLIB 2048 2049config SND_SOC_NAU8540 2050 tristate "Nuvoton Technology Corporation NAU85L40 CODEC" 2051 depends on I2C 2052 2053config SND_SOC_NAU8810 2054 tristate "Nuvoton Technology Corporation NAU88C10 CODEC" 2055 depends on I2C 2056 2057config SND_SOC_NAU8821 2058 tristate "Nuvoton Technology Corporation NAU88L21 CODEC" 2059 depends on I2C 2060 2061config SND_SOC_NAU8822 2062 tristate "Nuvoton Technology Corporation NAU88C22 CODEC" 2063 depends on I2C 2064 2065config SND_SOC_NAU8824 2066 tristate "Nuvoton Technology Corporation NAU88L24 CODEC" 2067 depends on I2C 2068 2069config SND_SOC_NAU8825 2070 tristate 2071 depends on I2C 2072 2073config SND_SOC_TPA6130A2 2074 tristate "Texas Instruments TPA6130A2 headphone amplifier" 2075 depends on I2C 2076 2077config SND_SOC_LPASS_MACRO_COMMON 2078 tristate 2079 2080config SND_SOC_LPASS_WSA_MACRO 2081 depends on COMMON_CLK 2082 select REGMAP_MMIO 2083 tristate "Qualcomm WSA Macro in LPASS(Low Power Audio SubSystem)" 2084 2085config SND_SOC_LPASS_VA_MACRO 2086 depends on COMMON_CLK 2087 select REGMAP_MMIO 2088 select SND_SOC_LPASS_MACRO_COMMON 2089 tristate "Qualcomm VA Macro in LPASS(Low Power Audio SubSystem)" 2090 2091config SND_SOC_LPASS_RX_MACRO 2092 depends on COMMON_CLK 2093 select REGMAP_MMIO 2094 select SND_SOC_LPASS_MACRO_COMMON 2095 tristate "Qualcomm RX Macro in LPASS(Low Power Audio SubSystem)" 2096 2097config SND_SOC_LPASS_TX_MACRO 2098 depends on COMMON_CLK 2099 select REGMAP_MMIO 2100 select SND_SOC_LPASS_MACRO_COMMON 2101 tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)" 2102 2103endmenu 2104