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