Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
[safe/jmp/linux-2.6] / drivers / ieee1394 / Kconfig
index f8ff6b8..e02096c 100644 (file)
@@ -1,9 +1,5 @@
-# -*- shell-script -*-
-
-menu "IEEE 1394 (FireWire) support"
-
 config IEEE1394
-       tristate "IEEE 1394 (FireWire) support"
+       tristate "Legacy alternative FireWire driver stack"
        depends on PCI || BROKEN
        help
          IEEE 1394 describes a high performance serial bus, which is also
@@ -15,50 +11,50 @@ config IEEE1394
          is the core support only, you will also need to select a driver for
          your IEEE 1394 adapter.
 
-         To compile this driver as a module, say M here: the
-         module will be called ieee1394.
+         To compile this driver as a module, say M here: the module will be
+         called ieee1394.
 
-comment "Subsystem Options"
-       depends on IEEE1394
+         NOTE:
+         ieee1394 is superseded by the newer firewire-core driver.  See
+         http://ieee1394.wiki.kernel.org/index.php/Juju_Migration for
+         further information on how to switch to the new FireWire drivers.
 
-config IEEE1394_VERBOSEDEBUG
-       bool "Excessive debugging output"
-       depends on IEEE1394
+config IEEE1394_OHCI1394
+       tristate "OHCI-1394 controllers"
+       depends on PCI && IEEE1394
        help
-         If you say Y here, you will get very verbose debugging logs from
-         the subsystem which includes a dump of the header of every sent
-         and received packet.  This can amount to a high amount of data
-         collected in a very short time which is usually also saved to
-         disk by the system logging daemons.
+         Enable this driver if you have an IEEE 1394 controller based on the
+         OHCI-1394 specification. The current driver is only tested with OHCI
+         chipsets made by Texas Instruments and NEC. Most third-party vendors
+         use one of these chipsets.  It should work with any OHCI-1394
+         compliant card, however.
 
-         Say Y if you really want or need the debugging output, everyone
-         else says N.
+         To compile this driver as a module, say M here: the module will be
+         called ohci1394.
 
-config IEEE1394_EXTRA_CONFIG_ROMS
-       bool "Build in extra config rom entries for certain functionality"
-       depends on IEEE1394
-       help
-         Some IEEE1394 functionality depends on extra config rom entries
-         being available in the host adapters CSR. These options will
-         allow you to choose which ones.
+         NOTE:
+         ohci1394 is superseded by the newer firewire-ohci driver.  See
+         http://ieee1394.wiki.kernel.org/index.php/Juju_Migration for
+         further information on how to switch to the new FireWire drivers.
 
-config IEEE1394_CONFIG_ROM_IP1394
-       bool "IP-1394 Entry"
-       depends on IEEE1394_EXTRA_CONFIG_ROMS && IEEE1394
-       help
-         Adds an entry for using IP-over-1394. If you want to use your
-         IEEE1394 bus as a network for IP systems (including interacting
-         with MacOSX and WinXP IP-over-1394), enable this option and the
-         eth1394 option below.
+         If you want to install firewire-ohci and ohci1394 together, you
+         should configure them only as modules and blacklist the driver(s)
+         which you don't want to have auto-loaded.  Add either
 
-comment "Device Drivers"
-       depends on IEEE1394
+             blacklist ohci1394
+             blacklist video1394
+             blacklist dv1394
+         or
+             blacklist firewire-ohci
+
+         to /etc/modprobe.conf or /etc/modprobe.d/* and update modprobe.conf
+         depending on your distribution.
 
-comment "Texas Instruments PCILynx requires I2C"
+comment "PCILynx controller requires I2C"
        depends on IEEE1394 && I2C=n
 
 config IEEE1394_PCILYNX
-       tristate "Texas Instruments PCILynx support"
+       tristate "PCILynx controller"
        depends on PCI && IEEE1394 && I2C
        select I2C_ALGOBIT
        help
@@ -66,38 +62,18 @@ config IEEE1394_PCILYNX
          Instruments PCILynx chip.  Note: this driver is written for revision
          2 of this chip and may not work with revision 0.
 
-         To compile this driver as a module, say M here: the
-         module will be called pcilynx.
-
-config IEEE1394_OHCI1394
-       tristate "OHCI-1394 support"
-       depends on PCI && IEEE1394
-       help
-         Enable this driver if you have an IEEE 1394 controller based on the
-         OHCI-1394 specification. The current driver is only tested with OHCI
-         chipsets made by Texas Instruments and NEC. Most third-party vendors
-         use one of these chipsets.  It should work with any OHCI-1394
-         compliant card, however.
+         To compile this driver as a module, say M here: the module will be
+         called pcilynx.
 
-         To compile this driver as a module, say M here: the
-         module will be called ohci1394.
-
-comment "Protocol Drivers"
-       depends on IEEE1394
-
-config IEEE1394_VIDEO1394
-       tristate "OHCI-1394 Video support"
-       depends on IEEE1394 && IEEE1394_OHCI1394
-       help
-         This option enables video device usage for OHCI-1394 cards.  Enable
-         this option only if you have an IEEE 1394 video device connected to
-         an OHCI-1394 card.
+         Only some old and now very rare PCI and CardBus cards and
+         PowerMacs G3 B&W contain the PCILynx controller.  Therefore
+         almost everybody can say N here.
 
 comment "SBP-2 support (for storage devices) requires SCSI"
        depends on IEEE1394 && SCSI=n
 
 config IEEE1394_SBP2
-       tristate "SBP-2 support (Harddisks etc.)"
+       tristate "Storage devices (SBP-2 protocol)"
        depends on IEEE1394 && SCSI
        help
          This option enables you to use SBP-2 devices connected to an IEEE
@@ -107,9 +83,17 @@ config IEEE1394_SBP2
          You should also enable support for disks, CD-ROMs, etc. in the SCSI
          configuration section.
 
+         To compile this driver as a module, say M here: the module will be
+         called sbp2.
+
+         NOTE:
+         sbp2 is superseded by the newer firewire-sbp2 driver. See
+         http://ieee1394.wiki.kernel.org/index.php/Juju_Migration for
+         further information on how to switch to the new FireWire drivers.
+
 config IEEE1394_SBP2_PHYS_DMA
        bool "Enable replacement for physical DMA in SBP2"
-       depends on IEEE1394 && IEEE1394_SBP2 && EXPERIMENTAL && (X86_32 || PPC_32)
+       depends on IEEE1394_SBP2 && VIRT_TO_BUS && EXPERIMENTAL
        help
          This builds sbp2 for use with non-OHCI host adapters which do not
          support physical DMA or for when ohci1394 is run with phys_dma=0.
@@ -120,11 +104,15 @@ config IEEE1394_SBP2_PHYS_DMA
          This option is buggy and currently broken on some architectures.
          If unsure, say N.
 
+config IEEE1394_ETH1394_ROM_ENTRY
+       depends on IEEE1394
+       bool
+       default n
+
 config IEEE1394_ETH1394
-       tristate "Ethernet over 1394"
+       tristate "IP networking over 1394 (experimental)"
        depends on IEEE1394 && EXPERIMENTAL && INET
-       select IEEE1394_CONFIG_ROM_IP1394
-       select IEEE1394_EXTRA_CONFIG_ROMS
+       select IEEE1394_ETH1394_ROM_ENTRY
        help
          This driver implements a functional majority of RFC 2734: IPv4 over
          1394.  It will provide IP connectivity with implementations of RFC
@@ -133,24 +121,62 @@ config IEEE1394_ETH1394
          This driver is still considered experimental.  It does not yet support
          MCAP, therefore multicast support is significantly limited.
 
+         The module is called eth1394 although it does not emulate Ethernet.
+
+         NOTE:
+         eth1394 is superseded by the newer firewire-net driver. See
+         http://ieee1394.wiki.kernel.org/index.php/Juju_Migration for
+         further information on how to switch to the new FireWire drivers.
+
+config IEEE1394_RAWIO
+       tristate "raw1394 userspace interface"
+       depends on IEEE1394
+       help
+         This option adds support for the raw1394 device file which enables
+         direct communication of user programs with IEEE 1394 devices
+         (isochronous and asynchronous).  Almost all application programs
+         which access FireWire require this option.
+
+         To compile this driver as a module, say M here: the module will be
+         called raw1394.
+
+         NOTE:
+         raw1394 is superseded by the newer firewire-core driver. See
+         http://ieee1394.wiki.kernel.org/index.php/Juju_Migration for
+         further information on how to switch to the new FireWire drivers.
+
+config IEEE1394_VIDEO1394
+       tristate "video1394 userspace interface"
+       depends on IEEE1394 && IEEE1394_OHCI1394
+       help
+         This option adds support for the video1394 device files which enable
+         isochronous communication of user programs with IEEE 1394 devices,
+         especially video capture or export.  This interface is used by all
+         libdc1394 based programs and by several other programs, in addition to
+         the raw1394 interface.  It is generally not required for DV capture.
+
+         To compile this driver as a module, say M here: the module will be
+         called video1394.
+
+         NOTE:
+         video1394 is superseded by the newer firewire-core driver. See
+         http://ieee1394.wiki.kernel.org/index.php/Juju_Migration for
+         further information on how to switch to the new FireWire drivers.
+
 config IEEE1394_DV1394
-       tristate "OHCI-DV I/O support (deprecated)"
+       tristate "dv1394 userspace interface (deprecated)"
        depends on IEEE1394 && IEEE1394_OHCI1394
        help
          The dv1394 driver is unsupported and may be removed from Linux in a
-         future release.  Its functionality is now provided by raw1394 together
-         with libraries such as libiec61883.
+         future release.  Its functionality is now provided by either
+         raw1394 or firewire-core together with libraries such as libiec61883.
 
-config IEEE1394_RAWIO
-       tristate "Raw IEEE1394 I/O support"
+config IEEE1394_VERBOSEDEBUG
+       bool "Excessive debugging output"
        depends on IEEE1394
        help
-         Say Y here if you want support for the raw device. This is generally
-         a good idea, so you should say Y here. The raw device enables
-         direct communication of user programs with the IEEE 1394 bus and
-         thus with the attached peripherals.
-
-         To compile this driver as a module, say M here: the
-         module will be called raw1394.
+         If you say Y here, you will get very verbose debugging logs from the
+         ieee1394 drivers, including sent and received packet headers.  This
+         will quickly result in large amounts of data sent to the system log.
 
-endmenu
+         Say Y if you really need the debugging output.  Everyone else says N.