config SND_PXA2XX_SOC
	tristate "SoC Audio for the Intel PXA2xx chip"
	depends on ARCH_PXA
	select SND_PXA2XX_LIB
	help
	  Say Y or M if you want to add support for codecs attached to
	  the PXA2xx AC97, I2S or SSP interface. You will also need
	  to select the audio interfaces to support below.

config SND_PXA2XX_AC97
	tristate
	select SND_AC97_CODEC

config SND_PXA2XX_SOC_AC97
	tristate
	select AC97_BUS
	select SND_ARM
	select SND_PXA2XX_LIB_AC97
	select SND_SOC_AC97_BUS

config SND_PXA2XX_SOC_I2S
	tristate

config SND_PXA_SOC_SSP
	tristate
	select PXA_SSP

config SND_PXA2XX_SOC_CORGI
	tristate "SoC Audio support for Sharp Zaurus SL-C7x0"
	depends on SND_PXA2XX_SOC && PXA_SHARP_C7xx
	select SND_PXA2XX_SOC_I2S
	select SND_SOC_WM8731
	help
	  Say Y if you want to add support for SoC audio on Sharp
	  Zaurus SL-C7x0 models (Corgi, Shepherd, Husky).

config SND_PXA2XX_SOC_SPITZ
	tristate "SoC Audio support for Sharp Zaurus SL-Cxx00"
	depends on SND_PXA2XX_SOC && PXA_SHARP_Cxx00
	select SND_PXA2XX_SOC_I2S
	select SND_SOC_WM8750
	help
	  Say Y if you want to add support for SoC audio on Sharp
	  Zaurus SL-Cxx00 models (Spitz, Borzoi and Akita).

config SND_PXA2XX_SOC_Z2
	tristate "SoC Audio support for Zipit Z2"
	depends on SND_PXA2XX_SOC && MACH_ZIPIT2
	select SND_PXA2XX_SOC_I2S
	select SND_SOC_WM8750
	help
	  Say Y if you want to add support for SoC audio on Zipit Z2.

config SND_PXA2XX_SOC_POODLE
	tristate "SoC Audio support for Poodle"
	depends on SND_PXA2XX_SOC && MACH_POODLE
	select SND_PXA2XX_SOC_I2S
	select SND_SOC_WM8731
	help
	  Say Y if you want to add support for SoC audio on Sharp
	  Zaurus SL-5600 model (Poodle).

config SND_PXA2XX_SOC_TOSA
	tristate "SoC AC97 Audio support for Tosa"
	depends on SND_PXA2XX_SOC && MACH_TOSA
	depends on MFD_TC6393XB
	select SND_PXA2XX_SOC_AC97
	select SND_SOC_WM9712
	help
	  Say Y if you want to add support for SoC audio on Sharp
	  Zaurus SL-C6000x models (Tosa).

config SND_PXA2XX_SOC_E740
	tristate "SoC AC97 Audio support for e740"
	depends on SND_PXA2XX_SOC && MACH_E740
	select SND_SOC_WM9705
	select SND_PXA2XX_SOC_AC97
	help
	  Say Y if you want to add support for SoC audio on the
	  toshiba e740 PDA

config SND_PXA2XX_SOC_E750
	tristate "SoC AC97 Audio support for e750"
	depends on SND_PXA2XX_SOC && MACH_E750
	select SND_SOC_WM9705
	select SND_PXA2XX_SOC_AC97
	help
	  Say Y if you want to add support for SoC audio on the
	  toshiba e750 PDA

config SND_PXA2XX_SOC_E800
	tristate "SoC AC97 Audio support for e800"
	depends on SND_PXA2XX_SOC && MACH_E800
	select SND_SOC_WM9712
	select SND_PXA2XX_SOC_AC97
	help
	  Say Y if you want to add support for SoC audio on the
	  Toshiba e800 PDA

config SND_PXA2XX_SOC_EM_X270
	tristate "SoC Audio support for CompuLab EM-x270, eXeda and CM-X300"
	depends on SND_PXA2XX_SOC && (MACH_EM_X270 || MACH_EXEDA || \
			MACH_CM_X300)
	select SND_PXA2XX_SOC_AC97
	select SND_SOC_WM9712
	help
	  Say Y if you want to add support for SoC audio on
	  CompuLab EM-x270, eXeda and CM-X300 machines.

config SND_PXA2XX_SOC_PALM27X
	bool "SoC Audio support for Palm T|X, T5, E2 and LifeDrive"
	depends on SND_PXA2XX_SOC && (MACH_PALMLD || MACH_PALMTX || \
			MACH_PALMT5 || MACH_PALMTE2)
	select SND_PXA2XX_SOC_AC97
	select SND_SOC_WM9712
	help
	  Say Y if you want to add support for SoC audio on
	  Palm T|X, T5, E2 or LifeDrive handheld computer.

config SND_SOC_ZYLONITE
	tristate "SoC Audio support for Marvell Zylonite"
	depends on SND_PXA2XX_SOC && MACH_ZYLONITE
	select SND_PXA2XX_SOC_AC97
	select SND_PXA_SOC_SSP
	select SND_SOC_WM9713
	help
	  Say Y if you want to add support for SoC audio on the
	  Marvell Zylonite reference platform.

config SND_SOC_RAUMFELD
	tristate "SoC Audio support Raumfeld audio adapter"
	depends on SND_PXA2XX_SOC && (MACH_RAUMFELD_SPEAKER || MACH_RAUMFELD_CONNECTOR)
	select SND_PXA_SOC_SSP
	select SND_SOC_CS4270
	select SND_SOC_AK4104
	help
	  Say Y if you want to add support for SoC audio on Raumfeld devices

config SND_PXA2XX_SOC_MAGICIAN
	tristate "SoC Audio support for HTC Magician"
	depends on SND_PXA2XX_SOC && MACH_MAGICIAN
	select SND_PXA2XX_SOC_I2S
	select SND_PXA_SOC_SSP
	select SND_SOC_UDA1380
	help
	  Say Y if you want to add support for SoC audio on the
	  HTC Magician.

config SND_PXA2XX_SOC_MIOA701
        tristate "SoC Audio support for MIO A701"
        depends on SND_PXA2XX_SOC && MACH_MIOA701
        select SND_PXA2XX_SOC_AC97
        select SND_SOC_WM9713
        help
          Say Y if you want to add support for SoC audio on the
          MIO A701.

config SND_PXA2XX_SOC_IMOTE2
       tristate "SoC Audio support for IMote 2"
       depends on SND_PXA2XX_SOC && MACH_INTELMOTE2 && I2C
       select SND_PXA2XX_SOC_I2S
       select SND_SOC_WM8940
       help
         Say Y if you want to add support for SoC audio on the
	 IMote 2.
