block: Add T10 Protection Information functions
[linux-2.6-block.git] / drivers / scsi / Kconfig
1 menu "SCSI device support"
2
3 config SCSI_MOD
4        tristate
5        default y if SCSI=n || SCSI=y
6        default m if SCSI=m
7
8 config RAID_ATTRS
9         tristate "RAID Transport Class"
10         default n
11         depends on BLOCK
12         depends on SCSI_MOD
13         ---help---
14           Provides RAID
15
16 config SCSI
17         tristate "SCSI device support"
18         depends on BLOCK
19         select SCSI_DMA if HAS_DMA
20         ---help---
21           If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
22           any other SCSI device under Linux, say Y and make sure that you know
23           the name of your SCSI host adapter (the card inside your computer
24           that "speaks" the SCSI protocol, also called SCSI controller),
25           because you will be asked for it.
26
27           You also need to say Y here if you have a device which speaks
28           the SCSI protocol.  Examples of this include the parallel port
29           version of the IOMEGA ZIP drive, USB storage devices, Fibre
30           Channel, and FireWire storage.
31
32           To compile this driver as a module, choose M here and read
33           <file:Documentation/scsi/scsi.txt>.
34           The module will be called scsi_mod.
35
36           However, do not compile this as a module if your root file system
37           (the one containing the directory /) is located on a SCSI device.
38
39 config SCSI_DMA
40         bool
41         default n
42
43 config SCSI_NETLINK
44         bool
45         default n
46         select NET
47
48 config SCSI_PROC_FS
49         bool "legacy /proc/scsi/ support"
50         depends on SCSI && PROC_FS
51         default y
52         ---help---
53           This option enables support for the various files in
54           /proc/scsi.  In Linux 2.6 this has been superseded by
55           files in sysfs but many legacy applications rely on this.
56
57           If unsure say Y.
58
59 comment "SCSI support type (disk, tape, CD-ROM)"
60         depends on SCSI
61
62 config BLK_DEV_SD
63         tristate "SCSI disk support"
64         depends on SCSI
65         ---help---
66           If you want to use SCSI hard disks, Fibre Channel disks,
67           Serial ATA (SATA) or Parallel ATA (PATA) hard disks,
68           USB storage or the SCSI or parallel port version of
69           the IOMEGA ZIP drive, say Y and read the SCSI-HOWTO,
70           the Disk-HOWTO and the Multi-Disk-HOWTO, available from
71           <http://www.tldp.org/docs.html#howto>. This is NOT for SCSI
72           CD-ROMs.
73
74           To compile this driver as a module, choose M here and read
75           <file:Documentation/scsi/scsi.txt>.
76           The module will be called sd_mod.
77
78           Do not compile this driver as a module if your root file system
79           (the one containing the directory /) is located on a SCSI disk.
80           In this case, do not compile the driver for your SCSI host adapter
81           (below) as a module either.
82
83 config CHR_DEV_ST
84         tristate "SCSI tape support"
85         depends on SCSI
86         ---help---
87           If you want to use a SCSI tape drive under Linux, say Y and read the
88           SCSI-HOWTO, available from
89           <http://www.tldp.org/docs.html#howto>, and
90           <file:Documentation/scsi/st.txt> in the kernel source.  This is NOT
91           for SCSI CD-ROMs.
92
93           To compile this driver as a module, choose M here and read
94           <file:Documentation/scsi/scsi.txt>. The module will be called st.
95
96 config CHR_DEV_OSST
97         tristate "SCSI OnStream SC-x0 tape support"
98         depends on SCSI
99         ---help---
100           The OnStream SC-x0 SCSI tape drives cannot be driven by the
101           standard st driver, but instead need this special osst driver and
102           use the  /dev/osstX char device nodes (major 206).  Via usb-storage,
103           you may be able to drive the USB-x0 and DI-x0 drives as well.
104           Note that there is also a second generation of OnStream
105           tape drives (ADR-x0) that supports the standard SCSI-2 commands for
106           tapes (QIC-157) and can be driven by the standard driver st.
107           For more information, you may have a look at the SCSI-HOWTO
108           <http://www.tldp.org/docs.html#howto>  and
109           <file:Documentation/scsi/osst.txt>  in the kernel source.
110           More info on the OnStream driver may be found on
111           <http://sourceforge.net/projects/osst/>
112           Please also have a look at the standard st docu, as most of it
113           applies to osst as well.
114
115           To compile this driver as a module, choose M here and read
116           <file:Documentation/scsi/scsi.txt>. The module will be called osst.
117
118 config BLK_DEV_SR
119         tristate "SCSI CDROM support"
120         depends on SCSI
121         ---help---
122           If you want to use a CD or DVD drive attached to your computer
123           by SCSI, FireWire, USB or ATAPI, say Y and read the SCSI-HOWTO
124           and the CDROM-HOWTO at <http://www.tldp.org/docs.html#howto>.
125
126           Make sure to say Y or M to "ISO 9660 CD-ROM file system support".
127
128           To compile this driver as a module, choose M here and read
129           <file:Documentation/scsi/scsi.txt>.
130           The module will be called sr_mod.
131
132 config BLK_DEV_SR_VENDOR
133         bool "Enable vendor-specific extensions (for SCSI CDROM)"
134         depends on BLK_DEV_SR
135         help
136           This enables the usage of vendor specific SCSI commands. This is
137           required to support multisession CDs with old NEC/TOSHIBA cdrom
138           drives (and HP Writers). If you have such a drive and get the first
139           session only, try saying Y here; everybody else says N.
140
141 config CHR_DEV_SG
142         tristate "SCSI generic support"
143         depends on SCSI
144         ---help---
145           If you want to use SCSI scanners, synthesizers or CD-writers or just
146           about anything having "SCSI" in its name other than hard disks,
147           CD-ROMs or tapes, say Y here. These won't be supported by the kernel
148           directly, so you need some additional software which knows how to
149           talk to these devices using the SCSI protocol:
150
151           For scanners, look at SANE (<http://www.sane-project.org/>). For CD
152           writer software look at Cdrtools
153           (<http://cdrecord.berlios.de/private/cdrecord.html>)
154           and for burning a "disk at once": CDRDAO
155           (<http://cdrdao.sourceforge.net/>). Cdparanoia is a high
156           quality digital reader of audio CDs (<http://www.xiph.org/paranoia/>).
157           For other devices, it's possible that you'll have to write the
158           driver software yourself. Please read the file
159           <file:Documentation/scsi/scsi-generic.txt> for more information.
160
161           To compile this driver as a module, choose M here and read
162           <file:Documentation/scsi/scsi.txt>. The module will be called sg.
163
164           If unsure, say N.
165
166 config CHR_DEV_SCH
167         tristate "SCSI media changer support"
168         depends on SCSI
169         ---help---
170           This is a driver for SCSI media changers.  Most common devices are
171           tape libraries and MOD/CDROM jukeboxes.  *Real* jukeboxes, you
172           don't need this for those tiny 6-slot cdrom changers.  Media
173           changers are listed as "Type: Medium Changer" in /proc/scsi/scsi.
174           If you have such hardware and want to use it with linux, say Y
175           here.  Check <file:Documentation/scsi/scsi-changer.txt> for details.
176         
177           If you want to compile this as a module ( = code which can be
178           inserted in and removed from the running kernel whenever you want),
179           say M here and read <file:Documentation/kbuild/modules.txt> and
180           <file:Documentation/scsi/scsi.txt>. The module will be called ch.o.
181           If unsure, say N.
182
183 config SCSI_ENCLOSURE
184         tristate "SCSI Enclosure Support"
185         depends on SCSI && ENCLOSURE_SERVICES
186         help
187           Enclosures are devices sitting on or in SCSI backplanes that
188           manage devices.  If you have a disk cage, the chances are that
189           it has an enclosure device.  Selecting this option will just allow
190           certain enclosure conditions to be reported and is not required.
191
192 config SCSI_CONSTANTS
193         bool "Verbose SCSI error reporting (kernel size +=12K)"
194         depends on SCSI
195         help
196           The error messages regarding your SCSI hardware will be easier to
197           understand if you say Y here; it will enlarge your kernel by about
198           12 KB. If in doubt, say Y.
199
200 config SCSI_LOGGING
201         bool "SCSI logging facility"
202         depends on SCSI
203         ---help---
204           This turns on a logging facility that can be used to debug a number
205           of SCSI related problems.
206
207           If you say Y here, no logging output will appear by default, but you
208           can enable logging by saying Y to "/proc file system support" and
209           "Sysctl support" below and executing the command
210
211           echo <bitmask> > /proc/sys/dev/scsi/logging_level
212
213           where <bitmask> is a four byte value representing the logging type
214           and logging level for each type of logging selected.
215
216           There are a number of logging types and you can find them in the
217           source at <file:drivers/scsi/scsi_logging.h>. The logging levels
218           are also described in that file and they determine the verbosity of
219           the logging for each logging type.
220
221           If you say N here, it may be harder to track down some types of SCSI
222           problems. If you say Y here your kernel will be somewhat larger, but
223           there should be no noticeable performance impact as long as you have
224           logging turned off.
225
226 config SCSI_SCAN_ASYNC
227         bool "Asynchronous SCSI scanning"
228         depends on SCSI
229         help
230           The SCSI subsystem can probe for devices while the rest of the
231           system continues booting, and even probe devices on different
232           busses in parallel, leading to a significant speed-up.
233
234           If you have built SCSI as modules, enabling this option can
235           be a problem as the devices may not have been found by the
236           time your system expects them to have been.  You can load the
237           scsi_wait_scan module to ensure that all scans have completed.
238           If you build your SCSI drivers into the kernel, then everything
239           will work fine if you say Y here.
240
241           You can override this choice by specifying "scsi_mod.scan=sync"
242           or async on the kernel's command line.
243
244           Note that this setting also affects whether resuming from
245           system suspend will be performed asynchronously.
246
247 menu "SCSI Transports"
248         depends on SCSI
249
250 config SCSI_SPI_ATTRS
251         tristate "Parallel SCSI (SPI) Transport Attributes"
252         depends on SCSI
253         help
254           If you wish to export transport-specific information about
255           each attached SCSI device to sysfs, say Y.  Otherwise, say N.
256
257 config SCSI_FC_ATTRS
258         tristate "FiberChannel Transport Attributes"
259         depends on SCSI
260         select SCSI_NETLINK
261         help
262           If you wish to export transport-specific information about
263           each attached FiberChannel device to sysfs, say Y.
264           Otherwise, say N.
265
266 config SCSI_ISCSI_ATTRS
267         tristate "iSCSI Transport Attributes"
268         depends on SCSI && NET
269         select BLK_DEV_BSGLIB
270         help
271           If you wish to export transport-specific information about
272           each attached iSCSI device to sysfs, say Y.
273           Otherwise, say N.
274
275 config SCSI_SAS_ATTRS
276         tristate "SAS Transport Attributes"
277         depends on SCSI
278         select BLK_DEV_BSG
279         help
280           If you wish to export transport-specific information about
281           each attached SAS device to sysfs, say Y.
282
283 source "drivers/scsi/libsas/Kconfig"
284
285 config SCSI_SRP_ATTRS
286         tristate "SRP Transport Attributes"
287         depends on SCSI
288         help
289           If you wish to export transport-specific information about
290           each attached SRP device to sysfs, say Y.
291
292 endmenu
293
294 menuconfig SCSI_LOWLEVEL
295         bool "SCSI low-level drivers"
296         depends on SCSI!=n
297         default y
298
299 if SCSI_LOWLEVEL && SCSI
300
301 config ISCSI_TCP
302         tristate "iSCSI Initiator over TCP/IP"
303         depends on SCSI && INET
304         select CRYPTO
305         select CRYPTO_MD5
306         select CRYPTO_CRC32C
307         select SCSI_ISCSI_ATTRS
308         help
309          The iSCSI Driver provides a host with the ability to access storage
310          through an IP network. The driver uses the iSCSI protocol to transport
311          SCSI requests and responses over a TCP/IP network between the host
312          (the "initiator") and "targets".  Architecturally, the iSCSI driver
313          combines with the host's TCP/IP stack, network drivers, and Network
314          Interface Card (NIC) to provide the same functions as a SCSI or a
315          Fibre Channel (FC) adapter driver with a Host Bus Adapter (HBA).
316
317          To compile this driver as a module, choose M here: the
318          module will be called iscsi_tcp.
319
320          The userspace component needed to initialize the driver, documentation,
321          and sample configuration files can be found here:
322
323          http://open-iscsi.org
324
325 config ISCSI_BOOT_SYSFS
326         tristate "iSCSI Boot Sysfs Interface"
327         default n
328         help
329           This option enables support for exposing iSCSI boot information
330           via sysfs to userspace. If you wish to export this information,
331           say Y. Otherwise, say N.
332
333 source "drivers/scsi/cxgbi/Kconfig"
334 source "drivers/scsi/bnx2i/Kconfig"
335 source "drivers/scsi/bnx2fc/Kconfig"
336 source "drivers/scsi/be2iscsi/Kconfig"
337
338 config SGIWD93_SCSI
339         tristate "SGI WD93C93 SCSI Driver"
340         depends on SGI_HAS_WD93 && SCSI
341         help
342           If you have a Western Digital WD93 SCSI controller on
343           an SGI MIPS system, say Y.  Otherwise, say N.
344
345 config BLK_DEV_3W_XXXX_RAID
346         tristate "3ware 5/6/7/8xxx ATA-RAID support"
347         depends on PCI && SCSI
348         help
349           3ware is the only hardware ATA-Raid product in Linux to date.
350           This card is 2,4, or 8 channel master mode support only.
351           SCSI support required!!!
352
353           <http://www.3ware.com/>
354
355           Please read the comments at the top of
356           <file:drivers/scsi/3w-xxxx.c>.
357
358 config SCSI_HPSA
359         tristate "HP Smart Array SCSI driver"
360         depends on PCI && SCSI
361         select CHECK_SIGNATURE
362         help
363           This driver supports HP Smart Array Controllers (circa 2009).
364           It is a SCSI alternative to the cciss driver, which is a block
365           driver.  Anyone wishing to use HP Smart Array controllers who
366           would prefer the devices be presented to linux as SCSI devices,
367           rather than as generic block devices should say Y here.
368
369 config SCSI_3W_9XXX
370         tristate "3ware 9xxx SATA-RAID support"
371         depends on PCI && SCSI
372         help
373           This driver supports the 9000 series 3ware SATA-RAID cards.
374
375           <http://www.amcc.com>
376
377           Please read the comments at the top of
378           <file:drivers/scsi/3w-9xxx.c>.
379
380 config SCSI_3W_SAS
381         tristate "3ware 97xx SAS/SATA-RAID support"
382         depends on PCI && SCSI
383         help
384           This driver supports the LSI 3ware 9750 6Gb/s SAS/SATA-RAID cards.
385
386           <http://www.lsi.com>
387
388           Please read the comments at the top of
389           <file:drivers/scsi/3w-sas.c>.
390
391 config SCSI_7000FASST
392         tristate "7000FASST SCSI support"
393         depends on ISA && SCSI && ISA_DMA_API
394         select CHECK_SIGNATURE
395         help
396           This driver supports the Western Digital 7000 SCSI host adapter
397           family.  Some information is in the source:
398           <file:drivers/scsi/wd7000.c>.
399
400           To compile this driver as a module, choose M here: the
401           module will be called wd7000.
402
403 config SCSI_ACARD
404         tristate "ACARD SCSI support"
405         depends on PCI && SCSI
406         help
407           This driver supports the ACARD SCSI host adapter.
408           Support Chip <ATP870 ATP876 ATP880 ATP885>
409           To compile this driver as a module, choose M here: the
410           module will be called atp870u.
411
412 config SCSI_AHA152X
413         tristate "Adaptec AHA152X/2825 support"
414         depends on ISA && SCSI
415         select SCSI_SPI_ATTRS
416         select CHECK_SIGNATURE
417         ---help---
418           This is a driver for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825
419           SCSI host adapters. It also works for the AVA-1505, but the IRQ etc.
420           must be manually specified in this case.
421
422           It is explained in section 3.3 of the SCSI-HOWTO, available from
423           <http://www.tldp.org/docs.html#howto>. You might also want to
424           read the file <file:Documentation/scsi/aha152x.txt>.
425
426           To compile this driver as a module, choose M here: the
427           module will be called aha152x.
428
429 config SCSI_AHA1542
430         tristate "Adaptec AHA1542 support"
431         depends on ISA && SCSI && ISA_DMA_API
432         ---help---
433           This is support for a SCSI host adapter.  It is explained in section
434           3.4 of the SCSI-HOWTO, available from
435           <http://www.tldp.org/docs.html#howto>.  Note that Trantor was
436           purchased by Adaptec, and some former Trantor products are being
437           sold under the Adaptec name.  If it doesn't work out of the box, you
438           may have to change some settings in <file:drivers/scsi/aha1542.h>.
439
440           To compile this driver as a module, choose M here: the
441           module will be called aha1542.
442
443 config SCSI_AHA1740
444         tristate "Adaptec AHA1740 support"
445         depends on EISA && SCSI
446         ---help---
447           This is support for a SCSI host adapter.  It is explained in section
448           3.5 of the SCSI-HOWTO, available from
449           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
450           of the box, you may have to change some settings in
451           <file:drivers/scsi/aha1740.h>.
452
453           To compile this driver as a module, choose M here: the
454           module will be called aha1740.
455
456 config SCSI_AACRAID
457         tristate "Adaptec AACRAID support"
458         depends on SCSI && PCI
459         help
460           This driver supports a variety of Dell, HP, Adaptec, IBM and
461           ICP storage products. For a list of supported products, refer
462           to <file:Documentation/scsi/aacraid.txt>.
463
464           To compile this driver as a module, choose M here: the module
465           will be called aacraid.
466
467
468 source "drivers/scsi/aic7xxx/Kconfig.aic7xxx"
469 source "drivers/scsi/aic7xxx/Kconfig.aic79xx"
470 source "drivers/scsi/aic94xx/Kconfig"
471 source "drivers/scsi/mvsas/Kconfig"
472
473 config SCSI_MVUMI
474         tristate "Marvell UMI driver"
475         depends on SCSI && PCI
476         help
477           Module for Marvell Universal Message Interface(UMI) driver
478
479           To compile this driver as a module, choose M here: the
480           module will be called mvumi.
481
482 config SCSI_DPT_I2O
483         tristate "Adaptec I2O RAID support "
484         depends on SCSI && PCI && VIRT_TO_BUS
485         help
486           This driver supports all of Adaptec's I2O based RAID controllers as 
487           well as the DPT SmartRaid V cards.  This is an Adaptec maintained
488           driver by Deanna Bonds.  See <file:Documentation/scsi/dpti.txt>.
489
490           To compile this driver as a module, choose M here: the
491           module will be called dpt_i2o.
492
493 config SCSI_ADVANSYS
494         tristate "AdvanSys SCSI support"
495         depends on SCSI && VIRT_TO_BUS && !ARM
496         depends on ISA || EISA || PCI
497         help
498           This is a driver for all SCSI host adapters manufactured by
499           AdvanSys. It is documented in the kernel source in
500           <file:drivers/scsi/advansys.c>.
501
502           To compile this driver as a module, choose M here: the
503           module will be called advansys.
504
505 config SCSI_IN2000
506         tristate "Always IN2000 SCSI support"
507         depends on ISA && SCSI
508         help
509           This is support for an ISA bus SCSI host adapter.  You'll find more
510           information in <file:Documentation/scsi/in2000.txt>. If it doesn't work
511           out of the box, you may have to change the jumpers for IRQ or
512           address selection.
513
514           To compile this driver as a module, choose M here: the
515           module will be called in2000.
516
517 config SCSI_ARCMSR
518         tristate "ARECA (ARC11xx/12xx/13xx/16xx) SATA/SAS RAID Host Adapter"
519         depends on PCI && SCSI
520         help
521           This driver supports all of ARECA's SATA/SAS RAID controller cards.
522           This is an ARECA-maintained driver by Erich Chen.
523           If you have any problems, please mail to: <erich@areca.com.tw>.
524           Areca supports Linux RAID config tools.
525           Please link <http://www.areca.com.tw>
526
527           To compile this driver as a module, choose M here: the
528           module will be called arcmsr (modprobe arcmsr).
529
530 source "drivers/scsi/esas2r/Kconfig"
531 source "drivers/scsi/megaraid/Kconfig.megaraid"
532 source "drivers/scsi/mpt2sas/Kconfig"
533 source "drivers/scsi/mpt3sas/Kconfig"
534 source "drivers/scsi/ufs/Kconfig"
535
536 config SCSI_HPTIOP
537         tristate "HighPoint RocketRAID 3xxx/4xxx Controller support"
538         depends on SCSI && PCI
539         help
540           This option enables support for HighPoint RocketRAID 3xxx/4xxx
541           controllers.
542
543           To compile this driver as a module, choose M here; the module
544           will be called hptiop. If unsure, say N.
545
546 config SCSI_BUSLOGIC
547         tristate "BusLogic SCSI support"
548         depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API && VIRT_TO_BUS
549         ---help---
550           This is support for BusLogic MultiMaster and FlashPoint SCSI Host
551           Adapters. Consult the SCSI-HOWTO, available from
552           <http://www.tldp.org/docs.html#howto>, and the files
553           <file:Documentation/scsi/BusLogic.txt> and
554           <file:Documentation/scsi/FlashPoint.txt> for more information.
555           Note that support for FlashPoint is only available for 32-bit
556           x86 configurations.
557
558           To compile this driver as a module, choose M here: the
559           module will be called BusLogic.
560
561 config SCSI_FLASHPOINT
562         bool "FlashPoint support"
563         depends on SCSI_BUSLOGIC && PCI
564         help
565           This option allows you to add FlashPoint support to the
566           BusLogic SCSI driver. The FlashPoint SCCB Manager code is
567           substantial, so users of MultiMaster Host Adapters may not
568           wish to include it.
569
570 config VMWARE_PVSCSI
571         tristate "VMware PVSCSI driver support"
572         depends on PCI && SCSI && X86
573         help
574           This driver supports VMware's para virtualized SCSI HBA.
575           To compile this driver as a module, choose M here: the
576           module will be called vmw_pvscsi.
577
578 config HYPERV_STORAGE
579         tristate "Microsoft Hyper-V virtual storage driver"
580         depends on SCSI && HYPERV
581         default HYPERV
582         help
583           Select this option to enable the Hyper-V virtual storage driver.
584
585 config LIBFC
586         tristate "LibFC module"
587         select SCSI_FC_ATTRS
588         select CRC32
589         ---help---
590           Fibre Channel library module
591
592 config LIBFCOE
593         tristate "LibFCoE module"
594         select LIBFC
595         ---help---
596           Library for Fibre Channel over Ethernet module
597
598 config FCOE
599         tristate "FCoE module"
600         depends on PCI
601         select LIBFCOE
602         ---help---
603           Fibre Channel over Ethernet module
604
605 config FCOE_FNIC
606         tristate "Cisco FNIC Driver"
607         depends on PCI && X86
608         select LIBFCOE
609         help
610           This is support for the Cisco PCI-Express FCoE HBA.
611
612           To compile this driver as a module, choose M here and read
613           <file:Documentation/scsi/scsi.txt>.
614           The module will be called fnic.
615
616 config SCSI_DMX3191D
617         tristate "DMX3191D SCSI support"
618         depends on PCI && SCSI
619         select SCSI_SPI_ATTRS
620         help
621           This is support for Domex DMX3191D SCSI Host Adapters.
622
623           To compile this driver as a module, choose M here: the
624           module will be called dmx3191d.
625
626 config SCSI_DTC3280
627         tristate "DTC3180/3280 SCSI support"
628         depends on ISA && SCSI
629         select SCSI_SPI_ATTRS
630         select CHECK_SIGNATURE
631         help
632           This is support for DTC 3180/3280 SCSI Host Adapters.  Please read
633           the SCSI-HOWTO, available from
634           <http://www.tldp.org/docs.html#howto>, and the file
635           <file:Documentation/scsi/dtc3x80.txt>.
636
637           To compile this driver as a module, choose M here: the
638           module will be called dtc.
639
640 config SCSI_EATA
641         tristate "EATA ISA/EISA/PCI (DPT and generic EATA/DMA-compliant boards) support"
642         depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API
643         ---help---
644           This driver supports all EATA/DMA-compliant SCSI host adapters.  DPT
645           ISA and all EISA I/O addresses are probed looking for the "EATA"
646           signature. The addresses of all the PCI SCSI controllers reported
647           by the PCI subsystem are probed as well.
648
649           You want to read the start of <file:drivers/scsi/eata.c> and the
650           SCSI-HOWTO, available from
651           <http://www.tldp.org/docs.html#howto>.
652
653           To compile this driver as a module, choose M here: the
654           module will be called eata.
655
656 config SCSI_EATA_TAGGED_QUEUE
657         bool "enable tagged command queueing"
658         depends on SCSI_EATA
659         help
660           This is a feature of SCSI-2 which improves performance: the host
661           adapter can send several SCSI commands to a device's queue even if
662           previous commands haven't finished yet.
663           This is equivalent to the "eata=tc:y" boot option.
664
665 config SCSI_EATA_LINKED_COMMANDS
666         bool "enable elevator sorting"
667         depends on SCSI_EATA
668         help
669           This option enables elevator sorting for all probed SCSI disks and
670           CD-ROMs. It definitely reduces the average seek distance when doing
671           random seeks, but this does not necessarily result in a noticeable
672           performance improvement: your mileage may vary...
673           This is equivalent to the "eata=lc:y" boot option.
674
675 config SCSI_EATA_MAX_TAGS
676         int "maximum number of queued commands"
677         depends on SCSI_EATA
678         default "16"
679         help
680           This specifies how many SCSI commands can be maximally queued for
681           each probed SCSI device. You should reduce the default value of 16
682           only if you have disks with buggy or limited tagged command support.
683           Minimum is 2 and maximum is 62. This value is also the window size
684           used by the elevator sorting option above. The effective value used
685           by the driver for each probed SCSI device is reported at boot time.
686           This is equivalent to the "eata=mq:8" boot option.
687
688 config SCSI_EATA_PIO
689         tristate "EATA-PIO (old DPT PM2001, PM2012A) support"
690         depends on (ISA || EISA || PCI) && SCSI && BROKEN
691         ---help---
692           This driver supports all EATA-PIO protocol compliant SCSI Host
693           Adapters like the DPT PM2001 and the PM2012A.  EATA-DMA compliant
694           host adapters could also use this driver but are discouraged from
695           doing so, since this driver only supports hard disks and lacks
696           numerous features.  You might want to have a look at the SCSI-HOWTO,
697           available from <http://www.tldp.org/docs.html#howto>.
698
699           To compile this driver as a module, choose M here: the
700           module will be called eata_pio.
701
702 config SCSI_FUTURE_DOMAIN
703         tristate "Future Domain 16xx SCSI/AHA-2920A support"
704         depends on (ISA || PCI) && SCSI
705         select CHECK_SIGNATURE
706         ---help---
707           This is support for Future Domain's 16-bit SCSI host adapters
708           (TMC-1660/1680, TMC-1650/1670, TMC-3260, TMC-1610M/MER/MEX) and
709           other adapters based on the Future Domain chipsets (Quantum
710           ISA-200S, ISA-250MG; Adaptec AHA-2920A; and at least one IBM board).
711           It is explained in section 3.7 of the SCSI-HOWTO, available from
712           <http://www.tldp.org/docs.html#howto>.
713
714           NOTE: Newer Adaptec AHA-2920C boards use the Adaptec AIC-7850 chip
715           and should use the aic7xxx driver ("Adaptec AIC7xxx chipset SCSI
716           controller support"). This Future Domain driver works with the older
717           Adaptec AHA-2920A boards with a Future Domain chip on them.
718
719           To compile this driver as a module, choose M here: the
720           module will be called fdomain.
721
722 config SCSI_GDTH
723         tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support"
724         depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API
725         ---help---
726           Formerly called GDT SCSI Disk Array Controller Support.
727
728           This is a driver for RAID/SCSI Disk Array Controllers (EISA/ISA/PCI) 
729           manufactured by Intel Corporation/ICP vortex GmbH. It is documented
730           in the kernel source in <file:drivers/scsi/gdth.c> and
731           <file:drivers/scsi/gdth.h>.
732
733           To compile this driver as a module, choose M here: the
734           module will be called gdth.
735
736 config SCSI_ISCI
737         tristate "Intel(R) C600 Series Chipset SAS Controller"
738         depends on PCI && SCSI
739         depends on X86
740         select SCSI_SAS_LIBSAS
741         ---help---
742           This driver supports the 6Gb/s SAS capabilities of the storage
743           control unit found in the Intel(R) C600 series chipset.
744
745 config SCSI_GENERIC_NCR5380
746         tristate "Generic NCR5380/53c400 SCSI PIO support"
747         depends on ISA && SCSI
748         select SCSI_SPI_ATTRS
749         ---help---
750           This is a driver for the old NCR 53c80 series of SCSI controllers
751           on boards using PIO. Most boards such as the Trantor T130 fit this
752           category, along with a large number of ISA 8bit controllers shipped
753           for free with SCSI scanners. If you have a PAS16, T128 or DMX3191
754           you should select the specific driver for that card rather than
755           generic 5380 support.
756
757           It is explained in section 3.8 of the SCSI-HOWTO, available from
758           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
759           of the box, you may have to change some settings in
760           <file:drivers/scsi/g_NCR5380.h>.
761
762           To compile this driver as a module, choose M here: the
763           module will be called g_NCR5380.
764
765 config SCSI_GENERIC_NCR5380_MMIO
766         tristate "Generic NCR5380/53c400 SCSI MMIO support"
767         depends on ISA && SCSI
768         select SCSI_SPI_ATTRS
769         ---help---
770           This is a driver for the old NCR 53c80 series of SCSI controllers
771           on boards using memory mapped I/O. 
772           It is explained in section 3.8 of the SCSI-HOWTO, available from
773           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
774           of the box, you may have to change some settings in
775           <file:drivers/scsi/g_NCR5380.h>.
776
777           To compile this driver as a module, choose M here: the
778           module will be called g_NCR5380_mmio.
779
780 config SCSI_GENERIC_NCR53C400
781         bool "Enable NCR53c400 extensions"
782         depends on SCSI_GENERIC_NCR5380
783         help
784           This enables certain optimizations for the NCR53c400 SCSI cards.
785           You might as well try it out.  Note that this driver will only probe
786           for the Trantor T130B in its default configuration; you might have
787           to pass a command line option to the kernel at boot time if it does
788           not detect your card.  See the file
789           <file:Documentation/scsi/g_NCR5380.txt> for details.
790
791 config SCSI_IPS
792         tristate "IBM ServeRAID support"
793         depends on PCI && SCSI
794         ---help---
795           This is support for the IBM ServeRAID hardware RAID controllers.
796           See <http://www.developer.ibm.com/welcome/netfinity/serveraid.html>
797           and <http://www-947.ibm.com/support/entry/portal/docdisplay?brand=5000008&lndocid=SERV-RAID>
798           for more information.  If this driver does not work correctly
799           without modification please contact the author by email at
800           <ipslinux@adaptec.com>.
801
802           To compile this driver as a module, choose M here: the
803           module will be called ips.
804
805 config SCSI_IBMVSCSI
806         tristate "IBM Virtual SCSI support"
807         depends on PPC_PSERIES
808         select SCSI_SRP_ATTRS
809         help
810           This is the IBM POWER Virtual SCSI Client
811
812           To compile this driver as a module, choose M here: the
813           module will be called ibmvscsi.
814
815 config SCSI_IBMVFC
816         tristate "IBM Virtual FC support"
817         depends on PPC_PSERIES && SCSI
818         select SCSI_FC_ATTRS
819         help
820           This is the IBM POWER Virtual FC Client
821
822           To compile this driver as a module, choose M here: the
823           module will be called ibmvfc.
824
825 config SCSI_IBMVFC_TRACE
826         bool "enable driver internal trace"
827         depends on SCSI_IBMVFC
828         default y
829         help
830           If you say Y here, the driver will trace all commands issued
831           to the adapter. Performance impact is minimal. Trace can be
832           dumped using /sys/class/scsi_host/hostXX/trace.
833
834 config SCSI_INITIO
835         tristate "Initio 9100U(W) support"
836         depends on PCI && SCSI
837         help
838           This is support for the Initio 91XXU(W) SCSI host adapter.  Please
839           read the SCSI-HOWTO, available from
840           <http://www.tldp.org/docs.html#howto>.
841
842           To compile this driver as a module, choose M here: the
843           module will be called initio.
844
845 config SCSI_INIA100
846         tristate "Initio INI-A100U2W support"
847         depends on PCI && SCSI
848         help
849           This is support for the Initio INI-A100U2W SCSI host adapter.
850           Please read the SCSI-HOWTO, available from
851           <http://www.tldp.org/docs.html#howto>.
852
853           To compile this driver as a module, choose M here: the
854           module will be called a100u2w.
855
856 config SCSI_PPA
857         tristate "IOMEGA parallel port (ppa - older drives)"
858         depends on SCSI && PARPORT_PC
859         ---help---
860           This driver supports older versions of IOMEGA's parallel port ZIP
861           drive (a 100 MB removable media device).
862
863           Note that you can say N here if you have the SCSI version of the ZIP
864           drive: it will be supported automatically if you said Y to the
865           generic "SCSI disk support", above.
866
867           If you have the ZIP Plus drive or a more recent parallel port ZIP
868           drive (if the supplied cable with the drive is labeled "AutoDetect")
869           then you should say N here and Y to "IOMEGA parallel port (imm -
870           newer drives)", below.
871
872           For more information about this driver and how to use it you should
873           read the file <file:Documentation/scsi/ppa.txt>.  You should also read
874           the SCSI-HOWTO, which is available from
875           <http://www.tldp.org/docs.html#howto>.  If you use this driver,
876           you will still be able to use the parallel port for other tasks,
877           such as a printer; it is safe to compile both drivers into the
878           kernel.
879
880           To compile this driver as a module, choose M here: the
881           module will be called ppa.
882
883 config SCSI_IMM
884         tristate "IOMEGA parallel port (imm - newer drives)"
885         depends on SCSI && PARPORT_PC
886         ---help---
887           This driver supports newer versions of IOMEGA's parallel port ZIP
888           drive (a 100 MB removable media device).
889
890           Note that you can say N here if you have the SCSI version of the ZIP
891           drive: it will be supported automatically if you said Y to the
892           generic "SCSI disk support", above.
893
894           If you have the ZIP Plus drive or a more recent parallel port ZIP
895           drive (if the supplied cable with the drive is labeled "AutoDetect")
896           then you should say Y here; if you have an older ZIP drive, say N
897           here and Y to "IOMEGA Parallel Port (ppa - older drives)", above.
898
899           For more information about this driver and how to use it you should
900           read the file <file:Documentation/scsi/ppa.txt>.  You should also read
901           the SCSI-HOWTO, which is available from
902           <http://www.tldp.org/docs.html#howto>.  If you use this driver,
903           you will still be able to use the parallel port for other tasks,
904           such as a printer; it is safe to compile both drivers into the
905           kernel.
906
907           To compile this driver as a module, choose M here: the
908           module will be called imm.
909
910 config SCSI_IZIP_EPP16
911         bool "ppa/imm option - Use slow (but safe) EPP-16"
912         depends on SCSI_PPA || SCSI_IMM
913         ---help---
914           EPP (Enhanced Parallel Port) is a standard for parallel ports which
915           allows them to act as expansion buses that can handle up to 64
916           peripheral devices.
917
918           Some parallel port chipsets are slower than their motherboard, and
919           so we have to control the state of the chipset's FIFO queue every
920           now and then to avoid data loss. This will be done if you say Y
921           here.
922
923           Generally, saying Y is the safe option and slows things down a bit.
924
925 config SCSI_IZIP_SLOW_CTR
926         bool "ppa/imm option - Assume slow parport control register"
927         depends on SCSI_PPA || SCSI_IMM
928         help
929           Some parallel ports are known to have excessive delays between
930           changing the parallel port control register and good data being
931           available on the parallel port data/status register. This option
932           forces a small delay (1.0 usec to be exact) after changing the
933           control register to let things settle out. Enabling this option may
934           result in a big drop in performance but some very old parallel ports
935           (found in 386 vintage machines) will not work properly.
936
937           Generally, saying N is fine.
938
939 config SCSI_NCR53C406A
940         tristate "NCR53c406a SCSI support"
941         depends on ISA && SCSI
942         help
943           This is support for the NCR53c406a SCSI host adapter.  For user
944           configurable parameters, check out <file:drivers/scsi/NCR53c406a.c>
945           in the kernel source.  Also read the SCSI-HOWTO, available from
946           <http://www.tldp.org/docs.html#howto>.
947
948           To compile this driver as a module, choose M here: the
949           module will be called NCR53c406.
950
951 config SCSI_NCR_D700
952         tristate "NCR Dual 700 MCA SCSI support"
953         depends on MCA && SCSI
954         select SCSI_SPI_ATTRS
955         help
956           This is a driver for the MicroChannel Dual 700 card produced by
957           NCR and commonly used in 345x/35xx/4100 class machines.  It always
958           tries to negotiate sync and uses tag command queueing.
959
960           Unless you have an NCR manufactured machine, the chances are that
961           you do not have this SCSI card, so say N.
962
963 config SCSI_LASI700
964         tristate "HP Lasi SCSI support for 53c700/710"
965         depends on GSC && SCSI
966         select SCSI_SPI_ATTRS
967         help
968           This is a driver for the SCSI controller in the Lasi chip found in
969           many PA-RISC workstations & servers.  If you do not know whether you
970           have a Lasi chip, it is safe to say "Y" here.
971
972 config SCSI_SNI_53C710
973         tristate "SNI RM SCSI support for 53c710"
974         depends on SNI_RM && SCSI
975         select SCSI_SPI_ATTRS
976         select 53C700_LE_ON_BE
977         help
978           This is a driver for the onboard SCSI controller found in older
979           SNI RM workstations & servers.
980
981 config 53C700_LE_ON_BE
982         bool
983         depends on SCSI_LASI700
984         default y
985
986 config SCSI_STEX
987         tristate "Promise SuperTrak EX Series support"
988         depends on PCI && SCSI
989         ---help---
990           This driver supports Promise SuperTrak EX series storage controllers.
991
992           Promise provides Linux RAID configuration utility for these
993           controllers. Please visit <http://www.promise.com> to download.
994
995           To compile this driver as a module, choose M here: the
996           module will be called stex.
997
998 config 53C700_BE_BUS
999         bool
1000         depends on SCSI_A4000T || SCSI_ZORRO7XX || MVME16x_SCSI || BVME6000_SCSI
1001         default y
1002
1003 config SCSI_SYM53C8XX_2
1004         tristate "SYM53C8XX Version 2 SCSI support"
1005         depends on PCI && SCSI
1006         select SCSI_SPI_ATTRS
1007         ---help---
1008           This driver supports the whole NCR53C8XX/SYM53C8XX family of
1009           PCI-SCSI controllers.  It also supports the subset of LSI53C10XX
1010           Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
1011           language.  It does not support LSI53C10XX Ultra-320 PCI-X SCSI
1012           controllers; you need to use the Fusion MPT driver for that.
1013
1014           Please read <file:Documentation/scsi/sym53c8xx_2.txt> for more
1015           information.
1016
1017 config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
1018         int "DMA addressing mode"
1019         depends on SCSI_SYM53C8XX_2
1020         default "1"
1021         ---help---
1022           This option only applies to PCI-SCSI chips that are PCI DAC
1023           capable (875A, 895A, 896, 1010-33, 1010-66, 1000).
1024
1025           When set to 0, the driver will program the chip to only perform
1026           32-bit DMA.  When set to 1, the chip will be able to perform DMA
1027           to addresses up to 1TB.  When set to 2, the driver supports the
1028           full 64-bit DMA address range, but can only address 16 segments
1029           of 4 GB each.  This limits the total addressable range to 64 GB.
1030
1031           Most machines with less than 4GB of memory should use a setting
1032           of 0 for best performance.  If your machine has 4GB of memory
1033           or more, you should set this option to 1 (the default).
1034
1035           The still experimental value 2 (64 bit DMA addressing with 16
1036           x 4GB segments limitation) can be used on systems that require
1037           PCI address bits past bit 39 to be set for the addressing of
1038           memory using PCI DAC cycles.
1039
1040 config SCSI_SYM53C8XX_DEFAULT_TAGS
1041         int "Default tagged command queue depth"
1042         depends on SCSI_SYM53C8XX_2
1043         default "16"
1044         help
1045           This is the default value of the command queue depth the
1046           driver will announce to the generic SCSI layer for devices
1047           that support tagged command queueing. This value can be changed
1048           from the boot command line.  This is a soft limit that cannot
1049           exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.
1050
1051 config SCSI_SYM53C8XX_MAX_TAGS
1052         int "Maximum number of queued commands"
1053         depends on SCSI_SYM53C8XX_2
1054         default "64"
1055         help
1056           This option allows you to specify the maximum number of commands
1057           that can be queued to any device, when tagged command queuing is
1058           possible. The driver supports up to 256 queued commands per device.
1059           This value is used as a compiled-in hard limit.
1060
1061 config SCSI_SYM53C8XX_MMIO
1062         bool "Use memory mapped IO"
1063         depends on SCSI_SYM53C8XX_2
1064         default y
1065         help
1066           Memory mapped IO is faster than Port IO.  Most people should
1067           answer Y here, but some machines may have problems.  If you have
1068           to answer N here, please report the problem to the maintainer.
1069
1070 config SCSI_IPR
1071         tristate "IBM Power Linux RAID adapter support"
1072         depends on PCI && SCSI && ATA
1073         select FW_LOADER
1074         ---help---
1075           This driver supports the IBM Power Linux family RAID adapters.
1076           This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
1077           as IBM iSeries 5702, 5703, 5709, and 570A.
1078
1079 config SCSI_IPR_TRACE
1080         bool "enable driver internal trace"
1081         depends on SCSI_IPR
1082         default y
1083         help
1084           If you say Y here, the driver will trace all commands issued
1085           to the adapter. Performance impact is minimal. Trace can be
1086           dumped using /sys/bus/class/scsi_host/hostXX/trace.
1087
1088 config SCSI_IPR_DUMP
1089         bool "enable adapter dump support"
1090         depends on SCSI_IPR
1091         default y
1092         help
1093           If you say Y here, the driver will support adapter crash dump.
1094           If you enable this support, the iprdump daemon can be used
1095           to capture adapter failure analysis information.
1096
1097 config SCSI_ZALON
1098         tristate "Zalon SCSI support"
1099         depends on GSC && SCSI
1100         select SCSI_SPI_ATTRS
1101         help
1102           The Zalon is a GSC/HSC bus interface chip that sits between the
1103           PA-RISC processor and the NCR 53c720 SCSI controller on C100,
1104           C110, J200, J210 and some D, K & R-class machines.  It's also
1105           used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
1106           Say Y here if you have one of these machines or cards.
1107
1108 config SCSI_NCR_Q720
1109         tristate "NCR Quad 720 MCA SCSI support"
1110         depends on MCA && SCSI
1111         select SCSI_SPI_ATTRS
1112         help
1113           This is a driver for the MicroChannel Quad 720 card produced by
1114           NCR and commonly used in 345x/35xx/4100 class machines.  It always
1115           tries to negotiate sync and uses tag command queueing.
1116
1117           Unless you have an NCR manufactured machine, the chances are that
1118           you do not have this SCSI card, so say N.
1119
1120 config SCSI_NCR53C8XX_DEFAULT_TAGS
1121         int "default tagged command queue depth"
1122         depends on SCSI_ZALON || SCSI_NCR_Q720
1123         default "8"
1124         ---help---
1125           "Tagged command queuing" is a feature of SCSI-2 which improves
1126           performance: the host adapter can send several SCSI commands to a
1127           device's queue even if previous commands haven't finished yet.
1128           Because the device is intelligent, it can optimize its operations
1129           (like head positioning) based on its own request queue. Some SCSI
1130           devices don't implement this properly; if you want to disable this
1131           feature, enter 0 or 1 here (it doesn't matter which).
1132
1133           The default value is 8 and should be supported by most hard disks.
1134           This value can be overridden from the boot command line using the
1135           'tags' option as follows (example):
1136           'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
1137           4, set queue depth to 16 for target 2 and target 3 on controller 0
1138           and set queue depth to 10 for target 0 / lun 2 on controller 1.
1139
1140           The normal answer therefore is to go with the default 8 and to use
1141           a boot command line option for devices that need to use a different
1142           command queue depth.
1143
1144           There is no safe option other than using good SCSI devices.
1145
1146 config SCSI_NCR53C8XX_MAX_TAGS
1147         int "maximum number of queued commands"
1148         depends on SCSI_ZALON || SCSI_NCR_Q720
1149         default "32"
1150         ---help---
1151           This option allows you to specify the maximum number of commands
1152           that can be queued to any device, when tagged command queuing is
1153           possible. The default value is 32. Minimum is 2, maximum is 64.
1154           Modern hard disks are able to support 64 tags and even more, but
1155           do not seem to be faster when more than 32 tags are being used.
1156
1157           So, the normal answer here is to go with the default value 32 unless
1158           you are using very large hard disks with large cache (>= 1 MB) that
1159           are able to take advantage of more than 32 tagged commands.
1160
1161           There is no safe option and the default answer is recommended.
1162
1163 config SCSI_NCR53C8XX_SYNC
1164         int "synchronous transfers frequency in MHz"
1165         depends on SCSI_ZALON || SCSI_NCR_Q720
1166         default "20"
1167         ---help---
1168           The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
1169           rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80.  The numbers
1170           are respectively the maximum data transfer rates in mega-transfers
1171           per second for each class.  For example, a FAST-20 Wide 16 device is
1172           able to transfer data at 20 million 16 bit packets per second for a
1173           total rate of 40 MB/s.
1174
1175           You may specify 0 if you want to only use asynchronous data
1176           transfers. This is the safest and slowest option. Otherwise, specify
1177           a value between 5 and 80, depending on the capability of your SCSI
1178           controller.  The higher the number, the faster the data transfer.
1179           Note that 80 should normally be ok since the driver decreases the
1180           value automatically according to the controller's capabilities.
1181
1182           Your answer to this question is ignored for controllers with NVRAM,
1183           since the driver will get this information from the user set-up.  It
1184           also can be overridden using a boot setup option, as follows
1185           (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
1186           for FAST-20 synchronous data transfer (20 mega-transfers per
1187           second).
1188
1189           The normal answer therefore is not to go with the default but to
1190           select the maximum value 80 allowing the driver to use the maximum
1191           value supported by each controller. If this causes problems with
1192           your SCSI devices, you should come back and decrease the value.
1193
1194           There is no safe option other than using good cabling, right
1195           terminations and SCSI conformant devices.
1196
1197 config SCSI_NCR53C8XX_NO_DISCONNECT
1198         bool "not allow targets to disconnect"
1199         depends on (SCSI_ZALON || SCSI_NCR_Q720) && SCSI_NCR53C8XX_DEFAULT_TAGS=0
1200         help
1201           This option is only provided for safety if you suspect some SCSI
1202           device of yours to not support properly the target-disconnect
1203           feature. In that case, you would say Y here. In general however, to
1204           not allow targets to disconnect is not reasonable if there is more
1205           than 1 device on a SCSI bus. The normal answer therefore is N.
1206
1207 config SCSI_PAS16
1208         tristate "PAS16 SCSI support"
1209         depends on ISA && SCSI
1210         select SCSI_SPI_ATTRS
1211         ---help---
1212           This is support for a SCSI host adapter.  It is explained in section
1213           3.10 of the SCSI-HOWTO, available from
1214           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
1215           of the box, you may have to change some settings in
1216           <file:drivers/scsi/pas16.h>.
1217
1218           To compile this driver as a module, choose M here: the
1219           module will be called pas16.
1220
1221 config SCSI_QLOGIC_FAS
1222         tristate "Qlogic FAS SCSI support"
1223         depends on ISA && SCSI
1224         ---help---
1225           This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic
1226           FastSCSI! cards as well as any other card based on the FASXX chip
1227           (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
1228
1229           This driver does NOT support the PCI versions of these cards. The
1230           PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP
1231           SCSI support"), below.
1232
1233           Information about this driver is contained in
1234           <file:Documentation/scsi/qlogicfas.txt>.  You should also read the
1235           SCSI-HOWTO, available from
1236           <http://www.tldp.org/docs.html#howto>.
1237
1238           To compile this driver as a module, choose M here: the
1239           module will be called qlogicfas.
1240
1241 config SCSI_QLOGIC_1280
1242         tristate "Qlogic QLA 1240/1x80/1x160 SCSI support"
1243         depends on PCI && SCSI
1244         help
1245           Say Y if you have a QLogic ISP1240/1x80/1x160 SCSI host adapter.
1246
1247           To compile this driver as a module, choose M here: the
1248           module will be called qla1280.
1249
1250 config SCSI_QLOGICPTI
1251         tristate "PTI Qlogic, ISP Driver"
1252         depends on SBUS && SCSI
1253         help
1254           This driver supports SBUS SCSI controllers from PTI or QLogic. These
1255           controllers are known under Solaris as qpti and in the openprom as
1256           PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
1257           driven by a different driver.
1258
1259           To compile this driver as a module, choose M here: the
1260           module will be called qlogicpti.
1261
1262 source "drivers/scsi/qla2xxx/Kconfig"
1263 source "drivers/scsi/qla4xxx/Kconfig"
1264
1265 config SCSI_LPFC
1266         tristate "Emulex LightPulse Fibre Channel Support"
1267         depends on PCI && SCSI
1268         select SCSI_FC_ATTRS
1269         select CRC_T10DIF
1270         help
1271           This lpfc driver supports the Emulex LightPulse
1272           Family of Fibre Channel PCI host adapters.
1273
1274 config SCSI_LPFC_DEBUG_FS
1275         bool "Emulex LightPulse Fibre Channel debugfs Support"
1276         depends on SCSI_LPFC && DEBUG_FS
1277         help
1278           This makes debugging information from the lpfc driver
1279           available via the debugfs filesystem.
1280
1281 config SCSI_SIM710
1282         tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
1283         depends on (EISA || MCA) && SCSI
1284         select SCSI_SPI_ATTRS
1285         ---help---
1286           This driver is for NCR53c710 based SCSI host adapters.
1287
1288           It currently supports Compaq EISA cards and NCR MCA cards
1289
1290 config SCSI_SYM53C416
1291         tristate "Symbios 53c416 SCSI support"
1292         depends on ISA && SCSI
1293         ---help---
1294           This is support for the sym53c416 SCSI host adapter, the SCSI
1295           adapter that comes with some HP scanners. This driver requires that
1296           the sym53c416 is configured first using some sort of PnP
1297           configuration program (e.g. isapnp) or by a PnP aware BIOS. If you
1298           are using isapnp then you need to compile this driver as a module
1299           and then load it using insmod after isapnp has run. The parameters
1300           of the configured card(s) should be passed to the driver. The format
1301           is:
1302
1303           insmod sym53c416 sym53c416=<base>,<irq> [sym53c416_1=<base>,<irq>]
1304
1305           To compile this driver as a module, choose M here: the
1306           module will be called sym53c416.
1307
1308 config SCSI_DC395x
1309         tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support"
1310         depends on PCI && SCSI
1311         ---help---
1312           This driver supports PCI SCSI host adapters based on the ASIC
1313           TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants.
1314
1315           This driver works, but is still in experimental status. So better
1316           have a bootable disk and a backup in case of emergency.
1317
1318           Documentation can be found in <file:Documentation/scsi/dc395x.txt>.
1319
1320           To compile this driver as a module, choose M here: the
1321           module will be called dc395x.
1322
1323 config SCSI_DC390T
1324         tristate "Tekram DC390(T) and Am53/79C974 SCSI support"
1325         depends on PCI && SCSI
1326         ---help---
1327           This driver supports PCI SCSI host adapters based on the Am53C974A
1328           chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard
1329           PCscsi/PCnet (Am53/79C974) solutions.
1330
1331           Documentation can be found in <file:Documentation/scsi/tmscsim.txt>.
1332
1333           Note that this driver does NOT support Tekram DC390W/U/F, which are
1334           based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those.
1335
1336           To compile this driver as a module, choose M here: the
1337           module will be called tmscsim.
1338
1339 config SCSI_T128
1340         tristate "Trantor T128/T128F/T228 SCSI support"
1341         depends on ISA && SCSI
1342         select SCSI_SPI_ATTRS
1343         select CHECK_SIGNATURE
1344         ---help---
1345           This is support for a SCSI host adapter. It is explained in section
1346           3.11 of the SCSI-HOWTO, available from
1347           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
1348           of the box, you may have to change some settings in
1349           <file:drivers/scsi/t128.h>.  Note that Trantor was purchased by
1350           Adaptec, and some former Trantor products are being sold under the
1351           Adaptec name.
1352
1353           To compile this driver as a module, choose M here: the
1354           module will be called t128.
1355
1356 config SCSI_U14_34F
1357         tristate "UltraStor 14F/34F support"
1358         depends on ISA && SCSI && ISA_DMA_API
1359         ---help---
1360           This is support for the UltraStor 14F and 34F SCSI-2 host adapters.
1361           The source at <file:drivers/scsi/u14-34f.c> contains some
1362           information about this hardware.  If the driver doesn't work out of
1363           the box, you may have to change some settings in
1364           <file: drivers/scsi/u14-34f.c>.  Read the SCSI-HOWTO, available from
1365           <http://www.tldp.org/docs.html#howto>.  Note that there is also
1366           another driver for the same hardware: "UltraStor SCSI support",
1367           below.  You should say Y to both only if you want 24F support as
1368           well.
1369
1370           To compile this driver as a module, choose M here: the
1371           module will be called u14-34f.
1372
1373 config SCSI_U14_34F_TAGGED_QUEUE
1374         bool "enable tagged command queueing"
1375         depends on SCSI_U14_34F
1376         help
1377           This is a feature of SCSI-2 which improves performance: the host
1378           adapter can send several SCSI commands to a device's queue even if
1379           previous commands haven't finished yet.
1380           This is equivalent to the "u14-34f=tc:y" boot option.
1381
1382 config SCSI_U14_34F_LINKED_COMMANDS
1383         bool "enable elevator sorting"
1384         depends on SCSI_U14_34F
1385         help
1386           This option enables elevator sorting for all probed SCSI disks and
1387           CD-ROMs. It definitely reduces the average seek distance when doing
1388           random seeks, but this does not necessarily result in a noticeable
1389           performance improvement: your mileage may vary...
1390           This is equivalent to the "u14-34f=lc:y" boot option.
1391
1392 config SCSI_U14_34F_MAX_TAGS
1393         int "maximum number of queued commands"
1394         depends on SCSI_U14_34F
1395         default "8"
1396         help
1397           This specifies how many SCSI commands can be maximally queued for
1398           each probed SCSI device. You should reduce the default value of 8
1399           only if you have disks with buggy or limited tagged command support.
1400           Minimum is 2 and maximum is 14. This value is also the window size
1401           used by the elevator sorting option above. The effective value used
1402           by the driver for each probed SCSI device is reported at boot time.
1403           This is equivalent to the "u14-34f=mq:8" boot option.
1404
1405 config SCSI_ULTRASTOR
1406         tristate "UltraStor SCSI support"
1407         depends on X86 && ISA && SCSI
1408         ---help---
1409           This is support for the UltraStor 14F, 24F and 34F SCSI-2 host
1410           adapter family.  This driver is explained in section 3.12 of the
1411           SCSI-HOWTO, available from
1412           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
1413           of the box, you may have to change some settings in
1414           <file:drivers/scsi/ultrastor.h>.
1415
1416           Note that there is also another driver for the same hardware:
1417           "UltraStor 14F/34F support", above.
1418
1419           To compile this driver as a module, choose M here: the
1420           module will be called ultrastor.
1421
1422 config SCSI_NSP32
1423         tristate "Workbit NinjaSCSI-32Bi/UDE support"
1424         depends on PCI && SCSI && !64BIT
1425         help
1426           This is support for the Workbit NinjaSCSI-32Bi/UDE PCI/Cardbus
1427           SCSI host adapter. Please read the SCSI-HOWTO, available from
1428           <http://www.tldp.org/docs.html#howto>.
1429
1430           To compile this driver as a module, choose M here: the
1431           module will be called nsp32.
1432
1433 config SCSI_DEBUG
1434         tristate "SCSI debugging host simulator"
1435         depends on SCSI
1436         select CRC_T10DIF
1437         help
1438           This is a host adapter simulator that can simulate multiple hosts
1439           each with multiple dummy SCSI devices (disks). It defaults to one
1440           host adapter with one dummy SCSI disk. Each dummy disk uses kernel
1441           RAM as storage (i.e. it is a ramdisk). To save space when multiple
1442           dummy disks are simulated, they share the same kernel RAM for 
1443           their storage. See <http://sg.danny.cz/sg/sdebug26.html> for more
1444           information. This driver is primarily of use to those testing the
1445           SCSI and block subsystems. If unsure, say N.
1446
1447 config SCSI_MESH
1448         tristate "MESH (Power Mac internal SCSI) support"
1449         depends on PPC32 && PPC_PMAC && SCSI
1450         help
1451           Many Power Macintoshes and clones have a MESH (Macintosh Enhanced
1452           SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the
1453           other Power Macintoshes do). Say Y to include support for this SCSI
1454           adaptor.
1455
1456           To compile this driver as a module, choose M here: the
1457           module will be called mesh.
1458
1459 config SCSI_MESH_SYNC_RATE
1460         int "maximum synchronous transfer rate (MB/s) (0 = async)"
1461         depends on SCSI_MESH
1462         default "5"
1463         help
1464           On Power Macintoshes (and clones) where the MESH SCSI bus adaptor
1465           drives a bus which is entirely internal to the machine (such as the
1466           7500, 7600, 8500, etc.), the MESH is capable of synchronous
1467           operation at up to 10 MB/s. On machines where the SCSI bus
1468           controlled by the MESH can have external devices connected, it is
1469           usually rated at 5 MB/s. 5 is a safe value here unless you know the
1470           MESH SCSI bus is internal only; in that case you can say 10. Say 0
1471           to disable synchronous operation.
1472
1473 config SCSI_MESH_RESET_DELAY_MS
1474         int "initial bus reset delay (ms) (0 = no reset)"
1475         depends on SCSI_MESH
1476         default "4000"
1477
1478 config SCSI_MAC53C94
1479         tristate "53C94 (Power Mac external SCSI) support"
1480         depends on PPC32 && PPC_PMAC && SCSI
1481         help
1482           On Power Macintoshes (and clones) with two SCSI buses, the external
1483           SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older
1484           machines which only have one SCSI bus, such as the 7200, also use
1485           the 53C94. Say Y to include support for the 53C94.
1486
1487           To compile this driver as a module, choose M here: the
1488           module will be called mac53c94.
1489
1490 source "drivers/scsi/arm/Kconfig"
1491
1492 config JAZZ_ESP
1493         bool "MIPS JAZZ FAS216 SCSI support"
1494         depends on MACH_JAZZ && SCSI
1495         select SCSI_SPI_ATTRS
1496         help
1497           This is the driver for the onboard SCSI host adapter of MIPS Magnum
1498           4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
1499           systems.
1500
1501 config A3000_SCSI
1502         tristate "A3000 WD33C93A support"
1503         depends on AMIGA && SCSI
1504         help
1505           If you have an Amiga 3000 and have SCSI devices connected to the
1506           built-in SCSI controller, say Y. Otherwise, say N.
1507
1508           To compile this driver as a module, choose M here: the
1509           module will be called a3000.
1510
1511 config A2091_SCSI
1512         tristate "A2091/A590 WD33C93A support"
1513         depends on ZORRO && SCSI
1514         help
1515           If you have a Commodore A2091 SCSI controller, say Y. Otherwise,
1516           say N.
1517
1518           To compile this driver as a module, choose M here: the
1519           module will be called a2091.
1520
1521 config GVP11_SCSI
1522         tristate "GVP Series II WD33C93A support"
1523         depends on ZORRO && SCSI
1524         ---help---
1525           If you have a Great Valley Products Series II SCSI controller,
1526           answer Y. Also say Y if you have a later model of GVP SCSI
1527           controller (such as the GVP A4008 or a Combo board). Otherwise,
1528           answer N. This driver does NOT work for the T-Rex series of
1529           accelerators from TekMagic and GVP-M.
1530
1531           To compile this driver as a module, choose M here: the
1532           module will be called gvp11.
1533
1534 config SCSI_A4000T
1535         tristate "A4000T NCR53c710 SCSI support"
1536         depends on AMIGA && SCSI
1537         select SCSI_SPI_ATTRS
1538         help
1539           If you have an Amiga 4000T and have SCSI devices connected to the
1540           built-in SCSI controller, say Y. Otherwise, say N.
1541
1542           To compile this driver as a module, choose M here: the
1543           module will be called a4000t.
1544
1545 config SCSI_ZORRO7XX
1546         tristate "Zorro NCR53c710 SCSI support"
1547         depends on ZORRO && SCSI
1548         select SCSI_SPI_ATTRS
1549         help
1550           Support for various NCR53c710-based SCSI controllers on Zorro
1551           expansion boards for the Amiga.
1552           This includes:
1553             - the Amiga 4091 Zorro III SCSI-2 controller,
1554             - the MacroSystem Development's WarpEngine Amiga SCSI-2 controller
1555               (info at
1556               <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>),
1557             - the SCSI controller on the Phase5 Blizzard PowerUP 603e+
1558               accelerator card for the Amiga 1200,
1559             - the SCSI controller on the GVP Turbo 040/060 accelerator.
1560
1561 config ATARI_SCSI
1562         tristate "Atari native SCSI support"
1563         depends on ATARI && SCSI
1564         select SCSI_SPI_ATTRS
1565         select NVRAM
1566         ---help---
1567           If you have an Atari with built-in NCR5380 SCSI controller (TT,
1568           Falcon, ...) say Y to get it supported. Of course also, if you have
1569           a compatible SCSI controller (e.g. for Medusa).
1570
1571           To compile this driver as a module, choose M here: the
1572           module will be called atari_scsi.
1573
1574           This driver supports both styles of NCR integration into the
1575           system: the TT style (separate DMA), and the Falcon style (via
1576           ST-DMA, replacing ACSI).  It does NOT support other schemes, like
1577           in the Hades (without DMA).
1578
1579 config ATARI_SCSI_TOSHIBA_DELAY
1580         bool "Long delays for Toshiba CD-ROMs"
1581         depends on ATARI_SCSI
1582         help
1583           This option increases the delay after a SCSI arbitration to
1584           accommodate some flaky Toshiba CD-ROM drives. Say Y if you intend to
1585           use a Toshiba CD-ROM drive; otherwise, the option is not needed and
1586           would impact performance a bit, so say N.
1587
1588 config ATARI_SCSI_RESET_BOOT
1589         bool "Reset SCSI-devices at boottime"
1590         depends on ATARI_SCSI
1591         help
1592           Reset the devices on your Atari whenever it boots.  This makes the
1593           boot process fractionally longer but may assist recovery from errors
1594           that leave the devices with SCSI operations partway completed.
1595
1596 config MAC_SCSI
1597         bool "Macintosh NCR5380 SCSI"
1598         depends on MAC && SCSI=y
1599         select SCSI_SPI_ATTRS
1600         help
1601           This is the NCR 5380 SCSI controller included on most of the 68030
1602           based Macintoshes.  If you have one of these say Y and read the
1603           SCSI-HOWTO, available from
1604           <http://www.tldp.org/docs.html#howto>.
1605
1606 config SCSI_MAC_ESP
1607         tristate "Macintosh NCR53c9[46] SCSI"
1608         depends on MAC && SCSI
1609         select SCSI_SPI_ATTRS
1610         help
1611           This is the NCR 53c9x SCSI controller found on most of the 68040
1612           based Macintoshes.
1613
1614           To compile this driver as a module, choose M here: the module
1615           will be called mac_esp.
1616
1617 config MVME147_SCSI
1618         bool "WD33C93 SCSI driver for MVME147"
1619         depends on MVME147 && SCSI=y
1620         select SCSI_SPI_ATTRS
1621         help
1622           Support for the on-board SCSI controller on the Motorola MVME147
1623           single-board computer.
1624
1625 config MVME16x_SCSI
1626         tristate "NCR53C710 SCSI driver for MVME16x"
1627         depends on MVME16x && SCSI
1628         select SCSI_SPI_ATTRS
1629         help
1630           The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710
1631           SCSI controller chip.  Almost everyone using one of these boards
1632           will want to say Y to this question.
1633
1634 config BVME6000_SCSI
1635         tristate "NCR53C710 SCSI driver for BVME6000"
1636         depends on BVME6000 && SCSI
1637         select SCSI_SPI_ATTRS
1638         help
1639           The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710
1640           SCSI controller chip.  Almost everyone using one of these boards
1641           will want to say Y to this question.
1642
1643 config SUN3_SCSI
1644         tristate "Sun3 NCR5380 SCSI"
1645         depends on SUN3 && SCSI
1646         select SCSI_SPI_ATTRS
1647         help
1648           This option will enable support for the OBIO (onboard io) NCR5380
1649           SCSI controller found in the Sun 3/50 and 3/60, as well as for
1650           "Sun3" type VME scsi controllers also based on the NCR5380.
1651           General Linux information on the Sun 3 series (now discontinued)
1652           is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
1653
1654 config SUN3X_ESP
1655         bool "Sun3x ESP SCSI"
1656         depends on SUN3X && SCSI=y
1657         select SCSI_SPI_ATTRS
1658         help
1659           The ESP was an on-board SCSI controller used on Sun 3/80
1660           machines.  Say Y here to compile in support for it.
1661
1662 config SCSI_SUNESP
1663         tristate "Sparc ESP Scsi Driver"
1664         depends on SBUS && SCSI
1665         select SCSI_SPI_ATTRS
1666         help
1667           This is the driver for the Sun ESP SCSI host adapter. The ESP
1668           chipset is present in most SPARC SBUS-based computers and
1669           supports the Emulex family of ESP SCSI chips (esp100, esp100A,
1670           esp236, fas101, fas236) as well as the Qlogic fas366 SCSI chip.
1671
1672           To compile this driver as a module, choose M here: the
1673           module will be called sun_esp.
1674
1675 config ZFCP
1676         tristate "FCP host bus adapter driver for IBM eServer zSeries"
1677         depends on S390 && QDIO && SCSI
1678         select SCSI_FC_ATTRS
1679         help
1680           If you want to access SCSI devices attached to your IBM eServer
1681           zSeries by means of Fibre Channel interfaces say Y.
1682           For details please refer to the documentation provided by IBM at
1683           <http://oss.software.ibm.com/developerworks/opensource/linux390>
1684
1685           This driver is also available as a module. This module will be
1686           called zfcp. If you want to compile it as a module, say M here
1687           and read <file:Documentation/kbuild/modules.txt>.
1688
1689 config SCSI_PMCRAID
1690         tristate "PMC SIERRA Linux MaxRAID adapter support"
1691         depends on PCI && SCSI && NET
1692         ---help---
1693           This driver supports the PMC SIERRA MaxRAID adapters.
1694
1695 config SCSI_PM8001
1696         tristate "PMC-Sierra SPC 8001 SAS/SATA Based Host Adapter driver"
1697         depends on PCI && SCSI
1698         select SCSI_SAS_LIBSAS
1699         help
1700           This driver supports PMC-Sierra PCIE SAS/SATA 8x6G SPC 8001 chip
1701           based host adapters.
1702
1703 config SCSI_BFA_FC
1704         tristate "Brocade BFA Fibre Channel Support"
1705         depends on PCI && SCSI
1706         select SCSI_FC_ATTRS
1707         help
1708           This bfa driver supports all Brocade PCIe FC/FCOE host adapters.
1709
1710           To compile this driver as a module, choose M here. The module will
1711           be called bfa.
1712
1713 config SCSI_VIRTIO
1714         tristate "virtio-scsi support"
1715         depends on VIRTIO
1716         select BLK_DEV_INTEGRITY
1717         help
1718           This is the virtual HBA driver for virtio.  If the kernel will
1719           be used in a virtual machine, say Y or M.
1720
1721 source "drivers/scsi/csiostor/Kconfig"
1722
1723 endif # SCSI_LOWLEVEL
1724
1725 source "drivers/scsi/pcmcia/Kconfig"
1726
1727 source "drivers/scsi/device_handler/Kconfig"
1728
1729 source "drivers/scsi/osd/Kconfig"
1730
1731 endmenu