config SND_SOC_TEGRA
	tristate "SoC Audio for the Tegra System-on-Chip"
	depends on ARCH_TEGRA && (TEGRA_SYSTEM_DMA || TEGRA20_APB_DMA)
	select REGMAP_MMIO
	select SND_SOC_DMAENGINE_PCM if TEGRA20_APB_DMA
	help
	  Say Y or M here if you want support for SoC audio on Tegra.

config SND_SOC_TEGRA20_DAS
	tristate
	depends on SND_SOC_TEGRA && ARCH_TEGRA_2x_SOC
	help
	  Say Y or M if you want to add support for the Tegra20 DAS module.
	  You will also need to select the individual machine drivers to
	  support below.

config SND_SOC_TEGRA20_I2S
	tristate
	depends on SND_SOC_TEGRA && ARCH_TEGRA_2x_SOC
	select SND_SOC_TEGRA20_DAS
	help
	  Say Y or M if you want to add support for codecs attached to the
	  Tegra20 I2S interface. You will also need to select the individual
	  machine drivers to support below.

config SND_SOC_TEGRA20_SPDIF
	tristate
	depends on SND_SOC_TEGRA && ARCH_TEGRA_2x_SOC
	default m
	help
	  Say Y or M if you want to add support for the Tegra20 SPDIF interface.
	  You will also need to select the individual machine drivers to support
	  below.

config SND_SOC_TEGRA30_AHUB
	tristate
	depends on SND_SOC_TEGRA && ARCH_TEGRA_3x_SOC
	help
	  Say Y or M if you want to add support for the Tegra20 AHUB module.
	  You will also need to select the individual machine drivers to
	  support below.

config SND_SOC_TEGRA30_I2S
	tristate
	depends on SND_SOC_TEGRA && ARCH_TEGRA_3x_SOC
	select SND_SOC_TEGRA30_AHUB
	help
	  Say Y or M if you want to add support for codecs attached to the
	  Tegra30 I2S interface. You will also need to select the individual
	  machine drivers to support below.

config SND_SOC_TEGRA_WM8753
	tristate "SoC Audio support for Tegra boards using a WM8753 codec"
	depends on SND_SOC_TEGRA && I2C
	select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
	select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC
	select SND_SOC_WM8753
	help
	  Say Y or M here if you want to add support for SoC audio on Tegra
	  boards using the WM8753 codec, such as Whistler.

config SND_SOC_TEGRA_WM8903
	tristate "SoC Audio support for Tegra boards using a WM8903 codec"
	depends on SND_SOC_TEGRA && I2C
	select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
	select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC
	select SND_SOC_WM8903
	help
	  Say Y or M here if you want to add support for SoC audio on Tegra
	  boards using the WM8093 codec. Currently, the supported boards are
	  Harmony, Ventana, Seaboard, Kaen, and Aebl.

config SND_SOC_TEGRA_TRIMSLICE
	tristate "SoC Audio support for TrimSlice board"
	depends on SND_SOC_TEGRA && I2C
	select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
	select SND_SOC_TLV320AIC23
	help
	  Say Y or M here if you want to add support for SoC audio on the
	  TrimSlice platform.

config SND_SOC_TEGRA_ALC5632
	tristate "SoC Audio support for Tegra boards using an ALC5632 codec"
	depends on SND_SOC_TEGRA && I2C
	select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
	select SND_SOC_ALC5632
	help
	  Say Y or M here if you want to add support for SoC audio on the
	  Toshiba AC100 netbook.
