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