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