gayle: reserve memory resources at once
[safe/jmp/linux-2.6] / drivers / scsi / Kconfig
index 6ac3873..26be540 100644 (file)
@@ -65,6 +65,7 @@ config BLK_DEV_SD
        depends on SCSI
        ---help---
          If you want to use SCSI hard disks, Fibre Channel disks,
+         Serial ATA (SATA) or Parallel ATA (PATA) hard disks,
          USB storage or the SCSI or parallel port version of
          the IOMEGA ZIP drive, say Y and read the SCSI-HOWTO,
          the Disk-HOWTO and the Multi-Disk-HOWTO, available from
@@ -171,14 +172,22 @@ config CHR_DEV_SCH
          don't need this for those tiny 6-slot cdrom changers.  Media
          changers are listed as "Type: Medium Changer" in /proc/scsi/scsi.
          If you have such hardware and want to use it with linux, say Y
-         here.  Check <file:Documentation/scsi-changer.txt> for details.
+         here.  Check <file:Documentation/scsi/scsi-changer.txt> for details.
        
          If you want to compile this as a module ( = code which can be
          inserted in and removed from the running kernel whenever you want),
          say M here and read <file:Documentation/kbuild/modules.txt> and
-         <file:Documentation/scsi.txt>. The module will be called ch.o.
+         <file:Documentation/scsi/scsi.txt>. The module will be called ch.o.
          If unsure, say N.
-       
+
+config SCSI_ENCLOSURE
+       tristate "SCSI Enclosure Support"
+       depends on SCSI && ENCLOSURE_SERVICES
+       help
+         Enclosures are devices sitting on or in SCSI backplanes that
+         manage devices.  If you have a disk cage, the chances are that
+         it has an enclosure device.  Selecting this option will just allow
+         certain enclosure conditions to be reported and is not required.
 
 comment "Some SCSI devices (e.g. CD jukebox) support multiple LUNs"
        depends on SCSI
@@ -271,6 +280,13 @@ config SCSI_FC_ATTRS
          each attached FiberChannel device to sysfs, say Y.
          Otherwise, say N.
 
+config SCSI_FC_TGT_ATTRS
+       bool "SCSI target support for FiberChannel Transport Attributes"
+       depends on SCSI_FC_ATTRS
+       depends on SCSI_TGT = y || SCSI_TGT = SCSI_FC_ATTRS
+       help
+               If you want to use SCSI target mode drivers enable this option.
+
 config SCSI_ISCSI_ATTRS
        tristate "iSCSI Transport Attributes"
        depends on SCSI && NET
@@ -281,17 +297,35 @@ config SCSI_ISCSI_ATTRS
 
 config SCSI_SAS_ATTRS
        tristate "SAS Transport Attributes"
-       depends on SCSI
+       depends on SCSI && BLK_DEV_BSG
        help
          If you wish to export transport-specific information about
          each attached SAS device to sysfs, say Y.
 
 source "drivers/scsi/libsas/Kconfig"
 
+config SCSI_SRP_ATTRS
+       tristate "SRP Transport Attributes"
+       depends on SCSI
+       help
+         If you wish to export transport-specific information about
+         each attached SRP device to sysfs, say Y.
+
+config SCSI_SRP_TGT_ATTRS
+       bool "SCSI target support for SRP Transport Attributes"
+       depends on SCSI_SRP_ATTRS
+       depends on SCSI_TGT = y || SCSI_TGT = SCSI_SRP_ATTRS
+       help
+               If you want to use SCSI target mode drivers enable this option.
+
 endmenu
 
-menu "SCSI low-level drivers"
+menuconfig SCSI_LOWLEVEL
+       bool "SCSI low-level drivers"
        depends on SCSI!=n
+       default y
+
+if SCSI_LOWLEVEL && SCSI
 
 config ISCSI_TCP
        tristate "iSCSI Initiator over TCP/IP"
@@ -315,26 +349,15 @@ config ISCSI_TCP
         The userspace component needed to initialize the driver, documentation,
         and sample configuration files can be found here:
 
-        http://linux-iscsi.sf.net
+        http://open-iscsi.org
 
 config SGIWD93_SCSI
        tristate "SGI WD93C93 SCSI Driver"
-       depends on SGI_IP22 && SCSI
+       depends on SGI_HAS_WD93 && SCSI
        help
          If you have a Western Digital WD93 SCSI controller on
          an SGI MIPS system, say Y.  Otherwise, say N.
 
-config SCSI_DECNCR
-       tristate "DEC NCR53C94 Scsi Driver"
-       depends on MACH_DECSTATION && SCSI && TC
-       help
-         Say Y here to support the NCR53C94 SCSI controller chips on IOASIC
-         based TURBOchannel DECstations and TURBOchannel PMAZ-A cards.
-
-config SCSI_DECSII
-       tristate "DEC SII Scsi Driver"
-       depends on MACH_DECSTATION && SCSI && 32BIT
-
 config BLK_DEV_3W_XXXX_RAID
        tristate "3ware 5/6/7/8xxx ATA-RAID support"
        depends on PCI && SCSI
@@ -362,6 +385,7 @@ config SCSI_3W_9XXX
 config SCSI_7000FASST
        tristate "7000FASST SCSI support"
        depends on ISA && SCSI && ISA_DMA_API
+       select CHECK_SIGNATURE
        help
          This driver supports the Western Digital 7000 SCSI host adapter
          family.  Some information is in the source:
@@ -383,6 +407,7 @@ config SCSI_AHA152X
        tristate "Adaptec AHA152X/2825 support"
        depends on ISA && SCSI && !64BIT
        select SCSI_SPI_ATTRS
+       select CHECK_SIGNATURE
        ---help---
          This is a driver for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825
          SCSI host adapters. It also works for the AVA-1505, but the IRQ etc.
@@ -479,10 +504,9 @@ config SCSI_AIC7XXX_OLD
 source "drivers/scsi/aic7xxx/Kconfig.aic79xx"
 source "drivers/scsi/aic94xx/Kconfig"
 
-# All the I2O code and drivers do not seem to be 64bit safe.
 config SCSI_DPT_I2O
        tristate "Adaptec I2O RAID support "
-       depends on !64BIT && SCSI && PCI
+       depends on SCSI && PCI && VIRT_TO_BUS
        help
          This driver supports all of Adaptec's I2O based RAID controllers as 
          well as the DPT SmartRaid V cards.  This is an Adaptec maintained
@@ -493,9 +517,8 @@ config SCSI_DPT_I2O
 
 config SCSI_ADVANSYS
        tristate "AdvanSys SCSI support"
-       depends on SCSI
+       depends on SCSI && VIRT_TO_BUS
        depends on ISA || EISA || PCI
-       depends on BROKEN || X86_32
        help
          This is a driver for all SCSI host adapters manufactured by
          AdvanSys. It is documented in the kernel source in
@@ -517,26 +540,39 @@ config SCSI_IN2000
          module will be called in2000.
 
 config SCSI_ARCMSR
-       tristate "ARECA ARC11X0[PCI-X]/ARC12X0[PCI-EXPRESS] SATA-RAID support"
+       tristate "ARECA (ARC11xx/12xx/13xx/16xx) SATA/SAS RAID Host Adapter"
        depends on PCI && SCSI
        help
-         This driver supports all of ARECA's SATA RAID controller cards.
+         This driver supports all of ARECA's SATA/SAS RAID controller cards.
          This is an ARECA-maintained driver by Erich Chen.
-         If you have any problems, please mail to: < erich@areca.com.tw >
+         If you have any problems, please mail to: <erich@areca.com.tw>.
          Areca supports Linux RAID config tools.
-
-         < http://www.areca.com.tw >
+         Please link <http://www.areca.com.tw>
 
          To compile this driver as a module, choose M here: the
          module will be called arcmsr (modprobe arcmsr).
 
+config SCSI_ARCMSR_AER
+       bool "Enable PCI Error Recovery Capability in Areca Driver(ARCMSR)"
+       depends on SCSI_ARCMSR && PCIEAER
+       default n
+       help
+         The advanced error reporting(AER) capability is "NOT" provided by
+         ARC1200/1201/1202 SATA RAID controllers cards.
+         If your card is one of ARC1200/1201/1202, please use the default setting, n.
+         If your card is other models, you could pick it
+         on condition that the kernel version is greater than 2.6.19.
+         This function is maintained driver by Nick Cheng. If you have any
+         problems or suggestion, you are welcome to contact with <nick.cheng@areca.com.tw>.
+         To enable this function, choose Y here.
+
 source "drivers/scsi/megaraid/Kconfig.megaraid"
 
 config SCSI_HPTIOP
-       tristate "HighPoint RocketRAID 3xxx Controller support"
+       tristate "HighPoint RocketRAID 3xxx/4xxx Controller support"
        depends on SCSI && PCI
        help
-         This option enables support for HighPoint RocketRAID 3xxx
+         This option enables support for HighPoint RocketRAID 3xxx/4xxx
          controllers.
 
          To compile this driver as a module, choose M here; the module
@@ -544,25 +580,27 @@ config SCSI_HPTIOP
 
 config SCSI_BUSLOGIC
        tristate "BusLogic SCSI support"
-       depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API
+       depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API && VIRT_TO_BUS
        ---help---
          This is support for BusLogic MultiMaster and FlashPoint SCSI Host
          Adapters. Consult the SCSI-HOWTO, available from
          <http://www.tldp.org/docs.html#howto>, and the files
          <file:Documentation/scsi/BusLogic.txt> and
          <file:Documentation/scsi/FlashPoint.txt> for more information.
+         Note that support for FlashPoint is only available for 32-bit
+         x86 configurations.
 
          To compile this driver as a module, choose M here: the
          module will be called BusLogic.
 
-config SCSI_OMIT_FLASHPOINT
-       bool "Omit FlashPoint support"
-       depends on SCSI_BUSLOGIC
+config SCSI_FLASHPOINT
+       bool "FlashPoint support"
+       depends on SCSI_BUSLOGIC && PCI && X86_32
        help
-         This option allows you to omit the FlashPoint support from the
+         This option allows you to add FlashPoint support to the
          BusLogic SCSI driver. The FlashPoint SCCB Manager code is
-         substantial, so users of MultiMaster Host Adapters may wish to omit
-         it.
+         substantial, so users of MultiMaster Host Adapters may not
+         wish to include it.
 
 config SCSI_DMX3191D
        tristate "DMX3191D SCSI support"
@@ -578,6 +616,7 @@ config SCSI_DTC3280
        tristate "DTC3180/3280 SCSI support"
        depends on ISA && SCSI
        select SCSI_SPI_ATTRS
+       select CHECK_SIGNATURE
        help
          This is support for DTC 3180/3280 SCSI Host Adapters.  Please read
          the SCSI-HOWTO, available from
@@ -652,6 +691,7 @@ config SCSI_EATA_PIO
 config SCSI_FUTURE_DOMAIN
        tristate "Future Domain 16xx SCSI/AHA-2920A support"
        depends on (ISA || PCI) && SCSI
+       select CHECK_SIGNATURE
        ---help---
          This is support for Future Domain's 16-bit SCSI host adapters
          (TMC-1660/1680, TMC-1650/1670, TMC-3260, TMC-1610M/MER/MEX) and
@@ -690,7 +730,7 @@ config SCSI_GDTH
          This is a driver for RAID/SCSI Disk Array Controllers (EISA/ISA/PCI) 
          manufactured by Intel Corporation/ICP vortex GmbH. It is documented
          in the kernel source in <file:drivers/scsi/gdth.c> and
-         <file:drivers/scsi/gdth.h.>
+         <file:drivers/scsi/gdth.h>.
 
          To compile this driver as a module, choose M here: the
          module will be called gdth.
@@ -827,6 +867,7 @@ config SCSI_IPS
 config SCSI_IBMVSCSI
        tristate "IBM Virtual SCSI support"
        depends on PPC_PSERIES || PPC_ISERIES
+       select SCSI_SRP_ATTRS
        help
          This is the IBM POWER Virtual SCSI Client
 
@@ -835,7 +876,7 @@ config SCSI_IBMVSCSI
 
 config SCSI_IBMVSCSIS
        tristate "IBM Virtual SCSI Server support"
-       depends on PPC_PSERIES && SCSI_TGT && SCSI_SRP
+       depends on PPC_PSERIES && SCSI_SRP && SCSI_SRP_TGT_ATTRS
        help
          This is the SRP target driver for IBM pSeries virtual environments.
 
@@ -847,6 +888,25 @@ config SCSI_IBMVSCSIS
          To compile this driver as a module, choose M here: the
          module will be called ibmvstgt.
 
+config SCSI_IBMVFC
+       tristate "IBM Virtual FC support"
+       depends on PPC_PSERIES && SCSI
+       select SCSI_FC_ATTRS
+       help
+         This is the IBM POWER Virtual FC Client
+
+         To compile this driver as a module, choose M here: the
+         module will be called ibmvfc.
+
+config SCSI_IBMVFC_TRACE
+       bool "enable driver internal trace"
+       depends on SCSI_IBMVFC
+       default y
+       help
+         If you say Y here, the driver will trace all commands issued
+         to the adapter. Performance impact is minimal. Trace can be
+         dumped using /sys/class/scsi_host/hostXX/trace.
+
 config SCSI_INITIO
        tristate "Initio 9100U(W) support"
        depends on PCI && SCSI
@@ -952,6 +1012,16 @@ config SCSI_IZIP_SLOW_CTR
 
          Generally, saying N is fine.
 
+config SCSI_MVSAS
+       tristate "Marvell 88SE6440 SAS/SATA support"
+       depends on PCI && SCSI
+       select SCSI_SAS_LIBSAS
+       help
+         This driver supports Marvell SAS/SATA PCI devices.
+
+         To compiler this driver as a module, choose M here: the module
+         will be called mvsas.
+
 config SCSI_NCR53C406A
        tristate "NCR53c406a SCSI support"
        depends on ISA && SCSI
@@ -1220,17 +1290,6 @@ config SCSI_NCR53C8XX_NO_DISCONNECT
          not allow targets to disconnect is not reasonable if there is more
          than 1 device on a SCSI bus. The normal answer therefore is N.
 
-config SCSI_MCA_53C9X
-       tristate "NCR MCA 53C9x SCSI support"
-       depends on MCA_LEGACY && SCSI && BROKEN_ON_SMP
-       help
-         Some MicroChannel machines, notably the NCR 35xx line, use a SCSI
-         controller based on the NCR 53C94.  This driver will allow use of
-         the controller on the 3550, and very possibly others.
-
-         To compile this driver as a module, choose M here: the
-         module will be called mca_53c9x.
-
 config SCSI_PAS16
        tristate "PAS16 SCSI support"
        depends on ISA && SCSI
@@ -1245,17 +1304,6 @@ config SCSI_PAS16
          To compile this driver as a module, choose M here: the
          module will be called pas16.
 
-config SCSI_PSI240I
-       tristate "PSI240i support"
-       depends on ISA && SCSI
-       help
-         This is support for the PSI240i EIDE interface card which acts as a
-         SCSI host adapter.  Please read the SCSI-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>.
-
-         To compile this driver as a module, choose M here: the
-         module will be called psi240i.
-
 config SCSI_QLOGIC_FAS
        tristate "Qlogic FAS SCSI support"
        depends on ISA && SCSI
@@ -1316,20 +1364,6 @@ config SCSI_LPFC
           This lpfc driver supports the Emulex LightPulse
           Family of Fibre Channel PCI host adapters.
 
-config SCSI_SEAGATE
-       tristate "Seagate ST-02 and Future Domain TMC-8xx SCSI support"
-       depends on X86 && ISA && SCSI
-       ---help---
-         These are 8-bit SCSI controllers; the ST-01 is also supported by
-         this driver.  It is explained in section 3.9 of the SCSI-HOWTO,
-         available from <http://www.tldp.org/docs.html#howto>.  If it
-         doesn't work out of the box, you may have to change some macros at
-         compiletime, which are described in <file:drivers/scsi/seagate.c>.
-
-         To compile this driver as a module, choose M here: the
-         module will be called seagate.
-
-# definitely looks not 64bit safe:
 config SCSI_SIM710
        tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
        depends on (EISA || MCA) && SCSI
@@ -1392,6 +1426,7 @@ config SCSI_T128
        tristate "Trantor T128/T128F/T228 SCSI support"
        depends on ISA && SCSI
        select SCSI_SPI_ATTRS
+       select CHECK_SIGNATURE
        ---help---
          This is support for a SCSI host adapter. It is explained in section
          3.11 of the SCSI-HOWTO, available from
@@ -1542,6 +1577,7 @@ source "drivers/scsi/arm/Kconfig"
 config JAZZ_ESP
        bool "MIPS JAZZ FAS216 SCSI support"
        depends on MACH_JAZZ && SCSI
+       select SCSI_SPI_ATTRS
        help
          This is the driver for the onboard SCSI host adapter of MIPS Magnum
          4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
@@ -1555,7 +1591,7 @@ config A3000_SCSI
          built-in SCSI controller, say Y. Otherwise, say N.
 
          To compile this driver as a module, choose M here: the
-         module will be called wd33c93.
+         module will be called a3000.
 
 config A2091_SCSI
        tristate "A2091/A590 WD33C93A support"
@@ -1565,7 +1601,7 @@ config A2091_SCSI
          say N.
 
          To compile this driver as a module, choose M here: the
-         module will be called wd33c93.
+         module will be called a2091.
 
 config GVP11_SCSI
        tristate "GVP Series II WD33C93A support"
@@ -1580,45 +1616,6 @@ config GVP11_SCSI
          To compile this driver as a module, choose M here: the
          module will be called gvp11.
 
-config CYBERSTORM_SCSI
-       tristate "CyberStorm SCSI support"
-       depends on ZORRO && SCSI
-       help
-         If you have an Amiga with an original (MkI) Phase5 Cyberstorm
-         accelerator board and the optional Cyberstorm SCSI controller,
-         answer Y. Otherwise, say N.
-
-config CYBERSTORMII_SCSI
-       tristate "CyberStorm Mk II SCSI support"
-       depends on ZORRO && SCSI
-       help
-         If you have an Amiga with a Phase5 Cyberstorm MkII accelerator board
-         and the optional Cyberstorm SCSI controller, say Y. Otherwise,
-         answer N.
-
-config BLZ2060_SCSI
-       tristate "Blizzard 2060 SCSI support"
-       depends on ZORRO && SCSI
-       help
-         If you have an Amiga with a Phase5 Blizzard 2060 accelerator board
-         and want to use the onboard SCSI controller, say Y. Otherwise,
-         answer N.
-
-config BLZ1230_SCSI
-       tristate "Blizzard 1230IV/1260 SCSI support"
-       depends on ZORRO && SCSI
-       help
-         If you have an Amiga 1200 with a Phase5 Blizzard 1230IV or Blizzard
-         1260 accelerator, and the optional SCSI module, say Y. Otherwise,
-         say N.
-
-config FASTLANE_SCSI
-       tristate "Fastlane SCSI support"
-       depends on ZORRO && SCSI
-       help
-         If you have the Phase5 Fastlane Z3 SCSI controller, or plan to use
-         one in the near future, say Y to this question. Otherwise, say N.
-
 config SCSI_A4000T
        tristate "A4000T NCR53c710 SCSI support (EXPERIMENTAL)"
        depends on AMIGA && SCSI && EXPERIMENTAL
@@ -1646,15 +1643,6 @@ config SCSI_ZORRO7XX
              accelerator card for the Amiga 1200,
            - the SCSI controller on the GVP Turbo 040/060 accelerator.
 
-config OKTAGON_SCSI
-       tristate "BSC Oktagon SCSI support (EXPERIMENTAL)"
-       depends on ZORRO && SCSI && EXPERIMENTAL
-       help
-         If you have the BSC Oktagon SCSI disk controller for the Amiga, say
-         Y to this question.  If you're in doubt about whether you have one,
-         see the picture at
-         <http://amiga.resource.cx/exp/search.pl?product=oktagon>.
-
 config ATARI_SCSI
        tristate "Atari native SCSI support"
        depends on ATARI && SCSI
@@ -1710,14 +1698,13 @@ config MAC_SCSI
 config SCSI_MAC_ESP
        tristate "Macintosh NCR53c9[46] SCSI"
        depends on MAC && SCSI
+       select SCSI_SPI_ATTRS
        help
          This is the NCR 53c9x SCSI controller found on most of the 68040
-         based Macintoshes.  If you have one of these say Y and read the
-         SCSI-HOWTO, available from
-         <http://www.tldp.org/docs.html#howto>.
+         based Macintoshes.
 
-         To compile this driver as a module, choose M here: the
-         module will be called mac_esp.
+         To compile this driver as a module, choose M here: the module
+         will be called mac_esp.
 
 config MVME147_SCSI
        bool "WD33C93 SCSI driver for MVME147"
@@ -1759,6 +1746,7 @@ config SUN3_SCSI
 config SUN3X_ESP
        bool "Sun3x ESP SCSI"
        depends on SUN3X && SCSI=y
+       select SCSI_SPI_ATTRS
        help
          The ESP was an on-board SCSI controller used on Sun 3/80
          machines.  Say Y here to compile in support for it.
@@ -1766,14 +1754,15 @@ config SUN3X_ESP
 config SCSI_SUNESP
        tristate "Sparc ESP Scsi Driver"
        depends on SBUS && SCSI
+       select SCSI_SPI_ATTRS
        help
          This is the driver for the Sun ESP SCSI host adapter. The ESP
-         chipset is present in most SPARC SBUS-based computers.
+         chipset is present in most SPARC SBUS-based computers and
+         supports the Emulex family of ESP SCSI chips (esp100, esp100A,
+         esp236, fas101, fas236) as well as the Qlogic fas366 SCSI chip.
 
          To compile this driver as a module, choose M here: the
-         module will be called esp.
-
-#      bool 'Cyberstorm Mk III SCSI support (EXPERIMENTAL)' CONFIG_CYBERSTORMIII_SCSI
+         module will be called sun_esp.
 
 config ZFCP
        tristate "FCP host bus adapter driver for IBM eServer zSeries"
@@ -1799,8 +1788,10 @@ config SCSI_SRP
          To compile this driver as a module, choose M here: the
          module will be called libsrp.
 
-endmenu
+endif # SCSI_LOWLEVEL
 
 source "drivers/scsi/pcmcia/Kconfig"
 
+source "drivers/scsi/device_handler/Kconfig"
+
 endmenu