| # Helper to resolve issues with configs that have SPI enabled but I2C |
| # modular, meaning we can't build the codec driver in with I2C support. |
| # We use an ordered list of conditional defaults to pick the appropriate |
| # setting - SPI can't be modular so that case doesn't need to be covered. |
| config SND_SOC_I2C_AND_SPI |
| tristate |
| default m if I2C=m |
| default y if I2C=y |
| default y if SPI_MASTER=y |
| |
| menu "CODEC drivers" |
| |
| config SND_SOC_ALL_CODECS |
| tristate "Build all ASoC CODEC drivers" |
| depends on COMPILE_TEST |
| select SND_SOC_88PM860X if MFD_88PM860X |
| select SND_SOC_L3 |
| select SND_SOC_AB8500_CODEC if ABX500_CORE |
| select SND_SOC_AC97_CODEC if SND_SOC_AC97_BUS |
| select SND_SOC_AD1836 if SPI_MASTER |
| select SND_SOC_AD193X_SPI if SPI_MASTER |
| select SND_SOC_AD193X_I2C if I2C |
| select SND_SOC_AD1980 if SND_SOC_AC97_BUS |
| select SND_SOC_AD73311 |
| select SND_SOC_ADAU1373 if I2C |
| select SND_SOC_ADAV801 if SPI_MASTER |
| select SND_SOC_ADAV803 if I2C |
| select SND_SOC_ADAU1977_SPI if SPI_MASTER |
| select SND_SOC_ADAU1977_I2C if I2C |
| select SND_SOC_ADAU1701 if I2C |
| select SND_SOC_ADS117X |
| select SND_SOC_AK4104 if SPI_MASTER |
| select SND_SOC_AK4535 if I2C |
| select SND_SOC_AK4554 |
| select SND_SOC_AK4641 if I2C |
| select SND_SOC_AK4642 if I2C |
| select SND_SOC_AK4671 if I2C |
| select SND_SOC_AK5386 |
| select SND_SOC_ALC5623 if I2C |
| select SND_SOC_ALC5632 if I2C |
| select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC |
| select SND_SOC_CS42L51 if I2C |
| select SND_SOC_CS42L52 if I2C |
| select SND_SOC_CS42L73 if I2C |
| select SND_SOC_CS4270 if I2C |
| select SND_SOC_CS4271 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_CS42XX8_I2C if I2C |
| select SND_SOC_CX20442 if TTY |
| select SND_SOC_DA7210 if I2C |
| select SND_SOC_DA7213 if I2C |
| select SND_SOC_DA732X if I2C |
| select SND_SOC_DA9055 if I2C |
| select SND_SOC_BT_SCO |
| select SND_SOC_ISABELLE if I2C |
| select SND_SOC_JZ4740_CODEC |
| select SND_SOC_LM4857 if I2C |
| select SND_SOC_LM49453 if I2C |
| select SND_SOC_MAX98088 if I2C |
| select SND_SOC_MAX98090 if I2C |
| select SND_SOC_MAX98095 if I2C |
| select SND_SOC_MAX9850 if I2C |
| select SND_SOC_MAX9768 if I2C |
| select SND_SOC_MAX9877 if I2C |
| select SND_SOC_MC13783 if MFD_MC13XXX |
| select SND_SOC_ML26124 if I2C |
| select SND_SOC_HDMI_CODEC |
| select SND_SOC_PCM1681 if I2C |
| select SND_SOC_PCM1792A if SPI_MASTER |
| select SND_SOC_PCM3008 |
| select SND_SOC_PCM512x_I2C if I2C |
| select SND_SOC_PCM512x_SPI if SPI_MASTER |
| select SND_SOC_RT5631 if I2C |
| select SND_SOC_RT5640 if I2C |
| select SND_SOC_RT5645 if I2C |
| select SND_SOC_RT5651 if I2C |
| select SND_SOC_RT5677 if I2C |
| select SND_SOC_SGTL5000 if I2C |
| select SND_SOC_SI476X if MFD_SI476X_CORE |
| select SND_SOC_SIRF_AUDIO_CODEC |
| select SND_SOC_SN95031 if INTEL_SCU_IPC |
| select SND_SOC_SPDIF |
| select SND_SOC_SSM2518 if I2C |
| select SND_SOC_SSM2602_SPI if SPI_MASTER |
| select SND_SOC_SSM2602_I2C if I2C |
| select SND_SOC_STA32X if I2C |
| select SND_SOC_STA529 if I2C |
| select SND_SOC_STAC9766 if SND_SOC_AC97_BUS |
| select SND_SOC_TAS5086 if I2C |
| select SND_SOC_TLV320AIC23_I2C if I2C |
| select SND_SOC_TLV320AIC23_SPI if SPI_MASTER |
| select SND_SOC_TLV320AIC26 if SPI_MASTER |
| select SND_SOC_TLV320AIC31XX if I2C |
| select SND_SOC_TLV320AIC32X4 if I2C |
| select SND_SOC_TLV320AIC3X if I2C |
| select SND_SOC_TPA6130A2 if I2C |
| select SND_SOC_TLV320DAC33 if I2C |
| select SND_SOC_TWL4030 if TWL4030_CORE |
| select SND_SOC_TWL6040 if TWL6040_CORE |
| select SND_SOC_UDA134X |
| select SND_SOC_UDA1380 if I2C |
| select SND_SOC_WL1273 if MFD_WL1273_CORE |
| select SND_SOC_WM0010 if SPI_MASTER |
| select SND_SOC_WM1250_EV1 if I2C |
| select SND_SOC_WM2000 if I2C |
| select SND_SOC_WM2200 if I2C |
| select SND_SOC_WM5100 if I2C |
| select SND_SOC_WM5102 if MFD_WM5102 |
| select SND_SOC_WM5110 if MFD_WM5110 |
| select SND_SOC_WM8350 if MFD_WM8350 |
| select SND_SOC_WM8400 if MFD_WM8400 |
| select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8523 if I2C |
| select SND_SOC_WM8580 if I2C |
| select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8727 |
| select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8770 if SPI_MASTER |
| select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8782 |
| select SND_SOC_WM8804 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8900 if I2C |
| select SND_SOC_WM8903 if I2C |
| select SND_SOC_WM8904 if I2C |
| select SND_SOC_WM8940 if I2C |
| select SND_SOC_WM8955 if I2C |
| select SND_SOC_WM8960 if I2C |
| select SND_SOC_WM8961 if I2C |
| select SND_SOC_WM8962 if I2C |
| select SND_SOC_WM8971 if I2C |
| select SND_SOC_WM8974 if I2C |
| select SND_SOC_WM8978 if I2C |
| select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8990 if I2C |
| select SND_SOC_WM8991 if I2C |
| select SND_SOC_WM8993 if I2C |
| select SND_SOC_WM8994 if MFD_WM8994 |
| select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI |
| select SND_SOC_WM8996 if I2C |
| select SND_SOC_WM8997 if MFD_WM8997 |
| select SND_SOC_WM9081 if I2C |
| select SND_SOC_WM9090 if I2C |
| select SND_SOC_WM9705 if SND_SOC_AC97_BUS |
| select SND_SOC_WM9712 if SND_SOC_AC97_BUS |
| select SND_SOC_WM9713 if SND_SOC_AC97_BUS |
| help |
| Normally ASoC codec drivers are only built if a machine driver which |
| uses them is also built since they are only usable with a machine |
| driver. Selecting this option will allow these drivers to be built |
| without an explicit machine driver for test and development purposes. |
| |
| Support for the bus types used to access the codecs to be built must |
| be selected separately. |
| |
| If unsure select "N". |
| |
| config SND_SOC_88PM860X |
| tristate |
| |
| config SND_SOC_ARIZONA |
| tristate |
| default y if SND_SOC_WM5102=y |
| default y if SND_SOC_WM5110=y |
| default y if SND_SOC_WM8997=y |
| default m if SND_SOC_WM5102=m |
| default m if SND_SOC_WM5110=m |
| default m if SND_SOC_WM8997=m |
| |
| config SND_SOC_WM_HUBS |
| tristate |
| default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y |
| default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m |
| |
| config SND_SOC_WM_ADSP |
| tristate |
| default y if SND_SOC_WM5102=y |
| default y if SND_SOC_WM5110=y |
| default y if SND_SOC_WM2200=y |
| default m if SND_SOC_WM5102=m |
| default m if SND_SOC_WM5110=m |
| default m if SND_SOC_WM2200=m |
| |
| config SND_SOC_AB8500_CODEC |
| tristate |
| |
| config SND_SOC_AC97_CODEC |
| tristate |
| select SND_AC97_CODEC |
| |
| config SND_SOC_AD1836 |
| tristate |
| |
| config SND_SOC_AD193X |
| tristate |
| |
| config SND_SOC_AD193X_SPI |
| tristate |
| select SND_SOC_AD193X |
| |
| config SND_SOC_AD193X_I2C |
| tristate |
| select SND_SOC_AD193X |
| |
| config SND_SOC_AD1980 |
| tristate |
| |
| config SND_SOC_AD73311 |
| tristate |
| |
| config SND_SOC_ADAU1701 |
| tristate "Analog Devices ADAU1701 CODEC" |
| depends on I2C |
| select SND_SOC_SIGMADSP |
| |
| config SND_SOC_ADAU1373 |
| tristate |
| |
| config SND_SOC_ADAU1977 |
| tristate |
| |
| config SND_SOC_ADAU1977_SPI |
| tristate |
| select SND_SOC_ADAU1977 |
| select REGMAP_SPI |
| |
| config SND_SOC_ADAU1977_I2C |
| tristate |
| select SND_SOC_ADAU1977 |
| select REGMAP_I2C |
| |
| config SND_SOC_ADAV80X |
| tristate |
| |
| config SND_SOC_ADAV801 |
| tristate |
| select SND_SOC_ADAV80X |
| |
| config SND_SOC_ADAV803 |
| tristate |
| select SND_SOC_ADAV80X |
| |
| config SND_SOC_ADS117X |
| tristate |
| |
| config SND_SOC_AK4104 |
| tristate "AKM AK4104 CODEC" |
| depends on SPI_MASTER |
| |
| config SND_SOC_AK4535 |
| tristate |
| |
| config SND_SOC_AK4554 |
| tristate "AKM AK4554 CODEC" |
| |
| config SND_SOC_AK4641 |
| tristate |
| |
| config SND_SOC_AK4642 |
| tristate "AKM AK4642 CODEC" |
| depends on I2C |
| |
| config SND_SOC_AK4671 |
| tristate |
| |
| config SND_SOC_AK5386 |
| tristate "AKM AK5638 CODEC" |
| |
| config SND_SOC_ALC5623 |
| tristate |
| |
| config SND_SOC_ALC5632 |
| tristate |
| |
| config SND_SOC_CQ0093VC |
| tristate |
| |
| config SND_SOC_CS42L51 |
| tristate |
| |
| config SND_SOC_CS42L52 |
| tristate "Cirrus Logic CS42L52 CODEC" |
| depends on I2C |
| |
| config SND_SOC_CS42L73 |
| tristate "Cirrus Logic CS42L73 CODEC" |
| depends on I2C |
| |
| # Cirrus Logic CS4270 Codec |
| config SND_SOC_CS4270 |
| tristate "Cirrus Logic CS4270 CODEC" |
| depends on I2C |
| |
| # Cirrus Logic CS4270 Codec VD = 3.3V Errata |
| # Select if you are affected by the errata where the part will not function |
| # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will |
| # not select any sample rates that require MCLK to be divided by 1.5. |
| config SND_SOC_CS4270_VD33_ERRATA |
| bool |
| depends on SND_SOC_CS4270 |
| |
| config SND_SOC_CS4271 |
| tristate "Cirrus Logic CS4271 CODEC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_CS42XX8 |
| tristate |
| |
| config SND_SOC_CS42XX8_I2C |
| tristate "Cirrus Logic CS42448/CS42888 CODEC (I2C)" |
| depends on I2C |
| select SND_SOC_CS42XX8 |
| select REGMAP_I2C |
| |
| config SND_SOC_CX20442 |
| tristate |
| depends on TTY |
| |
| config SND_SOC_JZ4740_CODEC |
| select REGMAP_MMIO |
| tristate |
| |
| config SND_SOC_L3 |
| tristate |
| |
| config SND_SOC_DA7210 |
| tristate |
| |
| config SND_SOC_DA7213 |
| tristate |
| |
| config SND_SOC_DA732X |
| tristate |
| |
| config SND_SOC_DA9055 |
| tristate |
| |
| config SND_SOC_BT_SCO |
| tristate |
| |
| config SND_SOC_DMIC |
| tristate |
| |
| config SND_SOC_HDMI_CODEC |
| tristate "HDMI stub CODEC" |
| |
| config SND_SOC_ISABELLE |
| tristate |
| |
| config SND_SOC_LM49453 |
| tristate |
| |
| config SND_SOC_MAX98088 |
| tristate |
| |
| config SND_SOC_MAX98090 |
| tristate |
| |
| config SND_SOC_MAX98095 |
| tristate |
| |
| config SND_SOC_MAX9850 |
| tristate |
| |
| config SND_SOC_PCM1681 |
| tristate "Texas Instruments PCM1681 CODEC" |
| depends on I2C |
| |
| config SND_SOC_PCM1792A |
| tristate "Texas Instruments PCM1792A CODEC" |
| depends on SPI_MASTER |
| |
| config SND_SOC_PCM3008 |
| tristate |
| |
| config SND_SOC_PCM512x |
| tristate |
| |
| config SND_SOC_PCM512x_I2C |
| tristate "Texas Instruments PCM512x CODECs - I2C" |
| depends on I2C |
| select SND_SOC_PCM512x |
| select REGMAP_I2C |
| |
| config SND_SOC_PCM512x_SPI |
| tristate "Texas Instruments PCM512x CODECs - SPI" |
| depends on SPI_MASTER |
| select SND_SOC_PCM512x |
| select REGMAP_SPI |
| |
| config SND_SOC_RT5631 |
| tristate |
| |
| config SND_SOC_RT5640 |
| tristate |
| |
| config SND_SOC_RT5645 |
| tristate |
| |
| config SND_SOC_RT5651 |
| tristate |
| |
| config SND_SOC_RT5677 |
| tristate |
| |
| #Freescale sgtl5000 codec |
| config SND_SOC_SGTL5000 |
| tristate "Freescale SGTL5000 CODEC" |
| depends on I2C |
| |
| config SND_SOC_SI476X |
| tristate |
| |
| config SND_SOC_SIGMADSP |
| tristate |
| select CRC32 |
| |
| config SND_SOC_SIRF_AUDIO_CODEC |
| tristate "SiRF SoC internal audio codec" |
| select REGMAP_MMIO |
| |
| config SND_SOC_SN95031 |
| tristate |
| |
| config SND_SOC_SPDIF |
| tristate "S/PDIF CODEC" |
| |
| config SND_SOC_SSM2518 |
| tristate |
| |
| config SND_SOC_SSM2602 |
| tristate |
| |
| config SND_SOC_SSM2602_SPI |
| select SND_SOC_SSM2602 |
| tristate |
| |
| config SND_SOC_SSM2602_I2C |
| select SND_SOC_SSM2602 |
| tristate |
| |
| config SND_SOC_STA32X |
| tristate |
| |
| config SND_SOC_STA529 |
| tristate |
| |
| config SND_SOC_STAC9766 |
| tristate |
| |
| config SND_SOC_TAS5086 |
| tristate "Texas Instruments TAS5086 speaker amplifier" |
| depends on I2C |
| |
| config SND_SOC_TLV320AIC23 |
| tristate |
| |
| config SND_SOC_TLV320AIC23_I2C |
| tristate |
| select SND_SOC_TLV320AIC23 |
| |
| config SND_SOC_TLV320AIC23_SPI |
| tristate |
| select SND_SOC_TLV320AIC23 |
| |
| config SND_SOC_TLV320AIC26 |
| tristate |
| depends on SPI |
| |
| config SND_SOC_TLV320AIC31XX |
| tristate |
| |
| config SND_SOC_TLV320AIC32X4 |
| tristate |
| |
| config SND_SOC_TLV320AIC3X |
| tristate "Texas Instruments TLV320AIC3x CODECs" |
| depends on I2C |
| |
| config SND_SOC_TLV320DAC33 |
| tristate |
| |
| config SND_SOC_TWL4030 |
| select MFD_TWL4030_AUDIO |
| tristate |
| |
| config SND_SOC_TWL6040 |
| tristate |
| |
| config SND_SOC_UDA134X |
| tristate |
| |
| config SND_SOC_UDA1380 |
| tristate |
| |
| config SND_SOC_WL1273 |
| tristate |
| |
| config SND_SOC_WM0010 |
| tristate |
| |
| config SND_SOC_WM1250_EV1 |
| tristate |
| |
| config SND_SOC_WM2000 |
| tristate |
| |
| config SND_SOC_WM2200 |
| tristate |
| |
| config SND_SOC_WM5100 |
| tristate |
| |
| config SND_SOC_WM5102 |
| tristate |
| |
| config SND_SOC_WM5110 |
| tristate |
| |
| config SND_SOC_WM8350 |
| tristate |
| |
| config SND_SOC_WM8400 |
| tristate |
| |
| config SND_SOC_WM8510 |
| tristate "Wolfson Microelectronics WM8510 CODEC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8523 |
| tristate "Wolfson Microelectronics WM8523 DAC" |
| depends on I2C |
| |
| config SND_SOC_WM8580 |
| tristate "Wolfson Microelectronics WM8523 CODEC" |
| depends on I2C |
| |
| config SND_SOC_WM8711 |
| tristate "Wolfson Microelectronics WM8711 CODEC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8727 |
| tristate |
| |
| config SND_SOC_WM8728 |
| tristate "Wolfson Microelectronics WM8728 DAC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8731 |
| tristate "Wolfson Microelectronics WM8731 CODEC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8737 |
| tristate "Wolfson Microelectronics WM8737 ADC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8741 |
| tristate "Wolfson Microelectronics WM8737 DAC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8750 |
| tristate "Wolfson Microelectronics WM8750 CODEC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8753 |
| tristate "Wolfson Microelectronics WM8753 CODEC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8770 |
| tristate "Wolfson Microelectronics WM8770 CODEC" |
| depends on SPI_MASTER |
| |
| config SND_SOC_WM8776 |
| tristate "Wolfson Microelectronics WM8776 CODEC" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8782 |
| tristate |
| |
| config SND_SOC_WM8804 |
| tristate "Wolfson Microelectronics WM8804 S/PDIF transceiver" |
| depends on SND_SOC_I2C_AND_SPI |
| |
| config SND_SOC_WM8900 |
| tristate |
| |
| config SND_SOC_WM8903 |
| tristate "Wolfson Microelectronics WM8903 CODEC" |
| depends on I2C |
| |
| config SND_SOC_WM8904 |
| tristate |
| |
| config SND_SOC_WM8940 |
| tristate |
| |
| config SND_SOC_WM8955 |
| tristate |
| |
| config SND_SOC_WM8960 |
| tristate |
| |
| config SND_SOC_WM8961 |
| tristate |
| |
| config SND_SOC_WM8962 |
| tristate "Wolfson Microelectronics WM8962 CODEC" |
| depends on I2C |
| |
| config SND_SOC_WM8971 |
| tristate |
| |
| config SND_SOC_WM8974 |
| tristate |
| |
| config SND_SOC_WM8978 |
| tristate |
| |
| config SND_SOC_WM8983 |
| tristate |
| |
| config SND_SOC_WM8985 |
| tristate |
| |
| config SND_SOC_WM8988 |
| tristate |
| |
| config SND_SOC_WM8990 |
| tristate |
| |
| config SND_SOC_WM8991 |
| tristate |
| |
| config SND_SOC_WM8993 |
| tristate |
| |
| config SND_SOC_WM8994 |
| tristate |
| |
| config SND_SOC_WM8995 |
| tristate |
| |
| config SND_SOC_WM8996 |
| tristate |
| |
| config SND_SOC_WM8997 |
| tristate |
| |
| config SND_SOC_WM9081 |
| tristate |
| |
| config SND_SOC_WM9090 |
| tristate |
| |
| config SND_SOC_WM9705 |
| tristate |
| |
| config SND_SOC_WM9712 |
| tristate |
| |
| config SND_SOC_WM9713 |
| tristate |
| |
| # Amp |
| config SND_SOC_LM4857 |
| tristate |
| |
| config SND_SOC_MAX9768 |
| tristate |
| |
| config SND_SOC_MAX9877 |
| tristate |
| |
| config SND_SOC_MC13783 |
| tristate |
| |
| config SND_SOC_ML26124 |
| tristate |
| |
| config SND_SOC_TPA6130A2 |
| tristate "Texas Instruments TPA6130A2 headphone amplifier" |
| depends on I2C |
| |
| endmenu |