menuconfig SND_FIREWIRE
	bool "FireWire sound devices"
	depends on FIREWIRE
	default y
	help
	  Support for IEEE-1394/FireWire/iLink sound devices.

if SND_FIREWIRE && FIREWIRE

config SND_FIREWIRE_LIB
	tristate
	depends on SND_PCM

config SND_DICE
	tristate "DICE-based DACs (EXPERIMENTAL)"
	select SND_HWDEP
	select SND_PCM
	select SND_FIREWIRE_LIB
	help
	  Say Y here to include support for many DACs based on the DICE
	  chip family (DICE-II/Jr/Mini) from TC Applied Technologies.

	  At the moment, this driver supports playback only.  If you
	  want to use devices that support capturing, use FFADO instead.

	  To compile this driver as a module, choose M here: the module
	  will be called snd-dice.

config SND_FIREWIRE_SPEAKERS
	tristate "FireWire speakers"
	select SND_PCM
	select SND_FIREWIRE_LIB
	help
	  Say Y here to include support for the Griffin FireWave Surround
	  and the LaCie FireWire Speakers.

	  To compile this driver as a module, choose M here: the module
	  will be called snd-firewire-speakers.

config SND_ISIGHT
	tristate "Apple iSight microphone"
	select SND_PCM
	select SND_FIREWIRE_LIB
	help
	  Say Y here to include support for the front and rear microphones
	  of the Apple iSight web camera.

	  To compile this driver as a module, choose M here: the module
	  will be called snd-isight.

config SND_SCS1X
	tristate "Stanton Control System 1 MIDI"
	select SND_PCM
	select SND_RAWMIDI
	select SND_FIREWIRE_LIB
	help
	  Say Y here to include support for the MIDI ports of the Stanton
	  SCS.1d/SCS.1m DJ controllers.  (SCS.1m audio is still handled
	  by FFADO.)

	  To compile this driver as a module, choose M here: the module
	  will be called snd-scs1x.

config SND_FIREWORKS
	tristate "Echo Fireworks board module support"
	select SND_FIREWIRE_LIB
	select SND_RAWMIDI
	select SND_PCM
	select SND_HWDEP
	help
	  Say Y here to include support for FireWire devices based
	  on Echo Digital Audio Fireworks board:
	   * Mackie Onyx 400F/1200F
	   * Echo AudioFire12/8(until 2009 July)
	   * Echo AudioFire2/4/Pre8/8(since 2009 July)
	   * Echo Fireworks 8/HDMI
	   * Gibson Robot Interface Pack/GoldTop

	  To compile this driver as a module, choose M here: the module
	  will be called snd-fireworks.

endif # SND_FIREWIRE
