# ALSA ARM drivers

menuconfig SND_ARM
	bool "ARM sound devices"
	depends on ARM
	default y
	help
	  Support for sound devices specific to ARM architectures.
	  Drivers that are implemented on ASoC can be found in
	  "ALSA for SoC audio support" section.

if SND_ARM

config SND_ARMAACI
	tristate "ARM PrimeCell PL041 AC Link support"
	depends on ARM_AMBA
	select SND_PCM
	select SND_AC97_CODEC

config SND_PXA2XX_AC97
	tristate "AC97 driver for the Intel PXA2xx chip"
	depends on ARCH_PXA
	select SND_AC97_CODEC
	select SND_PXA2XX_LIB
	select SND_PXA2XX_LIB_AC97
	help
	  Say Y or M if you want to support any AC97 codec attached to
	  the PXA2xx AC97 interface.

endif	# SND_ARM

config SND_PXA2XX_LIB
	tristate
	select SND_AC97_CODEC if SND_PXA2XX_LIB_AC97
	select SND_DMAENGINE_PCM

config SND_PXA2XX_LIB_AC97
	bool
