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 depends on GPIOLIB 990 991config SND_SOC_MAX98371 992 tristate 993 depends on I2C 994 995config SND_SOC_MAX98504 996 tristate "Maxim MAX98504 speaker amplifier" 997 depends on I2C 998 999config SND_SOC_MAX9867 1000 tristate "Maxim MAX9867 CODEC" 1001 depends on I2C 1002 1003config SND_SOC_MAX98925 1004 tristate 1005 depends on I2C 1006 1007config SND_SOC_MAX98926 1008 tristate 1009 depends on I2C 1010 1011config SND_SOC_MAX98927 1012 tristate "Maxim Integrated MAX98927 Speaker Amplifier" 1013 depends on I2C 1014 1015config SND_SOC_MAX98520 1016 tristate "Maxim Integrated MAX98520 Speaker Amplifier" 1017 depends on I2C 1018 help 1019 Enable support for Maxim Integrated MAX98520 audio 1020 amplifier, which implements a tripler charge pump 1021 based boost converter and supports sample rates of 1022 8KHz to 192KHz. 1023 1024 To compile this driver as a module, choose M here. 1025 1026config SND_SOC_MAX98373 1027 tristate 1028 1029config SND_SOC_MAX98373_I2C 1030 tristate "Maxim Integrated MAX98373 Speaker Amplifier" 1031 depends on I2C 1032 select SND_SOC_MAX98373 1033 1034config SND_SOC_MAX98373_SDW 1035 tristate "Maxim Integrated MAX98373 Speaker Amplifier - SDW" 1036 depends on SOUNDWIRE 1037 select SND_SOC_MAX98373 1038 select REGMAP_SOUNDWIRE 1039 help 1040 Enable support for Maxim Integrated MAX98373 Soundwire 1041 amplifier. MAX98373 supports either the MIPI SoundWire 1042 compatible interface for audio and control data, or 1043 the PCM interface for audio data and a standard I2C 1044 interface for control data. Select this if MAX98373 is 1045 connected via soundwire. 1046 1047config SND_SOC_MAX98390 1048 tristate "Maxim Integrated MAX98390 Speaker Amplifier" 1049 depends on I2C 1050 1051config SND_SOC_MAX98396 1052 tristate "Analog Devices MAX98396 Speaker Amplifier" 1053 depends on I2C 1054 help 1055 Enable support for Analog Devices MAX98396 audio 1056 amplifier. The device provides a PCM interface for 1057 audio data and a standard I2C interface for control 1058 data communication. 1059 1060config SND_SOC_MAX9850 1061 tristate 1062 depends on I2C 1063 1064config SND_SOC_MAX9860 1065 tristate "Maxim MAX9860 Mono Audio Voice Codec" 1066 depends on I2C 1067 select REGMAP_I2C 1068 1069config SND_SOC_MSM8916_WCD_ANALOG 1070 tristate "Qualcomm MSM8916 WCD Analog Codec" 1071 depends on SPMI || COMPILE_TEST 1072 1073config SND_SOC_MSM8916_WCD_DIGITAL 1074 tristate "Qualcomm MSM8916 WCD DIGITAL Codec" 1075 select REGMAP_MMIO 1076 1077config SND_SOC_PCM1681 1078 tristate "Texas Instruments PCM1681 CODEC" 1079 depends on I2C 1080 1081config SND_SOC_PCM1789 1082 tristate 1083 1084config SND_SOC_PCM1789_I2C 1085 tristate "Texas Instruments PCM1789 CODEC (I2C)" 1086 depends on I2C 1087 select SND_SOC_PCM1789 1088 help 1089 Enable support for Texas Instruments PCM1789 CODEC. 1090 Select this if your PCM1789 is connected via an I2C bus. 1091 1092config SND_SOC_PCM179X 1093 tristate 1094 1095config SND_SOC_PCM179X_I2C 1096 tristate "Texas Instruments PCM179X CODEC (I2C)" 1097 depends on I2C 1098 select SND_SOC_PCM179X 1099 help 1100 Enable support for Texas Instruments PCM179x CODEC. 1101 Select this if your PCM179x is connected via an I2C bus. 1102 1103config SND_SOC_PCM179X_SPI 1104 tristate "Texas Instruments PCM179X CODEC (SPI)" 1105 depends on SPI_MASTER 1106 select SND_SOC_PCM179X 1107 help 1108 Enable support for Texas Instruments PCM179x CODEC. 1109 Select this if your PCM179x is connected via an SPI bus. 1110 1111config SND_SOC_PCM186X 1112 tristate 1113 1114config SND_SOC_PCM186X_I2C 1115 tristate "Texas Instruments PCM186x CODECs - I2C" 1116 depends on I2C 1117 select SND_SOC_PCM186X 1118 select REGMAP_I2C 1119 1120config SND_SOC_PCM186X_SPI 1121 tristate "Texas Instruments PCM186x CODECs - SPI" 1122 depends on SPI_MASTER 1123 select SND_SOC_PCM186X 1124 select REGMAP_SPI 1125 1126config SND_SOC_PCM3008 1127 tristate 1128 1129config SND_SOC_PCM3060 1130 tristate 1131 1132config SND_SOC_PCM3060_I2C 1133 tristate "Texas Instruments PCM3060 CODEC - I2C" 1134 depends on I2C 1135 select SND_SOC_PCM3060 1136 select REGMAP_I2C 1137 1138config SND_SOC_PCM3060_SPI 1139 tristate "Texas Instruments PCM3060 CODEC - SPI" 1140 depends on SPI_MASTER 1141 select SND_SOC_PCM3060 1142 select REGMAP_SPI 1143 1144config SND_SOC_PCM3168A 1145 tristate 1146 1147config SND_SOC_PCM3168A_I2C 1148 tristate "Texas Instruments PCM3168A CODEC - I2C" 1149 depends on I2C 1150 select SND_SOC_PCM3168A 1151 select REGMAP_I2C 1152 1153config SND_SOC_PCM3168A_SPI 1154 tristate "Texas Instruments PCM3168A CODEC - SPI" 1155 depends on SPI_MASTER 1156 select SND_SOC_PCM3168A 1157 select REGMAP_SPI 1158 1159config SND_SOC_PCM5102A 1160 tristate "Texas Instruments PCM5102A CODEC" 1161 1162config SND_SOC_PCM512x 1163 tristate 1164 1165config SND_SOC_PCM512x_I2C 1166 tristate "Texas Instruments PCM512x CODECs - I2C" 1167 depends on I2C 1168 select SND_SOC_PCM512x 1169 select REGMAP_I2C 1170 1171config SND_SOC_PCM512x_SPI 1172 tristate "Texas Instruments PCM512x CODECs - SPI" 1173 depends on SPI_MASTER 1174 select SND_SOC_PCM512x 1175 select REGMAP_SPI 1176 1177config SND_SOC_RK3328 1178 tristate "Rockchip RK3328 audio CODEC" 1179 select REGMAP_MMIO 1180 1181config SND_SOC_RK817 1182 tristate "Rockchip RK817 audio CODEC" 1183 depends on MFD_RK808 1184 select REGMAP_I2C 1185 1186config SND_SOC_RL6231 1187 tristate 1188 default y if SND_SOC_RT5514=y 1189 default y if SND_SOC_RT5616=y 1190 default y if SND_SOC_RT5640=y 1191 default y if SND_SOC_RT5645=y 1192 default y if SND_SOC_RT5651=y 1193 default y if SND_SOC_RT5659=y 1194 default y if SND_SOC_RT5660=y 1195 default y if SND_SOC_RT5663=y 1196 default y if SND_SOC_RT5665=y 1197 default y if SND_SOC_RT5668=y 1198 default y if SND_SOC_RT5670=y 1199 default y if SND_SOC_RT5677=y 1200 default y if SND_SOC_RT5682=y 1201 default y if SND_SOC_RT1011=y 1202 default y if SND_SOC_RT1015=y 1203 default y if SND_SOC_RT1015P=y 1204 default y if SND_SOC_RT1019=y 1205 default y if SND_SOC_RT1305=y 1206 default y if SND_SOC_RT1308=y 1207 default m if SND_SOC_RT5514=m 1208 default m if SND_SOC_RT5616=m 1209 default m if SND_SOC_RT5640=m 1210 default m if SND_SOC_RT5645=m 1211 default m if SND_SOC_RT5651=m 1212 default m if SND_SOC_RT5659=m 1213 default m if SND_SOC_RT5660=m 1214 default m if SND_SOC_RT5663=m 1215 default m if SND_SOC_RT5665=m 1216 default m if SND_SOC_RT5668=m 1217 default m if SND_SOC_RT5670=m 1218 default m if SND_SOC_RT5677=m 1219 default m if SND_SOC_RT5682=m 1220 default m if SND_SOC_RT1011=m 1221 default m if SND_SOC_RT1015=m 1222 default m if SND_SOC_RT1015P=m 1223 default m if SND_SOC_RT1019=m 1224 default m if SND_SOC_RT1305=m 1225 default m if SND_SOC_RT1308=m 1226 1227config SND_SOC_RL6347A 1228 tristate 1229 default y if SND_SOC_RT274=y 1230 default y if SND_SOC_RT286=y 1231 default y if SND_SOC_RT298=y 1232 default m if SND_SOC_RT274=m 1233 default m if SND_SOC_RT286=m 1234 default m if SND_SOC_RT298=m 1235 1236config SND_SOC_RT274 1237 tristate 1238 depends on I2C 1239 1240config SND_SOC_RT286 1241 tristate 1242 depends on I2C 1243 1244config SND_SOC_RT298 1245 tristate 1246 depends on I2C 1247 1248config SND_SOC_RT1011 1249 tristate 1250 depends on I2C 1251 1252config SND_SOC_RT1015 1253 tristate 1254 depends on I2C 1255 1256config SND_SOC_RT1015P 1257 tristate 1258 depends on GPIOLIB 1259 1260config SND_SOC_RT1016 1261 tristate 1262 depends on I2C 1263 1264config SND_SOC_RT1019 1265 tristate 1266 depends on I2C 1267 1268config SND_SOC_RT1305 1269 tristate 1270 depends on I2C 1271 1272config SND_SOC_RT1308 1273 tristate 1274 depends on I2C 1275 1276config SND_SOC_RT1308_SDW 1277 tristate "Realtek RT1308 Codec - SDW" 1278 depends on I2C && SOUNDWIRE 1279 select REGMAP_SOUNDWIRE 1280 1281config SND_SOC_RT1316_SDW 1282 tristate "Realtek RT1316 Codec - SDW" 1283 depends on SOUNDWIRE 1284 select REGMAP_SOUNDWIRE 1285 1286config SND_SOC_RT5514 1287 tristate 1288 depends on I2C 1289 1290config SND_SOC_RT5514_SPI 1291 tristate 1292 depends on SPI_MASTER 1293 1294config SND_SOC_RT5514_SPI_BUILTIN 1295 bool # force RT5514_SPI to be built-in to avoid link errors 1296 default SND_SOC_RT5514=y && SND_SOC_RT5514_SPI=m 1297 1298config SND_SOC_RT5616 1299 tristate "Realtek RT5616 CODEC" 1300 depends on I2C 1301 1302config SND_SOC_RT5631 1303 tristate "Realtek ALC5631/RT5631 CODEC" 1304 depends on I2C 1305 1306config SND_SOC_RT5640 1307 tristate "Realtek RT5640/RT5639 Codec" 1308 depends on I2C 1309 1310config SND_SOC_RT5645 1311 tristate 1312 depends on I2C 1313 1314config SND_SOC_RT5651 1315 tristate 1316 depends on I2C 1317 1318config SND_SOC_RT5659 1319 tristate "Realtek RT5658/RT5659 Codec" 1320 depends on I2C 1321 1322config SND_SOC_RT5660 1323 tristate 1324 depends on I2C 1325 1326config SND_SOC_RT5663 1327 tristate 1328 depends on I2C 1329 1330config SND_SOC_RT5665 1331 tristate 1332 depends on I2C 1333 1334config SND_SOC_RT5668 1335 tristate 1336 depends on I2C 1337 1338config SND_SOC_RT5670 1339 tristate 1340 depends on I2C 1341 1342config SND_SOC_RT5677 1343 tristate 1344 depends on I2C 1345 select REGMAP_I2C 1346 select REGMAP_IRQ 1347 1348config SND_SOC_RT5677_SPI 1349 tristate 1350 default SND_SOC_RT5677 && SPI 1351 1352config SND_SOC_RT5682 1353 tristate 1354 1355config SND_SOC_RT5682_I2C 1356 tristate 1357 depends on I2C 1358 select SND_SOC_RT5682 1359 1360config SND_SOC_RT5682_SDW 1361 tristate "Realtek RT5682 Codec - SDW" 1362 depends on SOUNDWIRE 1363 select SND_SOC_RT5682 1364 select REGMAP_SOUNDWIRE 1365 1366config SND_SOC_RT5682S 1367 tristate 1368 depends on I2C 1369 1370config SND_SOC_RT700 1371 tristate 1372 1373config SND_SOC_RT700_SDW 1374 tristate "Realtek RT700 Codec - SDW" 1375 depends on SOUNDWIRE 1376 select SND_SOC_RT700 1377 select REGMAP_SOUNDWIRE 1378 1379config SND_SOC_RT711 1380 tristate 1381 1382config SND_SOC_RT711_SDW 1383 tristate "Realtek RT711 Codec - SDW" 1384 depends on SOUNDWIRE 1385 select SND_SOC_RT711 1386 select REGMAP_SOUNDWIRE 1387 1388config SND_SOC_RT711_SDCA_SDW 1389 tristate "Realtek RT711 SDCA Codec - SDW" 1390 depends on SOUNDWIRE 1391 select REGMAP_SOUNDWIRE 1392 select REGMAP_SOUNDWIRE_MBQ 1393 1394config SND_SOC_RT715 1395 tristate 1396 1397config SND_SOC_RT715_SDW 1398 tristate "Realtek RT715 Codec - SDW" 1399 depends on SOUNDWIRE 1400 select SND_SOC_RT715 1401 select REGMAP_SOUNDWIRE 1402 1403config SND_SOC_RT715_SDCA_SDW 1404 tristate "Realtek RT715 SDCA Codec - SDW" 1405 depends on SOUNDWIRE 1406 select REGMAP_SOUNDWIRE 1407 select REGMAP_SOUNDWIRE_MBQ 1408 1409config SND_SOC_RT9120 1410 tristate "Richtek RT9120 Stereo Class-D Amplifier" 1411 depends on I2C 1412 select REGMAP_I2C 1413 help 1414 Enable support for Richtek RT9120 20W, stereo, inductor-less, 1415 high-efficiency Class-D audio amplifier. 1416 1417config SND_SOC_SDW_MOCKUP 1418 tristate "SoundWire mockup codec" 1419 depends on EXPERT 1420 depends on SOUNDWIRE 1421 help 1422 This option enables a SoundWire mockup codec that does not drive the 1423 bus, take part in the command/command protocol or generate data on a 1424 Source port. 1425 This option is only intended to be used for tests on a device 1426 with a connector, in combination with a bus analyzer, or to test new 1427 topologies that differ from the actual hardware layout. 1428 This mockup device could be totally virtual but could also be a 1429 real physical one with one key restriction: it is not allowed by the 1430 SoundWire specification to be configured via a sideband mechanism and 1431 generate audio data for capture. However, nothing prevents such a 1432 peripheral device from snooping the bus. 1433 1434#Freescale sgtl5000 codec 1435config SND_SOC_SGTL5000 1436 tristate "Freescale SGTL5000 CODEC" 1437 depends on I2C 1438 1439config SND_SOC_SI476X 1440 tristate 1441 1442config SND_SOC_SIGMADSP 1443 tristate 1444 select CRC32 1445 1446config SND_SOC_SIGMADSP_I2C 1447 tristate 1448 select SND_SOC_SIGMADSP 1449 1450config SND_SOC_SIGMADSP_REGMAP 1451 tristate 1452 select SND_SOC_SIGMADSP 1453 1454config SND_SOC_SIMPLE_AMPLIFIER 1455 tristate "Simple Audio Amplifier" 1456 1457config SND_SOC_SIMPLE_MUX 1458 tristate "Simple Audio Mux" 1459 depends on GPIOLIB 1460 1461config SND_SOC_SPDIF 1462 tristate "S/PDIF CODEC" 1463 1464config SND_SOC_SSM2305 1465 tristate "Analog Devices SSM2305 Class-D Amplifier" 1466 help 1467 Enable support for Analog Devices SSM2305 filterless 1468 high-efficiency mono Class-D audio power amplifiers. 1469 1470config SND_SOC_SSM2518 1471 tristate "Analog Devices SSM2518 Class-D Amplifier" 1472 depends on I2C 1473 1474config SND_SOC_SSM2602 1475 tristate 1476 1477config SND_SOC_SSM2602_SPI 1478 tristate "Analog Devices SSM2602 CODEC - SPI" 1479 depends on SPI_MASTER 1480 select SND_SOC_SSM2602 1481 select REGMAP_SPI 1482 1483config SND_SOC_SSM2602_I2C 1484 tristate "Analog Devices SSM2602 CODEC - I2C" 1485 depends on I2C 1486 select SND_SOC_SSM2602 1487 select REGMAP_I2C 1488 1489config SND_SOC_SSM4567 1490 tristate "Analog Devices ssm4567 amplifier driver support" 1491 depends on I2C 1492 1493config SND_SOC_STA32X 1494 tristate "STA326, STA328 and STA329 speaker amplifier" 1495 depends on I2C 1496 select REGMAP_I2C 1497 1498config SND_SOC_STA350 1499 tristate "STA350 speaker amplifier" 1500 depends on I2C 1501 1502config SND_SOC_STA529 1503 tristate 1504 depends on I2C 1505 1506config SND_SOC_STAC9766 1507 tristate 1508 depends on SND_SOC_AC97_BUS 1509 1510config SND_SOC_STI_SAS 1511 tristate "codec Audio support for STI SAS codec" 1512 1513config SND_SOC_TAS2552 1514 tristate "Texas Instruments TAS2552 Mono Audio amplifier" 1515 depends on I2C 1516 1517config SND_SOC_TAS2562 1518 tristate "Texas Instruments TAS2562 Mono Audio amplifier" 1519 depends on I2C 1520 1521config SND_SOC_TAS2764 1522 tristate "Texas Instruments TAS2764 Mono Audio amplifier" 1523 depends on I2C 1524 1525config SND_SOC_TAS2770 1526 tristate "Texas Instruments TAS2770 speaker amplifier" 1527 depends on I2C 1528 1529config SND_SOC_TAS5086 1530 tristate "Texas Instruments TAS5086 speaker amplifier" 1531 depends on I2C 1532 1533config SND_SOC_TAS571X 1534 tristate "Texas Instruments TAS571x power amplifiers" 1535 depends on I2C 1536 help 1537 Enable support for Texas Instruments TAS5707, TAS5711, TAS5717, 1538 TAS5719 and TAS5721 power amplifiers 1539 1540config SND_SOC_TAS5720 1541 tristate "Texas Instruments TAS5720 Mono Audio amplifier" 1542 depends on I2C 1543 help 1544 Enable support for Texas Instruments TAS5720L/M high-efficiency mono 1545 Class-D audio power amplifiers. 1546 1547config SND_SOC_TAS5805M 1548 tristate "Texas Instruments TAS5805M speaker amplifier" 1549 depends on I2C 1550 help 1551 Enable support for Texas Instruments TAS5805M Class-D 1552 amplifiers. This is a speaker amplifier with an integrated 1553 DSP. DSP configuration for each instance needs to be supplied 1554 via a device-tree attribute. 1555 1556config SND_SOC_TAS6424 1557 tristate "Texas Instruments TAS6424 Quad-Channel Audio amplifier" 1558 depends on I2C 1559 help 1560 Enable support for Texas Instruments TAS6424 high-efficiency 1561 digital input quad-channel Class-D audio power amplifiers. 1562 1563config SND_SOC_TDA7419 1564 tristate "ST TDA7419 audio processor" 1565 depends on I2C 1566 select REGMAP_I2C 1567 1568config SND_SOC_TFA9879 1569 tristate "NXP Semiconductors TFA9879 amplifier" 1570 depends on I2C 1571 1572config SND_SOC_TFA989X 1573 tristate "NXP/Goodix TFA989X (TFA1) amplifiers" 1574 depends on I2C 1575 select REGMAP_I2C 1576 help 1577 Enable support for NXP (now Goodix) TFA989X (TFA1 family) speaker 1578 amplifiers, e.g. TFA9895. 1579 Note that the driver currently bypasses the built-in "CoolFlux DSP" 1580 and does not support (hardware) volume control. 1581 1582config SND_SOC_TLV320ADC3XXX 1583 tristate "Texas Instruments TLV320ADC3001/3101 audio ADC" 1584 depends on I2C 1585 help 1586 Enable support for Texas Instruments TLV320ADC3001 and TLV320ADC3101 1587 ADCs. 1588 1589config SND_SOC_TLV320AIC23 1590 tristate 1591 1592config SND_SOC_TLV320AIC23_I2C 1593 tristate "Texas Instruments TLV320AIC23 audio CODEC - I2C" 1594 depends on I2C 1595 select SND_SOC_TLV320AIC23 1596 1597config SND_SOC_TLV320AIC23_SPI 1598 tristate "Texas Instruments TLV320AIC23 audio CODEC - SPI" 1599 depends on SPI_MASTER 1600 select SND_SOC_TLV320AIC23 1601 1602config SND_SOC_TLV320AIC26 1603 tristate 1604 depends on SPI 1605 1606config SND_SOC_TLV320AIC31XX 1607 tristate "Texas Instruments TLV320AIC31xx CODECs" 1608 depends on I2C 1609 select REGMAP_I2C 1610 1611config SND_SOC_TLV320AIC32X4 1612 tristate 1613 depends on COMMON_CLK 1614 1615config SND_SOC_TLV320AIC32X4_I2C 1616 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - I2C" 1617 depends on I2C 1618 depends on COMMON_CLK 1619 select SND_SOC_TLV320AIC32X4 1620 1621config SND_SOC_TLV320AIC32X4_SPI 1622 tristate "Texas Instruments TLV320AIC32x4 audio CODECs - SPI" 1623 depends on SPI_MASTER 1624 depends on COMMON_CLK 1625 select SND_SOC_TLV320AIC32X4 1626 1627config SND_SOC_TLV320AIC3X 1628 tristate 1629 1630config SND_SOC_TLV320AIC3X_I2C 1631 tristate "Texas Instruments TLV320AIC3x audio CODECs - I2C" 1632 depends on I2C 1633 select SND_SOC_TLV320AIC3X 1634 select REGMAP_I2C 1635 1636config SND_SOC_TLV320AIC3X_SPI 1637 tristate "Texas Instruments TLV320AIC3x audio CODECs - SPI" 1638 depends on SPI_MASTER 1639 select SND_SOC_TLV320AIC3X 1640 select REGMAP_SPI 1641 1642config SND_SOC_TLV320DAC33 1643 tristate 1644 depends on I2C 1645 1646config SND_SOC_TLV320ADCX140 1647 tristate "Texas Instruments TLV320ADCX140 CODEC family" 1648 depends on I2C 1649 select REGMAP_I2C 1650 help 1651 Add support for Texas Instruments tlv320adc3140, tlv320adc5140 and 1652 tlv320adc6140 quad channel ADCs. 1653 1654config SND_SOC_TS3A227E 1655 tristate "TI Headset/Mic detect and keypress chip" 1656 depends on I2C 1657 1658config SND_SOC_TSCS42XX 1659 tristate "Tempo Semiconductor TSCS42xx CODEC" 1660 depends on I2C 1661 select REGMAP_I2C 1662 help 1663 Add support for Tempo Semiconductor's TSCS42xx audio CODEC. 1664 1665config SND_SOC_TSCS454 1666 tristate "Tempo Semiconductor TSCS454 CODEC" 1667 depends on I2C 1668 select REGMAP_I2C 1669 help 1670 Add support for Tempo Semiconductor's TSCS454 audio CODEC. 1671 1672config SND_SOC_TWL4030 1673 tristate 1674 depends on TWL4030_CORE 1675 select MFD_TWL4030_AUDIO 1676 1677config SND_SOC_TWL6040 1678 tristate 1679 depends on TWL6040_CORE 1680 1681config SND_SOC_UDA1334 1682 tristate "NXP UDA1334 DAC" 1683 depends on GPIOLIB 1684 help 1685 The UDA1334 is an NXP audio codec, supports the I2S-bus data format 1686 and has basic features such as de-emphasis (at 44.1 kHz sampling 1687 rate) and mute. 1688 1689config SND_SOC_UDA134X 1690 tristate 1691 1692config SND_SOC_UDA1380 1693 tristate 1694 depends on I2C 1695 1696config SND_SOC_WCD9335 1697 tristate "WCD9335 Codec" 1698 depends on SLIMBUS 1699 select REGMAP_SLIMBUS 1700 select REGMAP_IRQ 1701 help 1702 The WCD9335 is a standalone Hi-Fi audio CODEC IC, supports 1703 Qualcomm Technologies, Inc. (QTI) multimedia solutions, 1704 including the MSM8996, MSM8976, and MSM8956 chipsets. 1705 1706config SND_SOC_WCD_MBHC 1707 tristate 1708 1709config SND_SOC_WCD934X 1710 tristate "WCD9340/WCD9341 Codec" 1711 depends on COMMON_CLK 1712 select SND_SOC_WCD_MBHC 1713 depends on MFD_WCD934X 1714 help 1715 The WCD9340/9341 is a audio codec IC Integrated in 1716 Qualcomm SoCs like SDM845. 1717 1718config SND_SOC_WCD938X 1719 depends on SND_SOC_WCD938X_SDW 1720 tristate 1721 depends on SOUNDWIRE || !SOUNDWIRE 1722 1723config SND_SOC_WCD938X_SDW 1724 tristate "WCD9380/WCD9385 Codec - SDW" 1725 select SND_SOC_WCD938X 1726 select SND_SOC_WCD_MBHC 1727 select REGMAP_IRQ 1728 depends on SOUNDWIRE 1729 select REGMAP_SOUNDWIRE 1730 help 1731 The WCD9380/9385 is a audio codec IC Integrated in 1732 Qualcomm SoCs like SM8250. 1733 1734config SND_SOC_WL1273 1735 tristate 1736 1737config SND_SOC_WM0010 1738 tristate 1739 depends on SPI_MASTER 1740 1741config SND_SOC_WM1250_EV1 1742 tristate 1743 depends on I2C 1744 1745config SND_SOC_WM2000 1746 tristate 1747 depends on I2C 1748 1749config SND_SOC_WM2200 1750 tristate 1751 depends on I2C 1752 1753config SND_SOC_WM5100 1754 tristate 1755 depends on I2C 1756 1757config SND_SOC_WM5102 1758 tristate 1759 depends on MFD_WM5102 && MFD_ARIZONA 1760 1761config SND_SOC_WM5110 1762 tristate 1763 depends on MFD_WM5110 && MFD_ARIZONA 1764 1765config SND_SOC_WM8350 1766 tristate 1767 depends on MFD_WM8350 1768 1769config SND_SOC_WM8400 1770 tristate 1771 # FIXME nothing selects SND_SOC_WM8400?? 1772 depends on MFD_WM8400 1773 1774config SND_SOC_WM8510 1775 tristate "Wolfson Microelectronics WM8510 CODEC" 1776 depends on SND_SOC_I2C_AND_SPI 1777 1778config SND_SOC_WM8523 1779 tristate "Wolfson Microelectronics WM8523 DAC" 1780 depends on I2C 1781 1782config SND_SOC_WM8524 1783 tristate "Wolfson Microelectronics WM8524 DAC" 1784 depends on GPIOLIB 1785 1786config SND_SOC_WM8580 1787 tristate "Wolfson Microelectronics WM8580 and WM8581 CODECs" 1788 depends on I2C 1789 1790config SND_SOC_WM8711 1791 tristate "Wolfson Microelectronics WM8711 CODEC" 1792 depends on SND_SOC_I2C_AND_SPI 1793 1794config SND_SOC_WM8727 1795 tristate 1796 1797config SND_SOC_WM8728 1798 tristate "Wolfson Microelectronics WM8728 DAC" 1799 depends on SND_SOC_I2C_AND_SPI 1800 1801config SND_SOC_WM8731 1802 tristate 1803 1804config SND_SOC_WM8731_I2C 1805 tristate "Wolfson Microelectronics WM8731 CODEC with I2C" 1806 depends on I2C 1807 select REGMAP 1808 select SND_SOC_WM8731 1809 1810config SND_SOC_WM8731_SPI 1811 tristate "Wolfson Microelectronics WM8731 CODEC with SPI" 1812 depends on SPI 1813 select REGMAP 1814 select SND_SOC_WM8731 1815 1816config SND_SOC_WM8737 1817 tristate "Wolfson Microelectronics WM8737 ADC" 1818 depends on SND_SOC_I2C_AND_SPI 1819 1820config SND_SOC_WM8741 1821 tristate "Wolfson Microelectronics WM8741 DAC" 1822 depends on SND_SOC_I2C_AND_SPI 1823 1824config SND_SOC_WM8750 1825 tristate "Wolfson Microelectronics WM8750 CODEC" 1826 depends on SND_SOC_I2C_AND_SPI 1827 1828config SND_SOC_WM8753 1829 tristate "Wolfson Microelectronics WM8753 CODEC" 1830 depends on SND_SOC_I2C_AND_SPI 1831 1832config SND_SOC_WM8770 1833 tristate "Wolfson Microelectronics WM8770 CODEC" 1834 depends on SPI_MASTER 1835 1836config SND_SOC_WM8776 1837 tristate "Wolfson Microelectronics WM8776 CODEC" 1838 depends on SND_SOC_I2C_AND_SPI 1839 1840config SND_SOC_WM8782 1841 tristate "Wolfson Microelectronics WM8782 ADC" 1842 1843config SND_SOC_WM8804 1844 tristate 1845 1846config SND_SOC_WM8804_I2C 1847 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver I2C" 1848 depends on I2C 1849 select SND_SOC_WM8804 1850 select REGMAP_I2C 1851 1852config SND_SOC_WM8804_SPI 1853 tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver SPI" 1854 depends on SPI_MASTER 1855 select SND_SOC_WM8804 1856 select REGMAP_SPI 1857 1858config SND_SOC_WM8900 1859 tristate 1860 depends on SND_SOC_I2C_AND_SPI 1861 1862config SND_SOC_WM8903 1863 tristate "Wolfson Microelectronics WM8903 CODEC" 1864 depends on I2C 1865 1866config SND_SOC_WM8904 1867 tristate "Wolfson Microelectronics WM8904 CODEC" 1868 depends on I2C 1869 1870config SND_SOC_WM8940 1871 tristate 1872 depends on I2C 1873 1874config SND_SOC_WM8955 1875 tristate 1876 depends on I2C 1877 1878config SND_SOC_WM8960 1879 tristate "Wolfson Microelectronics WM8960 CODEC" 1880 depends on I2C 1881 1882config SND_SOC_WM8961 1883 tristate 1884 depends on I2C 1885 1886config SND_SOC_WM8962 1887 tristate "Wolfson Microelectronics WM8962 CODEC" 1888 depends on I2C && INPUT 1889 1890config SND_SOC_WM8971 1891 tristate 1892 depends on I2C 1893 1894config SND_SOC_WM8974 1895 tristate "Wolfson Microelectronics WM8974 codec" 1896 depends on I2C 1897 1898config SND_SOC_WM8978 1899 tristate "Wolfson Microelectronics WM8978 codec" 1900 depends on I2C 1901 1902config SND_SOC_WM8983 1903 tristate 1904 depends on SND_SOC_I2C_AND_SPI 1905 1906config SND_SOC_WM8985 1907 tristate "Wolfson Microelectronics WM8985 and WM8758 codec driver" 1908 depends on SND_SOC_I2C_AND_SPI 1909 1910config SND_SOC_WM8988 1911 tristate 1912 depends on SND_SOC_I2C_AND_SPI 1913 1914config SND_SOC_WM8990 1915 tristate 1916 depends on I2C 1917 1918config SND_SOC_WM8991 1919 tristate 1920 depends on I2C 1921 1922config SND_SOC_WM8993 1923 tristate 1924 depends on I2C 1925 1926config SND_SOC_WM8994 1927 tristate 1928 1929config SND_SOC_WM8995 1930 tristate 1931 depends on SND_SOC_I2C_AND_SPI 1932 1933config SND_SOC_WM8996 1934 tristate 1935 depends on I2C 1936 1937config SND_SOC_WM8997 1938 tristate 1939 depends on MFD_WM8997 && MFD_ARIZONA 1940 1941config SND_SOC_WM8998 1942 tristate 1943 depends on MFD_WM8998 && MFD_ARIZONA 1944 1945config SND_SOC_WM9081 1946 tristate 1947 depends on I2C 1948 1949config SND_SOC_WM9090 1950 tristate 1951 depends on I2C 1952 1953config SND_SOC_WM9705 1954 tristate 1955 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW 1956 select REGMAP_AC97 1957 select AC97_BUS_COMPAT if AC97_BUS_NEW 1958 1959config SND_SOC_WM9712 1960 tristate 1961 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW 1962 select REGMAP_AC97 1963 select AC97_BUS_COMPAT if AC97_BUS_NEW 1964 1965config SND_SOC_WM9713 1966 tristate 1967 depends on SND_SOC_AC97_BUS || AC97_BUS_NEW 1968 select REGMAP_AC97 1969 select AC97_BUS_COMPAT if AC97_BUS_NEW 1970 1971config SND_SOC_WSA881X 1972 tristate "WSA881X Codec" 1973 depends on SOUNDWIRE 1974 select REGMAP_SOUNDWIRE 1975 tristate 1976 help 1977 This enables support for Qualcomm WSA8810/WSA8815 Class-D 1978 Smart Speaker Amplifier. 1979 1980config SND_SOC_ZL38060 1981 tristate "Microsemi ZL38060 Connected Home Audio Processor" 1982 depends on SPI_MASTER 1983 select REGMAP 1984 help 1985 Support for ZL38060 Connected Home Audio Processor from Microsemi, 1986 which consists of a Digital Signal Processor (DSP), several Digital 1987 Audio Interfaces (DAIs), analog outputs, and a block of 14 GPIOs. 1988 1989# Amp 1990config SND_SOC_LM4857 1991 tristate 1992 depends on I2C 1993 1994config SND_SOC_MAX9759 1995 tristate "Maxim MAX9759 speaker Amplifier" 1996 depends on GPIOLIB 1997 1998config SND_SOC_MAX9768 1999 tristate 2000 depends on I2C 2001 2002config SND_SOC_MAX9877 2003 tristate 2004 depends on I2C 2005 2006config SND_SOC_MC13783 2007 tristate 2008 depends on MFD_MC13XXX 2009 2010config SND_SOC_ML26124 2011 tristate 2012 depends on I2C 2013 2014config SND_SOC_MT6351 2015 tristate "MediaTek MT6351 Codec" 2016 2017config SND_SOC_MT6358 2018 tristate "MediaTek MT6358 Codec" 2019 help 2020 Enable support for the platform which uses MT6358 as 2021 external codec device. 2022 2023config SND_SOC_MT6359 2024 tristate "MediaTek MT6359 Codec" 2025 depends on MTK_PMIC_WRAP 2026 help 2027 Enable support for the platform which uses MT6359 as 2028 external codec device. 2029 2030config SND_SOC_MT6359_ACCDET 2031 tristate "MediaTek MT6359 ACCDET driver" 2032 depends on MTK_PMIC_WRAP 2033 help 2034 ACCDET means Accessory Detection technology, MediaTek develop it 2035 for ASoC codec soc-jack detection mechanism. 2036 Select N if you don't have jack on board. 2037 2038config SND_SOC_MT6660 2039 tristate "Mediatek MT6660 Speaker Amplifier" 2040 depends on I2C 2041 help 2042 MediaTek MT6660 is a smart power amplifier which contain 2043 speaker protection, multi-band DRC, equalizer functions. 2044 Select N if you don't have MT6660 on board. 2045 Select M to build this as module. 2046 2047config SND_SOC_NAU8315 2048 tristate "Nuvoton Technology Corporation NAU8315 CODEC" 2049 depends on GPIOLIB 2050 2051config SND_SOC_NAU8540 2052 tristate "Nuvoton Technology Corporation NAU85L40 CODEC" 2053 depends on I2C 2054 2055config SND_SOC_NAU8810 2056 tristate "Nuvoton Technology Corporation NAU88C10 CODEC" 2057 depends on I2C 2058 2059config SND_SOC_NAU8821 2060 tristate "Nuvoton Technology Corporation NAU88L21 CODEC" 2061 depends on I2C 2062 2063config SND_SOC_NAU8822 2064 tristate "Nuvoton Technology Corporation NAU88C22 CODEC" 2065 depends on I2C 2066 2067config SND_SOC_NAU8824 2068 tristate "Nuvoton Technology Corporation NAU88L24 CODEC" 2069 depends on I2C 2070 2071config SND_SOC_NAU8825 2072 tristate 2073 depends on I2C 2074 2075config SND_SOC_TPA6130A2 2076 tristate "Texas Instruments TPA6130A2 headphone amplifier" 2077 depends on I2C 2078 2079config SND_SOC_LPASS_MACRO_COMMON 2080 tristate 2081 2082config SND_SOC_LPASS_WSA_MACRO 2083 depends on COMMON_CLK 2084 select REGMAP_MMIO 2085 tristate "Qualcomm WSA Macro in LPASS(Low Power Audio SubSystem)" 2086 2087config SND_SOC_LPASS_VA_MACRO 2088 depends on COMMON_CLK 2089 select REGMAP_MMIO 2090 select SND_SOC_LPASS_MACRO_COMMON 2091 tristate "Qualcomm VA Macro in LPASS(Low Power Audio SubSystem)" 2092 2093config SND_SOC_LPASS_RX_MACRO 2094 depends on COMMON_CLK 2095 select REGMAP_MMIO 2096 select SND_SOC_LPASS_MACRO_COMMON 2097 tristate "Qualcomm RX Macro in LPASS(Low Power Audio SubSystem)" 2098 2099config SND_SOC_LPASS_TX_MACRO 2100 depends on COMMON_CLK 2101 select REGMAP_MMIO 2102 select SND_SOC_LPASS_MACRO_COMMON 2103 tristate "Qualcomm TX Macro in LPASS(Low Power Audio SubSystem)" 2104 2105endmenu 2106