config SND_DAVINCI_SOC
	tristate "SoC Audio for the TI DAVINCI chip"
	depends on ARCH_DAVINCI
	help
	  Say Y or M if you want to add support for codecs attached to
	  the DAVINCI AC97 or I2S interface. You will also need
	  to select the audio interfaces to support below.

config SND_DAVINCI_SOC_I2S
	tristate

config SND_DAVINCI_SOC_MCASP
	tristate

config SND_DAVINCI_SOC_EVM
	tristate "SoC Audio support for DaVinci DM6446 or DM355 EVM"
	depends on SND_DAVINCI_SOC
	depends on MACH_DAVINCI_EVM || MACH_DAVINCI_DM355_EVM
	select SND_DAVINCI_SOC_I2S
	select SND_SOC_TLV320AIC3X
	help
	  Say Y if you want to add support for SoC audio on TI
	  DaVinci DM6446 or DM355 EVM platforms.

config  SND_DM6467_SOC_EVM
	tristate "SoC Audio support for DaVinci DM6467 EVM"
	depends on SND_DAVINCI_SOC && MACH_DAVINCI_DM6467_EVM
	select SND_DAVINCI_SOC_MCASP
	select SND_SOC_TLV320AIC3X
	select SND_SOC_SPDIF

	help
	  Say Y if you want to add support for SoC audio on TI

config SND_DAVINCI_SOC_SFFSDR
	tristate "SoC Audio support for SFFSDR"
	depends on SND_DAVINCI_SOC && MACH_SFFSDR
	select SND_DAVINCI_SOC_I2S
	select SND_SOC_PCM3008
	select SFFSDR_FPGA
	help
	  Say Y if you want to add support for SoC audio on
	  Lyrtech SFFSDR board.

config  SND_DA830_SOC_EVM
	tristate "SoC Audio support for DA830/OMAP-L137 EVM"
	depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA830_EVM
	select SND_DAVINCI_SOC_MCASP
	select SND_SOC_TLV320AIC3X

	help
	  Say Y if you want to add support for SoC audio on TI
	  DA830/OMAP-L137 EVM

config  SND_DA850_SOC_EVM
	tristate "SoC Audio support for DA850/OMAP-L138 EVM"
	depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA850_EVM
	select SND_DAVINCI_SOC_MCASP
	select SND_SOC_TLV320AIC3X
	help
	  Say Y if you want to add support for SoC audio on TI
	  DA850/OMAP-L138 EVM

