netfilter: netns: shrink netns_ct struct
[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         select RAID_ATTRS
582         help
583           This driver adds support for the Mylex DAC960, AcceleRAID, and
584           eXtremeRAID PCI RAID controllers.  This driver supports the
585           newer, SCSI-based interface only.
586           This driver is a reimplementation of the original DAC960
587           driver. If you have used the DAC960 driver you should enable
588           this module.
589
590           To compile this driver as a module, choose M here: the
591           module will be called myrs.
592
593 config VMWARE_PVSCSI
594         tristate "VMware PVSCSI driver support"
595         depends on PCI && SCSI && X86
596         help
597           This driver supports VMware's para virtualized SCSI HBA.
598           To compile this driver as a module, choose M here: the
599           module will be called vmw_pvscsi.
600
601 config XEN_SCSI_FRONTEND
602         tristate "XEN SCSI frontend driver"
603         depends on SCSI && XEN
604         select XEN_XENBUS_FRONTEND
605         help
606           The XEN SCSI frontend driver allows the kernel to access SCSI Devices
607           within another guest OS (usually Dom0).
608           Only needed if the kernel is running in a XEN guest and generic
609           SCSI access to a device is needed.
610
611 config HYPERV_STORAGE
612         tristate "Microsoft Hyper-V virtual storage driver"
613         depends on SCSI && HYPERV
614         depends on m || SCSI_FC_ATTRS != m
615         default HYPERV
616         help
617           Select this option to enable the Hyper-V virtual storage driver.
618
619 config LIBFC
620         tristate "LibFC module"
621         depends on SCSI_FC_ATTRS
622         select CRC32
623         ---help---
624           Fibre Channel library module
625
626 config LIBFCOE
627         tristate "LibFCoE module"
628         depends on LIBFC
629         ---help---
630           Library for Fibre Channel over Ethernet module
631
632 config FCOE
633         tristate "FCoE module"
634         depends on PCI
635         depends on LIBFCOE
636         ---help---
637           Fibre Channel over Ethernet module
638
639 config FCOE_FNIC
640         tristate "Cisco FNIC Driver"
641         depends on PCI && X86
642         depends on LIBFCOE
643         help
644           This is support for the Cisco PCI-Express FCoE HBA.
645
646           To compile this driver as a module, choose M here and read
647           <file:Documentation/scsi/scsi.txt>.
648           The module will be called fnic.
649
650 config SCSI_SNIC
651         tristate "Cisco SNIC Driver"
652         depends on PCI && SCSI
653         help
654           This is support for the Cisco PCI-Express SCSI HBA.
655
656           To compile this driver as a module, choose M here and read
657           <file:Documentation/scsi/scsi.txt>.
658           The module will be called snic.
659
660 config SCSI_SNIC_DEBUG_FS
661         bool "Cisco SNIC Driver Debugfs Support"
662         depends on SCSI_SNIC && DEBUG_FS
663         help
664           This enables to list debugging information from SNIC Driver
665           available via debugfs file system
666
667 config SCSI_DMX3191D
668         tristate "DMX3191D SCSI support"
669         depends on PCI && SCSI
670         select SCSI_SPI_ATTRS
671         help
672           This is support for Domex DMX3191D SCSI Host Adapters.
673
674           To compile this driver as a module, choose M here: the
675           module will be called dmx3191d.
676
677 config SCSI_GDTH
678         tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support"
679         depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API
680         ---help---
681           Formerly called GDT SCSI Disk Array Controller Support.
682
683           This is a driver for RAID/SCSI Disk Array Controllers (EISA/ISA/PCI) 
684           manufactured by Intel Corporation/ICP vortex GmbH. It is documented
685           in the kernel source in <file:drivers/scsi/gdth.c> and
686           <file:drivers/scsi/gdth.h>.
687
688           To compile this driver as a module, choose M here: the
689           module will be called gdth.
690
691 config SCSI_ISCI
692         tristate "Intel(R) C600 Series Chipset SAS Controller"
693         depends on PCI && SCSI
694         depends on X86
695         select SCSI_SAS_LIBSAS
696         ---help---
697           This driver supports the 6Gb/s SAS capabilities of the storage
698           control unit found in the Intel(R) C600 series chipset.
699
700 config SCSI_GENERIC_NCR5380
701         tristate "Generic NCR5380/53c400 SCSI ISA card support"
702         depends on ISA && SCSI && HAS_IOPORT_MAP
703         select SCSI_SPI_ATTRS
704         ---help---
705           This is a driver for old ISA card SCSI controllers based on a
706           NCR 5380, 53C80, 53C400, 53C400A, or DTC 436 device.
707           Most boards such as the Trantor T130 fit this category, as do
708           various 8-bit and 16-bit ISA cards bundled with SCSI scanners.
709
710           To compile this driver as a module, choose M here: the
711           module will be called g_NCR5380.
712
713 config SCSI_IPS
714         tristate "IBM ServeRAID support"
715         depends on PCI && SCSI
716         ---help---
717           This is support for the IBM ServeRAID hardware RAID controllers.
718           See <http://www.developer.ibm.com/welcome/netfinity/serveraid.html>
719           and <http://www-947.ibm.com/support/entry/portal/docdisplay?brand=5000008&lndocid=SERV-RAID>
720           for more information.  If this driver does not work correctly
721           without modification please contact the author by email at
722           <ipslinux@adaptec.com>.
723
724           To compile this driver as a module, choose M here: the
725           module will be called ips.
726
727 config SCSI_IBMVSCSI
728         tristate "IBM Virtual SCSI support"
729         depends on PPC_PSERIES
730         select SCSI_SRP_ATTRS
731         help
732           This is the IBM POWER Virtual SCSI Client
733
734           To compile this driver as a module, choose M here: the
735           module will be called ibmvscsi.
736
737 config SCSI_IBMVSCSIS
738         tristate "IBM Virtual SCSI Server support"
739         depends on PPC_PSERIES && TARGET_CORE && SCSI && PCI
740         help
741           This is the IBM POWER Virtual SCSI Target Server
742           This driver uses the SRP protocol for communication between servers
743           guest and/or the host that run on the same server.
744           More information on VSCSI protocol can be found at www.power.org
745
746           The userspace configuration needed to initialize the driver can be
747           be found here:
748
749           https://github.com/powervm/ibmvscsis/wiki/Configuration
750
751           To compile this driver as a module, choose M here: the
752           module will be called ibmvscsis.
753
754 config SCSI_IBMVFC
755         tristate "IBM Virtual FC support"
756         depends on PPC_PSERIES && SCSI
757         depends on SCSI_FC_ATTRS
758         help
759           This is the IBM POWER Virtual FC Client
760
761           To compile this driver as a module, choose M here: the
762           module will be called ibmvfc.
763
764 config SCSI_IBMVFC_TRACE
765         bool "enable driver internal trace"
766         depends on SCSI_IBMVFC
767         default y
768         help
769           If you say Y here, the driver will trace all commands issued
770           to the adapter. Performance impact is minimal. Trace can be
771           dumped using /sys/class/scsi_host/hostXX/trace.
772
773 config SCSI_INITIO
774         tristate "Initio 9100U(W) support"
775         depends on PCI && SCSI
776         help
777           This is support for the Initio 91XXU(W) SCSI host adapter.  Please
778           read the SCSI-HOWTO, available from
779           <http://www.tldp.org/docs.html#howto>.
780
781           To compile this driver as a module, choose M here: the
782           module will be called initio.
783
784 config SCSI_INIA100
785         tristate "Initio INI-A100U2W support"
786         depends on PCI && SCSI
787         help
788           This is support for the Initio INI-A100U2W SCSI host adapter.
789           Please read the SCSI-HOWTO, available from
790           <http://www.tldp.org/docs.html#howto>.
791
792           To compile this driver as a module, choose M here: the
793           module will be called a100u2w.
794
795 config SCSI_PPA
796         tristate "IOMEGA parallel port (ppa - older drives)"
797         depends on SCSI && PARPORT_PC
798         ---help---
799           This driver supports older versions of IOMEGA's parallel port ZIP
800           drive (a 100 MB removable media device).
801
802           Note that you can say N here if you have the SCSI version of the ZIP
803           drive: it will be supported automatically if you said Y to the
804           generic "SCSI disk support", above.
805
806           If you have the ZIP Plus drive or a more recent parallel port ZIP
807           drive (if the supplied cable with the drive is labeled "AutoDetect")
808           then you should say N here and Y to "IOMEGA parallel port (imm -
809           newer drives)", below.
810
811           For more information about this driver and how to use it you should
812           read the file <file:Documentation/scsi/ppa.txt>.  You should also read
813           the SCSI-HOWTO, which is available from
814           <http://www.tldp.org/docs.html#howto>.  If you use this driver,
815           you will still be able to use the parallel port for other tasks,
816           such as a printer; it is safe to compile both drivers into the
817           kernel.
818
819           To compile this driver as a module, choose M here: the
820           module will be called ppa.
821
822 config SCSI_IMM
823         tristate "IOMEGA parallel port (imm - newer drives)"
824         depends on SCSI && PARPORT_PC
825         ---help---
826           This driver supports newer versions of IOMEGA's parallel port ZIP
827           drive (a 100 MB removable media device).
828
829           Note that you can say N here if you have the SCSI version of the ZIP
830           drive: it will be supported automatically if you said Y to the
831           generic "SCSI disk support", above.
832
833           If you have the ZIP Plus drive or a more recent parallel port ZIP
834           drive (if the supplied cable with the drive is labeled "AutoDetect")
835           then you should say Y here; if you have an older ZIP drive, say N
836           here and Y to "IOMEGA Parallel Port (ppa - older drives)", above.
837
838           For more information about this driver and how to use it you should
839           read the file <file:Documentation/scsi/ppa.txt>.  You should also read
840           the SCSI-HOWTO, which is available from
841           <http://www.tldp.org/docs.html#howto>.  If you use this driver,
842           you will still be able to use the parallel port for other tasks,
843           such as a printer; it is safe to compile both drivers into the
844           kernel.
845
846           To compile this driver as a module, choose M here: the
847           module will be called imm.
848
849 config SCSI_IZIP_EPP16
850         bool "ppa/imm option - Use slow (but safe) EPP-16"
851         depends on SCSI_PPA || SCSI_IMM
852         ---help---
853           EPP (Enhanced Parallel Port) is a standard for parallel ports which
854           allows them to act as expansion buses that can handle up to 64
855           peripheral devices.
856
857           Some parallel port chipsets are slower than their motherboard, and
858           so we have to control the state of the chipset's FIFO queue every
859           now and then to avoid data loss. This will be done if you say Y
860           here.
861
862           Generally, saying Y is the safe option and slows things down a bit.
863
864 config SCSI_IZIP_SLOW_CTR
865         bool "ppa/imm option - Assume slow parport control register"
866         depends on SCSI_PPA || SCSI_IMM
867         help
868           Some parallel ports are known to have excessive delays between
869           changing the parallel port control register and good data being
870           available on the parallel port data/status register. This option
871           forces a small delay (1.0 usec to be exact) after changing the
872           control register to let things settle out. Enabling this option may
873           result in a big drop in performance but some very old parallel ports
874           (found in 386 vintage machines) will not work properly.
875
876           Generally, saying N is fine.
877
878 config SCSI_LASI700
879         tristate "HP Lasi SCSI support for 53c700/710"
880         depends on GSC && SCSI
881         select SCSI_SPI_ATTRS
882         help
883           This is a driver for the SCSI controller in the Lasi chip found in
884           many PA-RISC workstations & servers.  If you do not know whether you
885           have a Lasi chip, it is safe to say "Y" here.
886
887 config SCSI_SNI_53C710
888         tristate "SNI RM SCSI support for 53c710"
889         depends on SNI_RM && SCSI
890         select SCSI_SPI_ATTRS
891         select 53C700_LE_ON_BE
892         help
893           This is a driver for the onboard SCSI controller found in older
894           SNI RM workstations & servers.
895
896 config 53C700_LE_ON_BE
897         bool
898         depends on SCSI_LASI700
899         default y
900
901 config SCSI_STEX
902         tristate "Promise SuperTrak EX Series support"
903         depends on PCI && SCSI
904         ---help---
905           This driver supports Promise SuperTrak EX series storage controllers.
906
907           Promise provides Linux RAID configuration utility for these
908           controllers. Please visit <http://www.promise.com> to download.
909
910           To compile this driver as a module, choose M here: the
911           module will be called stex.
912
913 config 53C700_BE_BUS
914         bool
915         depends on SCSI_A4000T || SCSI_ZORRO7XX || MVME16x_SCSI || BVME6000_SCSI
916         default y
917
918 config SCSI_SYM53C8XX_2
919         tristate "SYM53C8XX Version 2 SCSI support"
920         depends on PCI && SCSI
921         select SCSI_SPI_ATTRS
922         ---help---
923           This driver supports the whole NCR53C8XX/SYM53C8XX family of
924           PCI-SCSI controllers.  It also supports the subset of LSI53C10XX
925           Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
926           language.  It does not support LSI53C10XX Ultra-320 PCI-X SCSI
927           controllers; you need to use the Fusion MPT driver for that.
928
929           Please read <file:Documentation/scsi/sym53c8xx_2.txt> for more
930           information.
931
932 config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
933         int "DMA addressing mode"
934         depends on SCSI_SYM53C8XX_2
935         default "1"
936         ---help---
937           This option only applies to PCI-SCSI chips that are PCI DAC
938           capable (875A, 895A, 896, 1010-33, 1010-66, 1000).
939
940           When set to 0, the driver will program the chip to only perform
941           32-bit DMA.  When set to 1, the chip will be able to perform DMA
942           to addresses up to 1TB.  When set to 2, the driver supports the
943           full 64-bit DMA address range, but can only address 16 segments
944           of 4 GB each.  This limits the total addressable range to 64 GB.
945
946           Most machines with less than 4GB of memory should use a setting
947           of 0 for best performance.  If your machine has 4GB of memory
948           or more, you should set this option to 1 (the default).
949
950           The still experimental value 2 (64 bit DMA addressing with 16
951           x 4GB segments limitation) can be used on systems that require
952           PCI address bits past bit 39 to be set for the addressing of
953           memory using PCI DAC cycles.
954
955 config SCSI_SYM53C8XX_DEFAULT_TAGS
956         int "Default tagged command queue depth"
957         depends on SCSI_SYM53C8XX_2
958         default "16"
959         help
960           This is the default value of the command queue depth the
961           driver will announce to the generic SCSI layer for devices
962           that support tagged command queueing. This value can be changed
963           from the boot command line.  This is a soft limit that cannot
964           exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.
965
966 config SCSI_SYM53C8XX_MAX_TAGS
967         int "Maximum number of queued commands"
968         depends on SCSI_SYM53C8XX_2
969         default "64"
970         help
971           This option allows you to specify the maximum number of commands
972           that can be queued to any device, when tagged command queuing is
973           possible. The driver supports up to 256 queued commands per device.
974           This value is used as a compiled-in hard limit.
975
976 config SCSI_SYM53C8XX_MMIO
977         bool "Use memory mapped IO"
978         depends on SCSI_SYM53C8XX_2
979         default y
980         help
981           Memory mapped IO is faster than Port IO.  Most people should
982           answer Y here, but some machines may have problems.  If you have
983           to answer N here, please report the problem to the maintainer.
984
985 config SCSI_IPR
986         tristate "IBM Power Linux RAID adapter support"
987         depends on PCI && SCSI && ATA
988         select FW_LOADER
989         select IRQ_POLL
990         select SGL_ALLOC
991         ---help---
992           This driver supports the IBM Power Linux family RAID adapters.
993           This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
994           as IBM iSeries 5702, 5703, 5709, and 570A.
995
996 config SCSI_IPR_TRACE
997         bool "enable driver internal trace"
998         depends on SCSI_IPR
999         default y
1000         help
1001           If you say Y here, the driver will trace all commands issued
1002           to the adapter. Performance impact is minimal. Trace can be
1003           dumped using /sys/bus/class/scsi_host/hostXX/trace.
1004
1005 config SCSI_IPR_DUMP
1006         bool "enable adapter dump support"
1007         depends on SCSI_IPR
1008         default y
1009         help
1010           If you say Y here, the driver will support adapter crash dump.
1011           If you enable this support, the iprdump daemon can be used
1012           to capture adapter failure analysis information.
1013
1014 config SCSI_ZALON
1015         tristate "Zalon SCSI support"
1016         depends on GSC && SCSI
1017         select SCSI_SPI_ATTRS
1018         help
1019           The Zalon is a GSC/HSC bus interface chip that sits between the
1020           PA-RISC processor and the NCR 53c720 SCSI controller on C100,
1021           C110, J200, J210 and some D, K & R-class machines.  It's also
1022           used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
1023           Say Y here if you have one of these machines or cards.
1024
1025 config SCSI_NCR53C8XX_DEFAULT_TAGS
1026         int "default tagged command queue depth"
1027         depends on SCSI_ZALON
1028         default "8"
1029         ---help---
1030           "Tagged command queuing" is a feature of SCSI-2 which improves
1031           performance: the host adapter can send several SCSI commands to a
1032           device's queue even if previous commands haven't finished yet.
1033           Because the device is intelligent, it can optimize its operations
1034           (like head positioning) based on its own request queue. Some SCSI
1035           devices don't implement this properly; if you want to disable this
1036           feature, enter 0 or 1 here (it doesn't matter which).
1037
1038           The default value is 8 and should be supported by most hard disks.
1039           This value can be overridden from the boot command line using the
1040           'tags' option as follows (example):
1041           'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
1042           4, set queue depth to 16 for target 2 and target 3 on controller 0
1043           and set queue depth to 10 for target 0 / lun 2 on controller 1.
1044
1045           The normal answer therefore is to go with the default 8 and to use
1046           a boot command line option for devices that need to use a different
1047           command queue depth.
1048
1049           There is no safe option other than using good SCSI devices.
1050
1051 config SCSI_NCR53C8XX_MAX_TAGS
1052         int "maximum number of queued commands"
1053         depends on SCSI_ZALON
1054         default "32"
1055         ---help---
1056           This option allows you to specify the maximum number of commands
1057           that can be queued to any device, when tagged command queuing is
1058           possible. The default value is 32. Minimum is 2, maximum is 64.
1059           Modern hard disks are able to support 64 tags and even more, but
1060           do not seem to be faster when more than 32 tags are being used.
1061
1062           So, the normal answer here is to go with the default value 32 unless
1063           you are using very large hard disks with large cache (>= 1 MB) that
1064           are able to take advantage of more than 32 tagged commands.
1065
1066           There is no safe option and the default answer is recommended.
1067
1068 config SCSI_NCR53C8XX_SYNC
1069         int "synchronous transfers frequency in MHz"
1070         depends on SCSI_ZALON
1071         default "20"
1072         ---help---
1073           The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
1074           rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80.  The numbers
1075           are respectively the maximum data transfer rates in mega-transfers
1076           per second for each class.  For example, a FAST-20 Wide 16 device is
1077           able to transfer data at 20 million 16 bit packets per second for a
1078           total rate of 40 MB/s.
1079
1080           You may specify 0 if you want to only use asynchronous data
1081           transfers. This is the safest and slowest option. Otherwise, specify
1082           a value between 5 and 80, depending on the capability of your SCSI
1083           controller.  The higher the number, the faster the data transfer.
1084           Note that 80 should normally be ok since the driver decreases the
1085           value automatically according to the controller's capabilities.
1086
1087           Your answer to this question is ignored for controllers with NVRAM,
1088           since the driver will get this information from the user set-up.  It
1089           also can be overridden using a boot setup option, as follows
1090           (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
1091           for FAST-20 synchronous data transfer (20 mega-transfers per
1092           second).
1093
1094           The normal answer therefore is not to go with the default but to
1095           select the maximum value 80 allowing the driver to use the maximum
1096           value supported by each controller. If this causes problems with
1097           your SCSI devices, you should come back and decrease the value.
1098
1099           There is no safe option other than using good cabling, right
1100           terminations and SCSI conformant devices.
1101
1102 config SCSI_NCR53C8XX_NO_DISCONNECT
1103         bool "not allow targets to disconnect"
1104         depends on SCSI_ZALON && SCSI_NCR53C8XX_DEFAULT_TAGS=0
1105         help
1106           This option is only provided for safety if you suspect some SCSI
1107           device of yours to not support properly the target-disconnect
1108           feature. In that case, you would say Y here. In general however, to
1109           not allow targets to disconnect is not reasonable if there is more
1110           than 1 device on a SCSI bus. The normal answer therefore is N.
1111
1112 config SCSI_QLOGIC_FAS
1113         tristate "Qlogic FAS SCSI support"
1114         depends on ISA && SCSI
1115         ---help---
1116           This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic
1117           FastSCSI! cards as well as any other card based on the FASXX chip
1118           (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
1119
1120           This driver does NOT support the PCI versions of these cards. The
1121           PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP
1122           SCSI support"), below.
1123
1124           Information about this driver is contained in
1125           <file:Documentation/scsi/qlogicfas.txt>.  You should also read the
1126           SCSI-HOWTO, available from
1127           <http://www.tldp.org/docs.html#howto>.
1128
1129           To compile this driver as a module, choose M here: the
1130           module will be called qlogicfas.
1131
1132 config SCSI_QLOGIC_1280
1133         tristate "Qlogic QLA 1240/1x80/1x160 SCSI support"
1134         depends on PCI && SCSI
1135         help
1136           Say Y if you have a QLogic ISP1240/1x80/1x160 SCSI host adapter.
1137
1138           To compile this driver as a module, choose M here: the
1139           module will be called qla1280.
1140
1141 config SCSI_QLOGICPTI
1142         tristate "PTI Qlogic, ISP Driver"
1143         depends on SBUS && SCSI
1144         help
1145           This driver supports SBUS SCSI controllers from PTI or QLogic. These
1146           controllers are known under Solaris as qpti and in the openprom as
1147           PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
1148           driven by a different driver.
1149
1150           To compile this driver as a module, choose M here: the
1151           module will be called qlogicpti.
1152
1153 source "drivers/scsi/qla2xxx/Kconfig"
1154 source "drivers/scsi/qla4xxx/Kconfig"
1155 source "drivers/scsi/qedi/Kconfig"
1156 source "drivers/scsi/qedf/Kconfig"
1157
1158 config SCSI_LPFC
1159         tristate "Emulex LightPulse Fibre Channel Support"
1160         depends on PCI && SCSI
1161         depends on SCSI_FC_ATTRS
1162         depends on NVME_TARGET_FC || NVME_TARGET_FC=n
1163         depends on NVME_FC || NVME_FC=n
1164         select CRC_T10DIF
1165         ---help---
1166           This lpfc driver supports the Emulex LightPulse
1167           Family of Fibre Channel PCI host adapters.
1168
1169 config SCSI_LPFC_DEBUG_FS
1170         bool "Emulex LightPulse Fibre Channel debugfs Support"
1171         depends on SCSI_LPFC && DEBUG_FS
1172         ---help---
1173           This makes debugging information from the lpfc driver
1174           available via the debugfs filesystem.
1175
1176 config SCSI_SIM710
1177         tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
1178         depends on EISA && SCSI
1179         select SCSI_SPI_ATTRS
1180         ---help---
1181           This driver is for NCR53c710 based SCSI host adapters.
1182
1183           It currently supports Compaq EISA cards.
1184
1185 config SCSI_DC395x
1186         tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support"
1187         depends on PCI && SCSI
1188         ---help---
1189           This driver supports PCI SCSI host adapters based on the ASIC
1190           TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants.
1191
1192           This driver works, but is still in experimental status. So better
1193           have a bootable disk and a backup in case of emergency.
1194
1195           Documentation can be found in <file:Documentation/scsi/dc395x.txt>.
1196
1197           To compile this driver as a module, choose M here: the
1198           module will be called dc395x.
1199
1200 config SCSI_AM53C974
1201         tristate "Tekram DC390(T) and Am53/79C974 SCSI support (new driver)"
1202         depends on PCI && SCSI
1203         select SCSI_SPI_ATTRS
1204         ---help---
1205           This driver supports PCI SCSI host adapters based on the Am53C974A
1206           chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard
1207           PCscsi/PCnet (Am53/79C974) solutions.
1208           This is a new implementation base on the generic esp_scsi driver.
1209
1210           Documentation can be found in <file:Documentation/scsi/tmscsim.txt>.
1211
1212           Note that this driver does NOT support Tekram DC390W/U/F, which are
1213           based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those.
1214
1215           To compile this driver as a module, choose M here: the
1216           module will be called am53c974.
1217
1218 config SCSI_NSP32
1219         tristate "Workbit NinjaSCSI-32Bi/UDE support"
1220         depends on PCI && SCSI && !64BIT
1221         help
1222           This is support for the Workbit NinjaSCSI-32Bi/UDE PCI/Cardbus
1223           SCSI host adapter. Please read the SCSI-HOWTO, available from
1224           <http://www.tldp.org/docs.html#howto>.
1225
1226           To compile this driver as a module, choose M here: the
1227           module will be called nsp32.
1228
1229 config SCSI_WD719X
1230         tristate "Western Digital WD7193/7197/7296 support"
1231         depends on PCI && SCSI
1232         select EEPROM_93CX6
1233         ---help---
1234           This is a driver for Western Digital WD7193, WD7197 and WD7296 PCI
1235           SCSI controllers (based on WD33C296A chip).
1236
1237 config SCSI_DEBUG
1238         tristate "SCSI debugging host and device simulator"
1239         depends on SCSI
1240         select CRC_T10DIF
1241         help
1242           This pseudo driver simulates one or more hosts (SCSI initiators),
1243           each with one or more targets, each with one or more logical units.
1244           Defaults to one of each, creating a small RAM disk device. Many
1245           parameters found in the /sys/bus/pseudo/drivers/scsi_debug
1246           directory can be tweaked at run time.
1247           See <http://sg.danny.cz/sg/sdebug26.html> for more information.
1248           Mainly used for testing and best as a module. If unsure, say N.
1249
1250 config SCSI_MESH
1251         tristate "MESH (Power Mac internal SCSI) support"
1252         depends on PPC32 && PPC_PMAC && SCSI
1253         help
1254           Many Power Macintoshes and clones have a MESH (Macintosh Enhanced
1255           SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the
1256           other Power Macintoshes do). Say Y to include support for this SCSI
1257           adaptor.
1258
1259           To compile this driver as a module, choose M here: the
1260           module will be called mesh.
1261
1262 config SCSI_MESH_SYNC_RATE
1263         int "maximum synchronous transfer rate (MB/s) (0 = async)"
1264         depends on SCSI_MESH
1265         default "5"
1266         help
1267           On Power Macintoshes (and clones) where the MESH SCSI bus adaptor
1268           drives a bus which is entirely internal to the machine (such as the
1269           7500, 7600, 8500, etc.), the MESH is capable of synchronous
1270           operation at up to 10 MB/s. On machines where the SCSI bus
1271           controlled by the MESH can have external devices connected, it is
1272           usually rated at 5 MB/s. 5 is a safe value here unless you know the
1273           MESH SCSI bus is internal only; in that case you can say 10. Say 0
1274           to disable synchronous operation.
1275
1276 config SCSI_MESH_RESET_DELAY_MS
1277         int "initial bus reset delay (ms) (0 = no reset)"
1278         depends on SCSI_MESH
1279         default "4000"
1280
1281 config SCSI_MAC53C94
1282         tristate "53C94 (Power Mac external SCSI) support"
1283         depends on PPC32 && PPC_PMAC && SCSI
1284         help
1285           On Power Macintoshes (and clones) with two SCSI buses, the external
1286           SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older
1287           machines which only have one SCSI bus, such as the 7200, also use
1288           the 53C94. Say Y to include support for the 53C94.
1289
1290           To compile this driver as a module, choose M here: the
1291           module will be called mac53c94.
1292
1293 source "drivers/scsi/arm/Kconfig"
1294
1295 config JAZZ_ESP
1296         bool "MIPS JAZZ FAS216 SCSI support"
1297         depends on MACH_JAZZ && SCSI
1298         select SCSI_SPI_ATTRS
1299         help
1300           This is the driver for the onboard SCSI host adapter of MIPS Magnum
1301           4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
1302           systems.
1303
1304 config A3000_SCSI
1305         tristate "A3000 WD33C93A support"
1306         depends on AMIGA && SCSI
1307         help
1308           If you have an Amiga 3000 and have SCSI devices connected to the
1309           built-in SCSI controller, say Y. Otherwise, say N.
1310
1311           To compile this driver as a module, choose M here: the
1312           module will be called a3000.
1313
1314 config A2091_SCSI
1315         tristate "A2091/A590 WD33C93A support"
1316         depends on ZORRO && SCSI
1317         help
1318           If you have a Commodore A2091 SCSI controller, say Y. Otherwise,
1319           say N.
1320
1321           To compile this driver as a module, choose M here: the
1322           module will be called a2091.
1323
1324 config GVP11_SCSI
1325         tristate "GVP Series II WD33C93A support"
1326         depends on ZORRO && SCSI
1327         ---help---
1328           If you have a Great Valley Products Series II SCSI controller,
1329           answer Y. Also say Y if you have a later model of GVP SCSI
1330           controller (such as the GVP A4008 or a Combo board). Otherwise,
1331           answer N. This driver does NOT work for the T-Rex series of
1332           accelerators from TekMagic and GVP-M.
1333
1334           To compile this driver as a module, choose M here: the
1335           module will be called gvp11.
1336
1337 config SCSI_A4000T
1338         tristate "A4000T NCR53c710 SCSI support"
1339         depends on AMIGA && SCSI
1340         select SCSI_SPI_ATTRS
1341         help
1342           If you have an Amiga 4000T and have SCSI devices connected to the
1343           built-in SCSI controller, say Y. Otherwise, say N.
1344
1345           To compile this driver as a module, choose M here: the
1346           module will be called a4000t.
1347
1348 config SCSI_ZORRO7XX
1349         tristate "Zorro NCR53c710 SCSI support"
1350         depends on ZORRO && SCSI
1351         select SCSI_SPI_ATTRS
1352         help
1353           Support for various NCR53c710-based SCSI controllers on Zorro
1354           expansion boards for the Amiga.
1355           This includes:
1356             - the Amiga 4091 Zorro III SCSI-2 controller,
1357             - the MacroSystem Development's WarpEngine Amiga SCSI-2 controller
1358               (info at
1359               <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>),
1360             - the SCSI controller on the Phase5 Blizzard PowerUP 603e+
1361               accelerator card for the Amiga 1200,
1362             - the SCSI controller on the GVP Turbo 040/060 accelerator.
1363
1364 config SCSI_ZORRO_ESP
1365         tristate "Zorro ESP SCSI support"
1366         depends on ZORRO && SCSI
1367         select SCSI_SPI_ATTRS
1368         select SCSI_ESP_PIO
1369         help
1370           Support for various NCR53C9x (ESP) based SCSI controllers on Zorro
1371           expansion boards for the Amiga.
1372           This includes:
1373             - the Phase5 Blizzard 1230 II and IV SCSI controllers,
1374             - the Phase5 Blizzard 2060 SCSI controller,
1375             - the Phase5 Blizzard Cyberstorm and Cyberstorm II SCSI
1376               controllers,
1377             - the Fastlane Zorro III SCSI controller.
1378
1379 config ATARI_SCSI
1380         tristate "Atari native SCSI support"
1381         depends on ATARI && SCSI
1382         select SCSI_SPI_ATTRS
1383         select NVRAM
1384         ---help---
1385           If you have an Atari with built-in NCR5380 SCSI controller (TT,
1386           Falcon, ...) say Y to get it supported. Of course also, if you have
1387           a compatible SCSI controller (e.g. for Medusa).
1388
1389           To compile this driver as a module, choose M here: the
1390           module will be called atari_scsi.
1391
1392           This driver supports both styles of NCR integration into the
1393           system: the TT style (separate DMA), and the Falcon style (via
1394           ST-DMA, replacing ACSI).  It does NOT support other schemes, like
1395           in the Hades (without DMA).
1396
1397 config MAC_SCSI
1398         tristate "Macintosh NCR5380 SCSI"
1399         depends on MAC && SCSI
1400         select SCSI_SPI_ATTRS
1401         help
1402           This is the NCR 5380 SCSI controller included on most of the 68030
1403           based Macintoshes.  If you have one of these say Y and read the
1404           SCSI-HOWTO, available from
1405           <http://www.tldp.org/docs.html#howto>.
1406
1407 config SCSI_MAC_ESP
1408         tristate "Macintosh NCR53c9[46] SCSI"
1409         depends on MAC && SCSI
1410         select SCSI_SPI_ATTRS
1411         select SCSI_ESP_PIO
1412         help
1413           This is the NCR 53c9x SCSI controller found on most of the 68040
1414           based Macintoshes.
1415
1416           To compile this driver as a module, choose M here: the module
1417           will be called mac_esp.
1418
1419 config MVME147_SCSI
1420         bool "WD33C93 SCSI driver for MVME147"
1421         depends on MVME147 && SCSI=y
1422         select SCSI_SPI_ATTRS
1423         help
1424           Support for the on-board SCSI controller on the Motorola MVME147
1425           single-board computer.
1426
1427 config MVME16x_SCSI
1428         tristate "NCR53C710 SCSI driver for MVME16x"
1429         depends on MVME16x && SCSI
1430         select SCSI_SPI_ATTRS
1431         help
1432           The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710
1433           SCSI controller chip.  Almost everyone using one of these boards
1434           will want to say Y to this question.
1435
1436 config BVME6000_SCSI
1437         tristate "NCR53C710 SCSI driver for BVME6000"
1438         depends on BVME6000 && SCSI
1439         select SCSI_SPI_ATTRS
1440         help
1441           The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710
1442           SCSI controller chip.  Almost everyone using one of these boards
1443           will want to say Y to this question.
1444
1445 config SUN3_SCSI
1446         tristate "Sun3 NCR5380 SCSI"
1447         depends on SUN3 && SCSI
1448         select SCSI_SPI_ATTRS
1449         help
1450           This option will enable support for the OBIO (onboard io) NCR5380
1451           SCSI controller found in the Sun 3/50 and 3/60, as well as for
1452           "Sun3" type VME scsi controllers also based on the NCR5380.
1453           General Linux information on the Sun 3 series (now discontinued)
1454           is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
1455
1456 config SUN3X_ESP
1457         bool "Sun3x ESP SCSI"
1458         depends on SUN3X && SCSI=y
1459         select SCSI_SPI_ATTRS
1460         help
1461           The ESP was an on-board SCSI controller used on Sun 3/80
1462           machines.  Say Y here to compile in support for it.
1463
1464 config SCSI_SUNESP
1465         tristate "Sparc ESP Scsi Driver"
1466         depends on SBUS && SCSI
1467         select SCSI_SPI_ATTRS
1468         help
1469           This is the driver for the Sun ESP SCSI host adapter. The ESP
1470           chipset is present in most SPARC SBUS-based computers and
1471           supports the Emulex family of ESP SCSI chips (esp100, esp100A,
1472           esp236, fas101, fas236) as well as the Qlogic fas366 SCSI chip.
1473
1474           To compile this driver as a module, choose M here: the
1475           module will be called sun_esp.
1476
1477 config ZFCP
1478         tristate "FCP host bus adapter driver for IBM eServer zSeries"
1479         depends on S390 && QDIO && SCSI
1480         depends on SCSI_FC_ATTRS
1481         help
1482           If you want to access SCSI devices attached to your IBM eServer
1483           zSeries by means of Fibre Channel interfaces say Y.
1484           For details please refer to the documentation provided by IBM at
1485           <http://oss.software.ibm.com/developerworks/opensource/linux390>
1486
1487           This driver is also available as a module. This module will be
1488           called zfcp. If you want to compile it as a module, say M here
1489           and read <file:Documentation/kbuild/modules.txt>.
1490
1491 config SCSI_PMCRAID
1492         tristate "PMC SIERRA Linux MaxRAID adapter support"
1493         depends on PCI && SCSI && NET
1494         select SGL_ALLOC
1495         ---help---
1496           This driver supports the PMC SIERRA MaxRAID adapters.
1497
1498 config SCSI_PM8001
1499         tristate "PMC-Sierra SPC 8001 SAS/SATA Based Host Adapter driver"
1500         depends on PCI && SCSI
1501         select SCSI_SAS_LIBSAS
1502         help
1503           This driver supports PMC-Sierra PCIE SAS/SATA 8x6G SPC 8001 chip
1504           based host adapters.
1505
1506 config SCSI_BFA_FC
1507         tristate "Brocade BFA Fibre Channel Support"
1508         depends on PCI && SCSI
1509         depends on SCSI_FC_ATTRS
1510         help
1511           This bfa driver supports all Brocade PCIe FC/FCOE host adapters.
1512
1513           To compile this driver as a module, choose M here. The module will
1514           be called bfa.
1515
1516 config SCSI_VIRTIO
1517         tristate "virtio-scsi support"
1518         depends on VIRTIO
1519         help
1520           This is the virtual HBA driver for virtio.  If the kernel will
1521           be used in a virtual machine, say Y or M.
1522
1523 source "drivers/scsi/csiostor/Kconfig"
1524
1525 endif # SCSI_LOWLEVEL
1526
1527 source "drivers/scsi/pcmcia/Kconfig"
1528
1529 source "drivers/scsi/device_handler/Kconfig"
1530
1531 source "drivers/scsi/osd/Kconfig"
1532
1533 endmenu