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