menu "IEEE 1394 (FireWire) support"
	depends on HAS_DMA
	depends on PCI || COMPILE_TEST
	# firewire-core does not depend on PCI but is
	# not useful without PCI controller driver

config FIREWIRE
	tristate "FireWire driver stack"
	select CRC_ITU_T
	help
	  This is the new-generation IEEE 1394 (FireWire) driver stack
	  a.k.a. Juju, a new implementation designed for robustness and
	  simplicity.
	  See http://ieee1394.wiki.kernel.org/index.php/Juju_Migration
	  for information about migration from the older Linux 1394 stack
	  to the new driver stack.

	  To compile this driver as a module, say M here: the module will be
	  called firewire-core.

config FIREWIRE_OHCI
	tristate "OHCI-1394 controllers"
	depends on PCI && FIREWIRE && MMU
	help
	  Enable this driver if you have a FireWire controller based
	  on the OHCI specification.  For all practical purposes, this
	  is the only chipset in use, so say Y here.

	  To compile this driver as a module, say M here:  The module will be
	  called firewire-ohci.

config FIREWIRE_SBP2
	tristate "Storage devices (SBP-2 protocol)"
	depends on FIREWIRE && SCSI
	help
	  This option enables you to use SBP-2 devices connected to a
	  FireWire bus.  SBP-2 devices include storage devices like
	  harddisks and DVD drives, also some other FireWire devices
	  like scanners.

	  To compile this driver as a module, say M here:  The module will be
	  called firewire-sbp2.

	  You should also enable support for disks, CD-ROMs, etc. in the SCSI
	  configuration section.

config FIREWIRE_NET
	tristate "IP networking over 1394"
	depends on FIREWIRE && INET
	help
	  This enables IPv4/IPv6 over IEEE 1394, providing IP connectivity
	  with other implementations of RFC 2734/3146 as found on several
	  operating systems.  Multicast support is currently limited.

	  To compile this driver as a module, say M here:  The module will be
	  called firewire-net.

config FIREWIRE_NOSY
	tristate "Nosy - a FireWire traffic sniffer for PCILynx cards"
	depends on PCI
	help
	  Nosy is an IEEE 1394 packet sniffer that is used for protocol
	  analysis and in development of IEEE 1394 drivers, applications,
	  or firmwares.

	  This driver lets you use a Texas Instruments PCILynx 1394 to PCI
	  link layer controller TSB12LV21/A/B as a low-budget bus analyzer.
	  PCILynx is a nowadays very rare IEEE 1394 controller which is
	  not OHCI 1394 compliant.

	  The following cards are known to be based on PCILynx or PCILynx-2:
	  IOI IOI-1394TT (PCI card), Unibrain Fireboard 400 PCI Lynx-2
	  (PCI card), Newer Technology FireWire 2 Go (CardBus card),
	  Apple Power Mac G3 blue & white and G4 with PCI graphics
	  (onboard controller).

	  To compile this driver as a module, say M here:  The module will be
	  called nosy.  Source code of a userspace interface to nosy, called
	  nosy-dump, can be found in tools/firewire/ of the kernel sources.

	  If unsure, say N.

endmenu
