##
## Au1200/Au1550 PSC + DBDMA
##
config SND_SOC_AU1XPSC
	tristate "SoC Audio for Au1200/Au1250/Au1550"
	depends on MIPS_ALCHEMY
	help
	  This option enables support for the Programmable Serial
	  Controllers in AC97 and I2S mode, and the Descriptor-Based DMA
	  Controller (DBDMA) as found on the Au1200/Au1250/Au1550 SoC.

config SND_SOC_AU1XPSC_I2S
	tristate

config SND_SOC_AU1XPSC_AC97
	tristate
	select AC97_BUS
	select SND_AC97_CODEC
	select SND_SOC_AC97_BUS

##
## Au1000/1500/1100 DMA + AC97C/I2SC
##
config SND_SOC_AU1XAUDIO
	tristate "SoC Audio for Au1000/Au1500/Au1100"
	depends on MIPS_ALCHEMY
	help
	  This is a driver set for the AC97 unit and the
	  old DMA controller as found on the Au1000/Au1500/Au1100 chips.

config SND_SOC_AU1XAC97C
	tristate
	select AC97_BUS
	select SND_AC97_CODEC
	select SND_SOC_AC97_BUS

config SND_SOC_AU1XI2SC
	tristate


##
## Boards
##
config SND_SOC_DB1000
	tristate "DB1000 Audio support"
	depends on SND_SOC_AU1XAUDIO
	select SND_SOC_AU1XAC97C
	select SND_SOC_AC97_CODEC
	help
	  Select this option to enable AC97 audio on the early DB1x00 series
	  of boards (DB1000/DB1500/DB1100).

config SND_SOC_DB1200
	tristate "DB1200 AC97+I2S audio support"
	depends on SND_SOC_AU1XPSC
	select SND_SOC_AU1XPSC_AC97
	select SND_SOC_AC97_CODEC
	select SND_SOC_AU1XPSC_I2S
	select SND_SOC_WM8731
	help
	  Select this option to enable audio (AC97 or I2S) on the
	  Alchemy/AMD/RMI DB1200 demoboard.
