xref: /linux/drivers/scsi/Kconfig (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
21da177e4SLinus Torvaldsmenu "SCSI device support"
31da177e4SLinus Torvalds
4fac829fdSJames Bottomleyconfig SCSI_MOD
5fac829fdSJames Bottomley	tristate
6fac829fdSJames Bottomley	default y if SCSI=n || SCSI=y
7fac829fdSJames Bottomley	default m if SCSI=m
83d217b9aSLukas Bulwahn	depends on BLOCK
9fac829fdSJames Bottomley
1061a7afa2SJames Bottomleyconfig RAID_ATTRS
1161a7afa2SJames Bottomley	tristate "RAID Transport Class"
1261a7afa2SJames Bottomley	default n
139361401eSDavid Howells	depends on BLOCK
14fac829fdSJames Bottomley	depends on SCSI_MOD
15a7f7f624SMasahiro Yamada	help
1661a7afa2SJames Bottomley	  Provides RAID
1761a7afa2SJames Bottomley
1833ff4ce4SChristoph Hellwigconfig SCSI_COMMON
1933ff4ce4SChristoph Hellwig	tristate
2033ff4ce4SChristoph Hellwig
211da177e4SLinus Torvaldsconfig SCSI
221da177e4SLinus Torvalds	tristate "SCSI device support"
239361401eSDavid Howells	depends on BLOCK
247689e82eSCornelia Huck	select SCSI_DMA if HAS_DMA
259b1d6c89SMing Lin	select SG_POOL
2633ff4ce4SChristoph Hellwig	select SCSI_COMMON
2778011042SChristoph Hellwig	select BLK_DEV_BSG_COMMON if BLK_DEV_BSG
28a7f7f624SMasahiro Yamada	help
291da177e4SLinus Torvalds	  If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
301da177e4SLinus Torvalds	  any other SCSI device under Linux, say Y and make sure that you know
311da177e4SLinus Torvalds	  the name of your SCSI host adapter (the card inside your computer
321da177e4SLinus Torvalds	  that "speaks" the SCSI protocol, also called SCSI controller),
331da177e4SLinus Torvalds	  because you will be asked for it.
341da177e4SLinus Torvalds
351da177e4SLinus Torvalds	  You also need to say Y here if you have a device which speaks
361da177e4SLinus Torvalds	  the SCSI protocol.  Examples of this include the parallel port
371da177e4SLinus Torvalds	  version of the IOMEGA ZIP drive, USB storage devices, Fibre
3893c164afSFUJITA Tomonori	  Channel, and FireWire storage.
391da177e4SLinus Torvalds
401da177e4SLinus Torvalds	  To compile this driver as a module, choose M here and read
41b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>.
421da177e4SLinus Torvalds	  The module will be called scsi_mod.
431da177e4SLinus Torvalds
441da177e4SLinus Torvalds	  However, do not compile this as a module if your root file system
451da177e4SLinus Torvalds	  (the one containing the directory /) is located on a SCSI device.
461da177e4SLinus Torvalds
477689e82eSCornelia Huckconfig SCSI_DMA
487689e82eSCornelia Huck	bool
497689e82eSCornelia Huck	default n
507689e82eSCornelia Huck
5153dce332SFinn Thainconfig SCSI_ESP_PIO
5253dce332SFinn Thain	bool
5353dce332SFinn Thain
5484314fd4SJames Smartconfig SCSI_NETLINK
552b7cbe20SJames Bottomley	bool
5684314fd4SJames Smart	default n
575d6be6a5SAnish Bhatt	depends on NET
5884314fd4SJames Smart
591da177e4SLinus Torvaldsconfig SCSI_PROC_FS
601da177e4SLinus Torvalds	bool "legacy /proc/scsi/ support"
611da177e4SLinus Torvalds	depends on SCSI && PROC_FS
621da177e4SLinus Torvalds	default y
63a7f7f624SMasahiro Yamada	help
641da177e4SLinus Torvalds	  This option enables support for the various files in
6509509603SMatt LaPlante	  /proc/scsi.  In Linux 2.6 this has been superseded by
661da177e4SLinus Torvalds	  files in sysfs but many legacy applications rely on this.
671da177e4SLinus Torvalds
6809509603SMatt LaPlante	  If unsure say Y.
691da177e4SLinus Torvalds
7025a1f7a0SMike Christieconfig SCSI_LIB_KUNIT_TEST
7125a1f7a0SMike Christie	tristate "KUnit tests for SCSI Mid Layer's scsi_lib" if !KUNIT_ALL_TESTS
7225a1f7a0SMike Christie	depends on KUNIT
7325a1f7a0SMike Christie	default KUNIT_ALL_TESTS
7425a1f7a0SMike Christie	help
7525a1f7a0SMike Christie	  Run SCSI Mid Layer's KUnit tests for scsi_lib.
7625a1f7a0SMike Christie
7725a1f7a0SMike Christie	  If unsure say N.
7825a1f7a0SMike Christie
791da177e4SLinus Torvaldscomment "SCSI support type (disk, tape, CD-ROM)"
801da177e4SLinus Torvalds	depends on SCSI
811da177e4SLinus Torvalds
821da177e4SLinus Torvaldsconfig BLK_DEV_SD
831da177e4SLinus Torvalds	tristate "SCSI disk support"
841da177e4SLinus Torvalds	depends on SCSI
85a7f7f624SMasahiro Yamada	help
861da177e4SLinus Torvalds	  If you want to use SCSI hard disks, Fibre Channel disks,
87abcdceb9SRandy Dunlap	  Serial ATA (SATA) or Parallel ATA (PATA) hard disks,
881da177e4SLinus Torvalds	  USB storage or the SCSI or parallel port version of
891da177e4SLinus Torvalds	  the IOMEGA ZIP drive, say Y and read the SCSI-HOWTO,
901da177e4SLinus Torvalds	  the Disk-HOWTO and the Multi-Disk-HOWTO, available from
911da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>. This is NOT for SCSI
921da177e4SLinus Torvalds	  CD-ROMs.
931da177e4SLinus Torvalds
941da177e4SLinus Torvalds	  To compile this driver as a module, choose M here and read
95b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>.
961da177e4SLinus Torvalds	  The module will be called sd_mod.
971da177e4SLinus Torvalds
981da177e4SLinus Torvalds	  Do not compile this driver as a module if your root file system
991da177e4SLinus Torvalds	  (the one containing the directory /) is located on a SCSI disk.
1001da177e4SLinus Torvalds	  In this case, do not compile the driver for your SCSI host adapter
1011da177e4SLinus Torvalds	  (below) as a module either.
1021da177e4SLinus Torvalds
1031da177e4SLinus Torvaldsconfig CHR_DEV_ST
1041da177e4SLinus Torvalds	tristate "SCSI tape support"
1051da177e4SLinus Torvalds	depends on SCSI
106a7f7f624SMasahiro Yamada	help
1071da177e4SLinus Torvalds	  If you want to use a SCSI tape drive under Linux, say Y and read the
1081da177e4SLinus Torvalds	  SCSI-HOWTO, available from
1091da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>, and
110bf65c846SMauro Carvalho Chehab	  <file:Documentation/scsi/st.rst> in the kernel source.  This is NOT
1111da177e4SLinus Torvalds	  for SCSI CD-ROMs.
1121da177e4SLinus Torvalds
1131da177e4SLinus Torvalds	  To compile this driver as a module, choose M here and read
114b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>. The module will be called st.
1151da177e4SLinus Torvalds
1161da177e4SLinus Torvaldsconfig BLK_DEV_SR
1171da177e4SLinus Torvalds	tristate "SCSI CDROM support"
118c091fbe9SArnd Bergmann	depends on SCSI && BLK_DEV
1192a750166SBart Van Assche	select CDROM
120a7f7f624SMasahiro Yamada	help
121e7fb6d2eSAlan Cox	  If you want to use a CD or DVD drive attached to your computer
122e7fb6d2eSAlan Cox	  by SCSI, FireWire, USB or ATAPI, say Y and read the SCSI-HOWTO
123e7fb6d2eSAlan Cox	  and the CDROM-HOWTO at <http://www.tldp.org/docs.html#howto>.
124e7fb6d2eSAlan Cox
125e7fb6d2eSAlan Cox	  Make sure to say Y or M to "ISO 9660 CD-ROM file system support".
1261da177e4SLinus Torvalds
1271da177e4SLinus Torvalds	  To compile this driver as a module, choose M here and read
128b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>.
1291da177e4SLinus Torvalds	  The module will be called sr_mod.
1301da177e4SLinus Torvalds
1311da177e4SLinus Torvaldsconfig CHR_DEV_SG
1321da177e4SLinus Torvalds	tristate "SCSI generic support"
1331da177e4SLinus Torvalds	depends on SCSI
134a7f7f624SMasahiro Yamada	help
1351da177e4SLinus Torvalds	  If you want to use SCSI scanners, synthesizers or CD-writers or just
1361da177e4SLinus Torvalds	  about anything having "SCSI" in its name other than hard disks,
1371da177e4SLinus Torvalds	  CD-ROMs or tapes, say Y here. These won't be supported by the kernel
1381da177e4SLinus Torvalds	  directly, so you need some additional software which knows how to
1391da177e4SLinus Torvalds	  talk to these devices using the SCSI protocol:
1401da177e4SLinus Torvalds
141631dd1a8SJustin P. Mattock	  For scanners, look at SANE (<http://www.sane-project.org/>). For CD
1421da177e4SLinus Torvalds	  writer software look at Cdrtools
143fa17a6dcSDiego Elio Pettenò	  (<http://cdrtools.sourceforge.net/>)
1441da177e4SLinus Torvalds	  and for burning a "disk at once": CDRDAO
1451da177e4SLinus Torvalds	  (<http://cdrdao.sourceforge.net/>). Cdparanoia is a high
1461da177e4SLinus Torvalds	  quality digital reader of audio CDs (<http://www.xiph.org/paranoia/>).
1471da177e4SLinus Torvalds	  For other devices, it's possible that you'll have to write the
1481da177e4SLinus Torvalds	  driver software yourself. Please read the file
149d4d79340SMauro Carvalho Chehab	  <file:Documentation/scsi/scsi-generic.rst> for more information.
1501da177e4SLinus Torvalds
1511da177e4SLinus Torvalds	  To compile this driver as a module, choose M here and read
152b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>. The module will be called sg.
1531da177e4SLinus Torvalds
1541da177e4SLinus Torvalds	  If unsure, say N.
1551da177e4SLinus Torvalds
15678011042SChristoph Hellwigconfig BLK_DEV_BSG
15778011042SChristoph Hellwig	bool "/dev/bsg support (SG v4)"
15878011042SChristoph Hellwig	depends on SCSI
15978011042SChristoph Hellwig	default y
16078011042SChristoph Hellwig	help
16178011042SChristoph Hellwig	  Saying Y here will enable generic SG (SCSI generic) v4 support
16278011042SChristoph Hellwig	  for any SCSI device.
16378011042SChristoph Hellwig
16478011042SChristoph Hellwig	  This option is required by UDEV to access device serial numbers, etc.
16578011042SChristoph Hellwig
16678011042SChristoph Hellwig	  If unsure, say Y.
16778011042SChristoph Hellwig
168daa6eda6SGerd Knorr config CHR_DEV_SCH
169daa6eda6SGerd Knorr 	tristate "SCSI media changer support"
170daa6eda6SGerd Knorr 	depends on SCSI
171a7f7f624SMasahiro Yamada	help
172daa6eda6SGerd Knorr 	  This is a driver for SCSI media changers.  Most common devices are
173daa6eda6SGerd Knorr 	  tape libraries and MOD/CDROM jukeboxes.  *Real* jukeboxes, you
174daa6eda6SGerd Knorr 	  don't need this for those tiny 6-slot cdrom changers.  Media
175daa6eda6SGerd Knorr 	  changers are listed as "Type: Medium Changer" in /proc/scsi/scsi.
176daa6eda6SGerd Knorr 	  If you have such hardware and want to use it with linux, say Y
177731fc16cSMauro Carvalho Chehab	  here.  Check <file:Documentation/scsi/scsi-changer.rst> for details.
178daa6eda6SGerd Knorr 
179daa6eda6SGerd Knorr 	  If you want to compile this as a module ( = code which can be
180daa6eda6SGerd Knorr 	  inserted in and removed from the running kernel whenever you want),
181cd238effSMauro Carvalho Chehab	  say M here and read <file:Documentation/kbuild/modules.rst> and
182b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>. The module will be called ch.o.
183daa6eda6SGerd Knorr 	  If unsure, say N.
184daa6eda6SGerd Knorr 
1859927c688SJames Bottomleyconfig SCSI_ENCLOSURE
1869927c688SJames Bottomley	tristate "SCSI Enclosure Support"
1879927c688SJames Bottomley	depends on SCSI && ENCLOSURE_SERVICES
1883f8d6f2aSJames Bottomley	depends on m || SCSI_SAS_ATTRS != m
1899927c688SJames Bottomley	help
1909927c688SJames Bottomley	  Enclosures are devices sitting on or in SCSI backplanes that
1919927c688SJames Bottomley	  manage devices.  If you have a disk cage, the chances are that
1929927c688SJames Bottomley	  it has an enclosure device.  Selecting this option will just allow
1939927c688SJames Bottomley	  certain enclosure conditions to be reported and is not required.
194daa6eda6SGerd Knorr 
1951da177e4SLinus Torvaldsconfig SCSI_CONSTANTS
196e1f0bce3SRasmus Villemoes	bool "Verbose SCSI error reporting (kernel size += 36K)"
1971da177e4SLinus Torvalds	depends on SCSI
1981da177e4SLinus Torvalds	help
1991da177e4SLinus Torvalds	  The error messages regarding your SCSI hardware will be easier to
2001da177e4SLinus Torvalds	  understand if you say Y here; it will enlarge your kernel by about
201e1f0bce3SRasmus Villemoes	  36 KB. If in doubt, say Y.
2021da177e4SLinus Torvalds
2031da177e4SLinus Torvaldsconfig SCSI_LOGGING
2041da177e4SLinus Torvalds	bool "SCSI logging facility"
2051da177e4SLinus Torvalds	depends on SCSI
206a7f7f624SMasahiro Yamada	help
2071da177e4SLinus Torvalds	  This turns on a logging facility that can be used to debug a number
2081da177e4SLinus Torvalds	  of SCSI related problems.
2091da177e4SLinus Torvalds
2101da177e4SLinus Torvalds	  If you say Y here, no logging output will appear by default, but you
2111da177e4SLinus Torvalds	  can enable logging by saying Y to "/proc file system support" and
2121da177e4SLinus Torvalds	  "Sysctl support" below and executing the command
2131da177e4SLinus Torvalds
2145ef07416SRobert Love	  echo <bitmask> > /proc/sys/dev/scsi/logging_level
2151da177e4SLinus Torvalds
2165ef07416SRobert Love	  where <bitmask> is a four byte value representing the logging type
2175ef07416SRobert Love	  and logging level for each type of logging selected.
2181da177e4SLinus Torvalds
2195ef07416SRobert Love	  There are a number of logging types and you can find them in the
2205ef07416SRobert Love	  source at <file:drivers/scsi/scsi_logging.h>. The logging levels
2215ef07416SRobert Love	  are also described in that file and they determine the verbosity of
2225ef07416SRobert Love	  the logging for each logging type.
2231da177e4SLinus Torvalds
2241da177e4SLinus Torvalds	  If you say N here, it may be harder to track down some types of SCSI
2251da177e4SLinus Torvalds	  problems. If you say Y here your kernel will be somewhat larger, but
2261da177e4SLinus Torvalds	  there should be no noticeable performance impact as long as you have
2271da177e4SLinus Torvalds	  logging turned off.
2281da177e4SLinus Torvalds
22921db1882SMatthew Wilcoxconfig SCSI_SCAN_ASYNC
23021db1882SMatthew Wilcox	bool "Asynchronous SCSI scanning"
23121db1882SMatthew Wilcox	depends on SCSI
23221db1882SMatthew Wilcox	help
23321db1882SMatthew Wilcox	  The SCSI subsystem can probe for devices while the rest of the
23421db1882SMatthew Wilcox	  system continues booting, and even probe devices on different
23521db1882SMatthew Wilcox	  busses in parallel, leading to a significant speed-up.
236082f6f9dSMatthew Wilcox
237082f6f9dSMatthew Wilcox	  You can override this choice by specifying "scsi_mod.scan=sync"
238082f6f9dSMatthew Wilcox	  or async on the kernel's command line.
23921db1882SMatthew Wilcox
2403c31b52fSDan Williams	  Note that this setting also affects whether resuming from
2413c31b52fSDan Williams	  system suspend will be performed asynchronously.
2423c31b52fSDan Williams
243*4977c0f4SBart Van Asscheconfig SCSI_PROTO_TEST
244*4977c0f4SBart Van Assche	tristate "scsi_proto.h unit tests" if !KUNIT_ALL_TESTS
245*4977c0f4SBart Van Assche	depends on SCSI && KUNIT
246*4977c0f4SBart Van Assche	default KUNIT_ALL_TESTS
247*4977c0f4SBart Van Assche
2482908d778SJames Bottomleymenu "SCSI Transports"
2491da177e4SLinus Torvalds	depends on SCSI
2501da177e4SLinus Torvalds
2511da177e4SLinus Torvaldsconfig SCSI_SPI_ATTRS
2521da177e4SLinus Torvalds	tristate "Parallel SCSI (SPI) Transport Attributes"
2531da177e4SLinus Torvalds	depends on SCSI
2541da177e4SLinus Torvalds	help
2551da177e4SLinus Torvalds	  If you wish to export transport-specific information about
2561da177e4SLinus Torvalds	  each attached SCSI device to sysfs, say Y.  Otherwise, say N.
2571da177e4SLinus Torvalds
2581da177e4SLinus Torvaldsconfig SCSI_FC_ATTRS
2591da177e4SLinus Torvalds	tristate "FiberChannel Transport Attributes"
26095cd6f48SRandy Dunlap	depends on SCSI && NET
261c00da4c9SJohannes Thumshirn	select BLK_DEV_BSGLIB
26284314fd4SJames Smart	select SCSI_NETLINK
2631da177e4SLinus Torvalds	help
2641da177e4SLinus Torvalds	  If you wish to export transport-specific information about
2651da177e4SLinus Torvalds	  each attached FiberChannel device to sysfs, say Y.
2661da177e4SLinus Torvalds	  Otherwise, say N.
2671da177e4SLinus Torvalds
2681da177e4SLinus Torvaldsconfig SCSI_ISCSI_ATTRS
2691da177e4SLinus Torvalds	tristate "iSCSI Transport Attributes"
270c899e4efSAlex Aizman	depends on SCSI && NET
27190eeb01aSMike Christie	select BLK_DEV_BSGLIB
2721da177e4SLinus Torvalds	help
2731da177e4SLinus Torvalds	  If you wish to export transport-specific information about
2741da177e4SLinus Torvalds	  each attached iSCSI device to sysfs, say Y.
2751da177e4SLinus Torvalds	  Otherwise, say N.
2761da177e4SLinus Torvalds
277c7ebbbceSChristoph Hellwigconfig SCSI_SAS_ATTRS
278c7ebbbceSChristoph Hellwig	tristate "SAS Transport Attributes"
27947259658SRandy Dunlap	depends on SCSI
280580b71e9SArnd Bergmann	select BLK_DEV_BSGLIB
281c7ebbbceSChristoph Hellwig	help
282c7ebbbceSChristoph Hellwig	  If you wish to export transport-specific information about
283c7ebbbceSChristoph Hellwig	  each attached SAS device to sysfs, say Y.
284c7ebbbceSChristoph Hellwig
2852908d778SJames Bottomleysource "drivers/scsi/libsas/Kconfig"
2862908d778SJames Bottomley
28709345f65SFUJITA Tomonoriconfig SCSI_SRP_ATTRS
28809345f65SFUJITA Tomonori	tristate "SRP Transport Attributes"
2890012fdf9SFUJITA Tomonori	depends on SCSI
29009345f65SFUJITA Tomonori	help
29109345f65SFUJITA Tomonori	  If you wish to export transport-specific information about
29209345f65SFUJITA Tomonori	  each attached SRP device to sysfs, say Y.
29309345f65SFUJITA Tomonori
2941da177e4SLinus Torvaldsendmenu
2951da177e4SLinus Torvalds
296fc6e740dSJan Engelhardtmenuconfig SCSI_LOWLEVEL
297fc6e740dSJan Engelhardt	bool "SCSI low-level drivers"
2981da177e4SLinus Torvalds	depends on SCSI!=n
299fc6e740dSJan Engelhardt	default y
300fc6e740dSJan Engelhardt
30167951f63SJames Bottomleyif SCSI_LOWLEVEL && SCSI
3021da177e4SLinus Torvalds
303c899e4efSAlex Aizmanconfig ISCSI_TCP
304c899e4efSAlex Aizman	tristate "iSCSI Initiator over TCP/IP"
30596bad874SJames Bottomley	depends on SCSI && INET
306c899e4efSAlex Aizman	select CRYPTO
307c899e4efSAlex Aizman	select CRYPTO_MD5
308c899e4efSAlex Aizman	select CRYPTO_CRC32C
30996bad874SJames Bottomley	select SCSI_ISCSI_ATTRS
310c899e4efSAlex Aizman	help
311c899e4efSAlex Aizman	 The iSCSI Driver provides a host with the ability to access storage
312c899e4efSAlex Aizman	 through an IP network. The driver uses the iSCSI protocol to transport
313c899e4efSAlex Aizman	 SCSI requests and responses over a TCP/IP network between the host
314c899e4efSAlex Aizman	 (the "initiator") and "targets".  Architecturally, the iSCSI driver
315c899e4efSAlex Aizman	 combines with the host's TCP/IP stack, network drivers, and Network
316c899e4efSAlex Aizman	 Interface Card (NIC) to provide the same functions as a SCSI or a
317c899e4efSAlex Aizman	 Fibre Channel (FC) adapter driver with a Host Bus Adapter (HBA).
318c899e4efSAlex Aizman
319c899e4efSAlex Aizman	 To compile this driver as a module, choose M here: the
320c899e4efSAlex Aizman	 module will be called iscsi_tcp.
321c899e4efSAlex Aizman
322c899e4efSAlex Aizman	 The userspace component needed to initialize the driver, documentation,
323c899e4efSAlex Aizman	 and sample configuration files can be found here:
324c899e4efSAlex Aizman
325bca1088aSFUJITA Tomonori	 http://open-iscsi.org
326c899e4efSAlex Aizman
327aab7a8fdSMike Christieconfig ISCSI_BOOT_SYSFS
328aab7a8fdSMike Christie	tristate "iSCSI Boot Sysfs Interface"
329aab7a8fdSMike Christie	default n
330aab7a8fdSMike Christie	help
331aab7a8fdSMike Christie	  This option enables support for exposing iSCSI boot information
332aab7a8fdSMike Christie	  via sysfs to userspace. If you wish to export this information,
333aab7a8fdSMike Christie	  say Y. Otherwise, say N.
334aab7a8fdSMike Christie
3357b36b6e0Skxie@chelsio.comsource "drivers/scsi/cxgbi/Kconfig"
336cf4e6363SMichael Chansource "drivers/scsi/bnx2i/Kconfig"
337853e2bd2SBhanu Gollapudisource "drivers/scsi/bnx2fc/Kconfig"
3386733b39aSJayamohan Kallickalsource "drivers/scsi/be2iscsi/Kconfig"
339c21e0bbfSMatthew R. Ochssource "drivers/scsi/cxlflash/Kconfig"
340c3673464SKaren Xie
3411da177e4SLinus Torvaldsconfig SGIWD93_SCSI
3421da177e4SLinus Torvalds	tristate "SGI WD93C93 SCSI Driver"
3432adbfa33SThomas Bogendoerfer	depends on SGI_HAS_WD93 && SCSI
3441da177e4SLinus Torvalds	help
3451da177e4SLinus Torvalds	  If you have a Western Digital WD93 SCSI controller on
3461da177e4SLinus Torvalds	  an SGI MIPS system, say Y.  Otherwise, say N.
3471da177e4SLinus Torvalds
3481da177e4SLinus Torvaldsconfig BLK_DEV_3W_XXXX_RAID
3491da177e4SLinus Torvalds	tristate "3ware 5/6/7/8xxx ATA-RAID support"
350b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
3511da177e4SLinus Torvalds	help
3521da177e4SLinus Torvalds	  3ware is the only hardware ATA-Raid product in Linux to date.
3531da177e4SLinus Torvalds	  This card is 2,4, or 8 channel master mode support only.
3541da177e4SLinus Torvalds	  SCSI support required!!!
3551da177e4SLinus Torvalds
3561da177e4SLinus Torvalds	  <http://www.3ware.com/>
3571da177e4SLinus Torvalds
3581da177e4SLinus Torvalds	  Please read the comments at the top of
3591da177e4SLinus Torvalds	  <file:drivers/scsi/3w-xxxx.c>.
3601da177e4SLinus Torvalds
361edd16368SStephen M. Cameronconfig SCSI_HPSA
362edd16368SStephen M. Cameron	tristate "HP Smart Array SCSI driver"
363edd16368SStephen M. Cameron	depends on PCI && SCSI
3640fc9fd40SAkinobu Mita	select CHECK_SIGNATURE
365653cfb85SArnd Bergmann	select SCSI_SAS_ATTRS
366edd16368SStephen M. Cameron	help
367edd16368SStephen M. Cameron	  This driver supports HP Smart Array Controllers (circa 2009).
368edd16368SStephen M. Cameron	  It is a SCSI alternative to the cciss driver, which is a block
369edd16368SStephen M. Cameron	  driver.  Anyone wishing to use HP Smart Array controllers who
370edd16368SStephen M. Cameron	  would prefer the devices be presented to linux as SCSI devices,
371edd16368SStephen M. Cameron	  rather than as generic block devices should say Y here.
372edd16368SStephen M. Cameron
3731da177e4SLinus Torvaldsconfig SCSI_3W_9XXX
3741da177e4SLinus Torvalds	tristate "3ware 9xxx SATA-RAID support"
3751da177e4SLinus Torvalds	depends on PCI && SCSI
3761da177e4SLinus Torvalds	help
3771da177e4SLinus Torvalds	  This driver supports the 9000 series 3ware SATA-RAID cards.
3781da177e4SLinus Torvalds
3791da177e4SLinus Torvalds	  <http://www.amcc.com>
3801da177e4SLinus Torvalds
3811da177e4SLinus Torvalds	  Please read the comments at the top of
3821da177e4SLinus Torvalds	  <file:drivers/scsi/3w-9xxx.c>.
3831da177e4SLinus Torvalds
384f619106bSadam radfordconfig SCSI_3W_SAS
385f619106bSadam radford	tristate "3ware 97xx SAS/SATA-RAID support"
386f619106bSadam radford	depends on PCI && SCSI
387f619106bSadam radford	help
388f619106bSadam radford	  This driver supports the LSI 3ware 9750 6Gb/s SAS/SATA-RAID cards.
389f619106bSadam radford
390f619106bSadam radford	  <http://www.lsi.com>
391f619106bSadam radford
392f619106bSadam radford	  Please read the comments at the top of
393f619106bSadam radford	  <file:drivers/scsi/3w-sas.c>.
394f619106bSadam radford
3951da177e4SLinus Torvaldsconfig SCSI_ACARD
3961da177e4SLinus Torvalds	tristate "ACARD SCSI support"
397b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
3981da177e4SLinus Torvalds	help
3991da177e4SLinus Torvalds	  This driver supports the ACARD SCSI host adapter.
4001da177e4SLinus Torvalds	  Support Chip <ATP870 ATP876 ATP880 ATP885>
4011da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4021da177e4SLinus Torvalds	  module will be called atp870u.
4031da177e4SLinus Torvalds
4041da177e4SLinus Torvaldsconfig SCSI_AHA152X
4051da177e4SLinus Torvalds	tristate "Adaptec AHA152X/2825 support"
406fa7250d6SAlan Cox	depends on ISA && SCSI
407410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
408928923c7SGeert Uytterhoeven	select CHECK_SIGNATURE
409a7f7f624SMasahiro Yamada	help
4101da177e4SLinus Torvalds	  This is a driver for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825
4111da177e4SLinus Torvalds	  SCSI host adapters. It also works for the AVA-1505, but the IRQ etc.
4121da177e4SLinus Torvalds	  must be manually specified in this case.
4131da177e4SLinus Torvalds
4141da177e4SLinus Torvalds	  It is explained in section 3.3 of the SCSI-HOWTO, available from
4151da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>. You might also want to
41694b5530fSMauro Carvalho Chehab	  read the file <file:Documentation/scsi/aha152x.rst>.
4171da177e4SLinus Torvalds
4181da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4191da177e4SLinus Torvalds	  module will be called aha152x.
4201da177e4SLinus Torvalds
4211da177e4SLinus Torvaldsconfig SCSI_AHA1542
4221da177e4SLinus Torvalds	tristate "Adaptec AHA1542 support"
423a5532606SAl Viro	depends on ISA && SCSI && ISA_DMA_API
424a7f7f624SMasahiro Yamada	help
4251da177e4SLinus Torvalds	  This is support for a SCSI host adapter.  It is explained in section
4261da177e4SLinus Torvalds	  3.4 of the SCSI-HOWTO, available from
4271da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.  Note that Trantor was
4281da177e4SLinus Torvalds	  purchased by Adaptec, and some former Trantor products are being
4291da177e4SLinus Torvalds	  sold under the Adaptec name.  If it doesn't work out of the box, you
4301da177e4SLinus Torvalds	  may have to change some settings in <file:drivers/scsi/aha1542.h>.
4311da177e4SLinus Torvalds
4321da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4331da177e4SLinus Torvalds	  module will be called aha1542.
4341da177e4SLinus Torvalds
4351da177e4SLinus Torvaldsconfig SCSI_AHA1740
4361da177e4SLinus Torvalds	tristate "Adaptec AHA1740 support"
4371da177e4SLinus Torvalds	depends on EISA && SCSI
438a7f7f624SMasahiro Yamada	help
4391da177e4SLinus Torvalds	  This is support for a SCSI host adapter.  It is explained in section
4401da177e4SLinus Torvalds	  3.5 of the SCSI-HOWTO, available from
4411da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
4421da177e4SLinus Torvalds	  of the box, you may have to change some settings in
4431da177e4SLinus Torvalds	  <file:drivers/scsi/aha1740.h>.
4441da177e4SLinus Torvalds
4451da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4461da177e4SLinus Torvalds	  module will be called aha1740.
4471da177e4SLinus Torvalds
4481da177e4SLinus Torvaldsconfig SCSI_AACRAID
4491da177e4SLinus Torvalds	tristate "Adaptec AACRAID support"
4501da177e4SLinus Torvalds	depends on SCSI && PCI
4518075f21fSAdrian Bunk	help
4528075f21fSAdrian Bunk	  This driver supports a variety of Dell, HP, Adaptec, IBM and
4538075f21fSAdrian Bunk	  ICP storage products. For a list of supported products, refer
454dd9cc144SMauro Carvalho Chehab	  to <file:Documentation/scsi/aacraid.rst>.
4558075f21fSAdrian Bunk
4568075f21fSAdrian Bunk	  To compile this driver as a module, choose M here: the module
4578075f21fSAdrian Bunk	  will be called aacraid.
4588075f21fSAdrian Bunk
4591da177e4SLinus Torvalds
4601da177e4SLinus Torvaldssource "drivers/scsi/aic7xxx/Kconfig.aic7xxx"
4611da177e4SLinus Torvaldssource "drivers/scsi/aic7xxx/Kconfig.aic79xx"
4622908d778SJames Bottomleysource "drivers/scsi/aic94xx/Kconfig"
463e8899fadSJohn Garrysource "drivers/scsi/hisi_sas/Kconfig"
4642ad52f47SJeff Garziksource "drivers/scsi/mvsas/Kconfig"
4651da177e4SLinus Torvalds
466f0c568a4SJianyun Liconfig SCSI_MVUMI
467f0c568a4SJianyun Li	tristate "Marvell UMI driver"
468f0c568a4SJianyun Li	depends on SCSI && PCI
469f0c568a4SJianyun Li	help
470f0c568a4SJianyun Li	  Module for Marvell Universal Message Interface(UMI) driver
471f0c568a4SJianyun Li
472f0c568a4SJianyun Li	  To compile this driver as a module, choose M here: the
473f0c568a4SJianyun Li	  module will be called mvumi.
474f0c568a4SJianyun Li
4751da177e4SLinus Torvaldsconfig SCSI_ADVANSYS
4761da177e4SLinus Torvalds	tristate "AdvanSys SCSI support"
4776571fb3fSHannes Reinecke	depends on SCSI
478b58b2ba3SNiklas Schnelle	depends on (ISA || EISA || PCI) && HAS_IOPORT
4792b8bbdb9SArnd Bergmann	depends on ISA_DMA_API || !ISA
4801da177e4SLinus Torvalds	help
4811da177e4SLinus Torvalds	  This is a driver for all SCSI host adapters manufactured by
4821da177e4SLinus Torvalds	  AdvanSys. It is documented in the kernel source in
4831da177e4SLinus Torvalds	  <file:drivers/scsi/advansys.c>.
4841da177e4SLinus Torvalds
4851da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4861da177e4SLinus Torvalds	  module will be called advansys.
4871da177e4SLinus Torvalds
4881c57e86dSErich Chenconfig SCSI_ARCMSR
4891a4f550aSNick Cheng	tristate "ARECA (ARC11xx/12xx/13xx/16xx) SATA/SAS RAID Host Adapter"
4901c57e86dSErich Chen	depends on PCI && SCSI
4911c57e86dSErich Chen	help
4921a4f550aSNick Cheng	  This driver supports all of ARECA's SATA/SAS RAID controller cards.
4931c57e86dSErich Chen	  This is an ARECA-maintained driver by Erich Chen.
4941a4f550aSNick Cheng	  If you have any problems, please mail to: <erich@areca.com.tw>.
4951c57e86dSErich Chen	  Areca supports Linux RAID config tools.
4961a4f550aSNick Cheng	  Please link <http://www.areca.com.tw>
4971c57e86dSErich Chen
4981c57e86dSErich Chen	  To compile this driver as a module, choose M here: the
4991c57e86dSErich Chen	  module will be called arcmsr (modprobe arcmsr).
5001c57e86dSErich Chen
50126780d9eSBradley Grovesource "drivers/scsi/esas2r/Kconfig"
5021da177e4SLinus Torvaldssource "drivers/scsi/megaraid/Kconfig.megaraid"
503f92363d1SSreekanth Reddysource "drivers/scsi/mpt3sas/Kconfig"
504c4f7ac64SKashyap Desaisource "drivers/scsi/mpi3mr/Kconfig"
5056c223761SKevin Barnettsource "drivers/scsi/smartpqi/Kconfig"
5061da177e4SLinus Torvalds
507ede1e6f8SHighPoint Linux Teamconfig SCSI_HPTIOP
50800f59701SHighPoint Linux Team	tristate "HighPoint RocketRAID 3xxx/4xxx Controller support"
509ede1e6f8SHighPoint Linux Team	depends on SCSI && PCI
510ede1e6f8SHighPoint Linux Team	help
51100f59701SHighPoint Linux Team	  This option enables support for HighPoint RocketRAID 3xxx/4xxx
512ede1e6f8SHighPoint Linux Team	  controllers.
513ede1e6f8SHighPoint Linux Team
514ede1e6f8SHighPoint Linux Team	  To compile this driver as a module, choose M here; the module
515ede1e6f8SHighPoint Linux Team	  will be called hptiop. If unsure, say N.
516ede1e6f8SHighPoint Linux Team
5171da177e4SLinus Torvaldsconfig SCSI_BUSLOGIC
5181da177e4SLinus Torvalds	tristate "BusLogic SCSI support"
519b58b2ba3SNiklas Schnelle	depends on SCSI && PCI && HAS_IOPORT
520a7f7f624SMasahiro Yamada	help
5211da177e4SLinus Torvalds	  This is support for BusLogic MultiMaster and FlashPoint SCSI Host
5221da177e4SLinus Torvalds	  Adapters. Consult the SCSI-HOWTO, available from
5231da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>, and the files
524977b899cSMauro Carvalho Chehab	  <file:Documentation/scsi/BusLogic.rst> and
525cc0d9d3aSMauro Carvalho Chehab	  <file:Documentation/scsi/FlashPoint.rst> for more information.
52678b4b05dSMatthew Wilcox	  Note that support for FlashPoint is only available for 32-bit
52778b4b05dSMatthew Wilcox	  x86 configurations.
5281da177e4SLinus Torvalds
5291da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
5301da177e4SLinus Torvalds	  module will be called BusLogic.
5311da177e4SLinus Torvalds
53278b4b05dSMatthew Wilcoxconfig SCSI_FLASHPOINT
53378b4b05dSMatthew Wilcox	bool "FlashPoint support"
534b58b2ba3SNiklas Schnelle	depends on SCSI_BUSLOGIC && PCI && HAS_IOPORT
5351da177e4SLinus Torvalds	help
53678b4b05dSMatthew Wilcox	  This option allows you to add FlashPoint support to the
5371da177e4SLinus Torvalds	  BusLogic SCSI driver. The FlashPoint SCCB Manager code is
53878b4b05dSMatthew Wilcox	  substantial, so users of MultiMaster Host Adapters may not
53978b4b05dSMatthew Wilcox	  wish to include it.
5401da177e4SLinus Torvalds
541081ff398SHannes Reineckeconfig SCSI_MYRB
542081ff398SHannes Reinecke	tristate "Mylex DAC960/DAC1100 PCI RAID Controller (Block Interface)"
543081ff398SHannes Reinecke	depends on PCI
544081ff398SHannes Reinecke	select RAID_ATTRS
545081ff398SHannes Reinecke	help
546081ff398SHannes Reinecke	  This driver adds support for the Mylex DAC960, AcceleRAID, and
547081ff398SHannes Reinecke	  eXtremeRAID PCI RAID controllers. This driver supports the
548081ff398SHannes Reinecke	  older, block based interface.
549081ff398SHannes Reinecke	  This driver is a reimplementation of the original DAC960
550081ff398SHannes Reinecke	  driver. If you have used the DAC960 driver you should enable
551081ff398SHannes Reinecke	  this module.
552081ff398SHannes Reinecke
553081ff398SHannes Reinecke	  To compile this driver as a module, choose M here: the
554081ff398SHannes Reinecke	  module will be called myrb.
555081ff398SHannes Reinecke
55677266186SHannes Reineckeconfig SCSI_MYRS
55777266186SHannes Reinecke	tristate "Mylex DAC960/DAC1100 PCI RAID Controller (SCSI Interface)"
55877266186SHannes Reinecke	depends on PCI
559a3ecf482SArnd Bergmann	depends on !CPU_BIG_ENDIAN || COMPILE_TEST
56077266186SHannes Reinecke	select RAID_ATTRS
56177266186SHannes Reinecke	help
56277266186SHannes Reinecke	  This driver adds support for the Mylex DAC960, AcceleRAID, and
56377266186SHannes Reinecke	  eXtremeRAID PCI RAID controllers.  This driver supports the
56477266186SHannes Reinecke	  newer, SCSI-based interface only.
56577266186SHannes Reinecke	  This driver is a reimplementation of the original DAC960
56677266186SHannes Reinecke	  driver. If you have used the DAC960 driver you should enable
56777266186SHannes Reinecke	  this module.
56877266186SHannes Reinecke
56977266186SHannes Reinecke	  To compile this driver as a module, choose M here: the
57077266186SHannes Reinecke	  module will be called myrs.
57177266186SHannes Reinecke
572851b1642SAlok Katariaconfig VMWARE_PVSCSI
573851b1642SAlok Kataria	tristate "VMware PVSCSI driver support"
574851b1642SAlok Kataria	depends on PCI && SCSI && X86
575851b1642SAlok Kataria	help
576851b1642SAlok Kataria	  This driver supports VMware's para virtualized SCSI HBA.
577851b1642SAlok Kataria	  To compile this driver as a module, choose M here: the
578851b1642SAlok Kataria	  module will be called vmw_pvscsi.
579851b1642SAlok Kataria
5808beb8d4cSJuergen Grossconfig XEN_SCSI_FRONTEND
5818beb8d4cSJuergen Gross	tristate "XEN SCSI frontend driver"
5828beb8d4cSJuergen Gross	depends on SCSI && XEN
5838ab85ebaSJuergen Gross	select XEN_XENBUS_FRONTEND
5848beb8d4cSJuergen Gross	help
5858beb8d4cSJuergen Gross	  The XEN SCSI frontend driver allows the kernel to access SCSI Devices
5868beb8d4cSJuergen Gross	  within another guest OS (usually Dom0).
5878beb8d4cSJuergen Gross	  Only needed if the kernel is running in a XEN guest and generic
5888beb8d4cSJuergen Gross	  SCSI access to a device is needed.
5898beb8d4cSJuergen Gross
59089ae7d70SK. Y. Srinivasanconfig HYPERV_STORAGE
59189ae7d70SK. Y. Srinivasan	tristate "Microsoft Hyper-V virtual storage driver"
59289ae7d70SK. Y. Srinivasan	depends on SCSI && HYPERV
5938063d56eSK. Y. Srinivasan	depends on m || SCSI_FC_ATTRS != m
59489ae7d70SK. Y. Srinivasan	default HYPERV
59589ae7d70SK. Y. Srinivasan	help
59689ae7d70SK. Y. Srinivasan	  Select this option to enable the Hyper-V virtual storage driver.
59789ae7d70SK. Y. Srinivasan
59842e9a92fSRobert Loveconfig LIBFC
59942e9a92fSRobert Love	tristate "LibFC module"
6006a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
601d943aeebSRandy Dunlap	select CRC32
602a7f7f624SMasahiro Yamada	help
60342e9a92fSRobert Love	  Fibre Channel library module
60442e9a92fSRobert Love
6059b34ecffSVasu Devconfig LIBFCOE
6069b34ecffSVasu Dev	tristate "LibFCoE module"
607df568d8eSDavid S. Miller	depends on LIBFC
608a7f7f624SMasahiro Yamada	help
6099b34ecffSVasu Dev	  Library for Fibre Channel over Ethernet module
6109b34ecffSVasu Dev
61185b4aa49SRobert Loveconfig FCOE
61285b4aa49SRobert Love	tristate "FCoE module"
613fb5edd02SJames Bottomley	depends on PCI
614df568d8eSDavid S. Miller	depends on LIBFCOE
615a7f7f624SMasahiro Yamada	help
61685b4aa49SRobert Love	  Fibre Channel over Ethernet module
61785b4aa49SRobert Love
6185df6d737SAbhijeet Joglekarconfig FCOE_FNIC
6195df6d737SAbhijeet Joglekar	tristate "Cisco FNIC Driver"
6205df6d737SAbhijeet Joglekar	depends on PCI && X86
621df568d8eSDavid S. Miller	depends on LIBFCOE
6225df6d737SAbhijeet Joglekar	help
6235df6d737SAbhijeet Joglekar	  This is support for the Cisco PCI-Express FCoE HBA.
6245df6d737SAbhijeet Joglekar
6255df6d737SAbhijeet Joglekar	  To compile this driver as a module, choose M here and read
626b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>.
6275df6d737SAbhijeet Joglekar	  The module will be called fnic.
6285df6d737SAbhijeet Joglekar
629c8806b6cSNarsimhulu Musiniconfig SCSI_SNIC
630c8806b6cSNarsimhulu Musini	tristate "Cisco SNIC Driver"
631c8806b6cSNarsimhulu Musini	depends on PCI && SCSI
632c8806b6cSNarsimhulu Musini	help
633c8806b6cSNarsimhulu Musini	  This is support for the Cisco PCI-Express SCSI HBA.
634c8806b6cSNarsimhulu Musini
635c8806b6cSNarsimhulu Musini	  To compile this driver as a module, choose M here and read
636b7223d9bSMauro Carvalho Chehab	  <file:Documentation/scsi/scsi.rst>.
637c8806b6cSNarsimhulu Musini	  The module will be called snic.
638c8806b6cSNarsimhulu Musini
639c8806b6cSNarsimhulu Musiniconfig SCSI_SNIC_DEBUG_FS
640c8806b6cSNarsimhulu Musini	bool "Cisco SNIC Driver Debugfs Support"
641c8806b6cSNarsimhulu Musini	depends on SCSI_SNIC && DEBUG_FS
642c8806b6cSNarsimhulu Musini	help
643c8806b6cSNarsimhulu Musini	  This enables to list debugging information from SNIC Driver
644c8806b6cSNarsimhulu Musini	  available via debugfs file system
645c8806b6cSNarsimhulu Musini
6461da177e4SLinus Torvaldsconfig SCSI_DMX3191D
6471da177e4SLinus Torvalds	tristate "DMX3191D SCSI support"
648b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
649410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
6501da177e4SLinus Torvalds	help
6511da177e4SLinus Torvalds	  This is support for Domex DMX3191D SCSI Host Adapters.
6521da177e4SLinus Torvalds
6531da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6541da177e4SLinus Torvalds	  module will be called dmx3191d.
6551da177e4SLinus Torvalds
656ebeb4665SOndrej Zaryconfig SCSI_FDOMAIN
657ebeb4665SOndrej Zary	tristate
658ebeb4665SOndrej Zary	depends on SCSI
659ebeb4665SOndrej Zary
66068046d50SOndrej Zaryconfig SCSI_FDOMAIN_PCI
66168046d50SOndrej Zary	tristate "Future Domain TMC-3260/AHA-2920A PCI SCSI support"
662b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
66368046d50SOndrej Zary	select SCSI_FDOMAIN
66468046d50SOndrej Zary	help
66568046d50SOndrej Zary	  This is support for Future Domain's PCI SCSI host adapters (TMC-3260)
66668046d50SOndrej Zary	  and other adapters with PCI bus based on the Future Domain chipsets
66768046d50SOndrej Zary	  (Adaptec AHA-2920A).
66868046d50SOndrej Zary
66968046d50SOndrej Zary	  NOTE: Newer Adaptec AHA-2920C boards use the Adaptec AIC-7850 chip
67068046d50SOndrej Zary	  and should use the aic7xxx driver ("Adaptec AIC7xxx chipset SCSI
67168046d50SOndrej Zary	  controller support"). This Future Domain driver works with the older
67268046d50SOndrej Zary	  Adaptec AHA-2920A boards with a Future Domain chip on them.
67368046d50SOndrej Zary
67468046d50SOndrej Zary	  To compile this driver as a module, choose M here: the
67568046d50SOndrej Zary	  module will be called fdomain_pci.
67668046d50SOndrej Zary
677e5207cf0SOndrej Zaryconfig SCSI_FDOMAIN_ISA
678e5207cf0SOndrej Zary	tristate "Future Domain 16xx ISA SCSI support"
679e5207cf0SOndrej Zary	depends on ISA && SCSI
680e5207cf0SOndrej Zary	select CHECK_SIGNATURE
681e5207cf0SOndrej Zary	select SCSI_FDOMAIN
682e5207cf0SOndrej Zary	help
683e5207cf0SOndrej Zary	  This is support for Future Domain's 16-bit SCSI host adapters
684e5207cf0SOndrej Zary	  (TMC-1660/1680, TMC-1650/1670, TMC-1610M/MER/MEX) and other adapters
685e5207cf0SOndrej Zary	  with ISA bus based on the Future Domain chipsets (Quantum ISA-200S,
686e5207cf0SOndrej Zary	  ISA-250MG; and at least one IBM board).
687e5207cf0SOndrej Zary
688e5207cf0SOndrej Zary	  To compile this driver as a module, choose M here: the
689e5207cf0SOndrej Zary	  module will be called fdomain_isa.
690e5207cf0SOndrej Zary
6916f231ddaSDan Williamsconfig SCSI_ISCI
6926f231ddaSDan Williams	tristate "Intel(R) C600 Series Chipset SAS Controller"
6936f231ddaSDan Williams	depends on PCI && SCSI
6946f231ddaSDan Williams	depends on X86
6956f231ddaSDan Williams	select SCSI_SAS_LIBSAS
696a7f7f624SMasahiro Yamada	help
6976f231ddaSDan Williams	  This driver supports the 6Gb/s SAS capabilities of the storage
6986f231ddaSDan Williams	  control unit found in the Intel(R) C600 series chipset.
6996f231ddaSDan Williams
7001da177e4SLinus Torvaldsconfig SCSI_GENERIC_NCR5380
701b61bacbcSOndrej Zary	tristate "Generic NCR5380/53c400 SCSI ISA card support"
702c1f7cf0aSArnd Bergmann	depends on ISA && SCSI && HAS_IOPORT_MAP
703410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
704a7f7f624SMasahiro Yamada	help
705b61bacbcSOndrej Zary	  This is a driver for old ISA card SCSI controllers based on a
706b61bacbcSOndrej Zary	  NCR 5380, 53C80, 53C400, 53C400A, or DTC 436 device.
707b61bacbcSOndrej Zary	  Most boards such as the Trantor T130 fit this category, as do
708b61bacbcSOndrej Zary	  various 8-bit and 16-bit ISA cards bundled with SCSI scanners.
7091da177e4SLinus Torvalds
7101da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
7111da177e4SLinus Torvalds	  module will be called g_NCR5380.
7121da177e4SLinus Torvalds
7131da177e4SLinus Torvaldsconfig SCSI_IPS
7141da177e4SLinus Torvalds	tristate "IBM ServeRAID support"
715b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
716a7f7f624SMasahiro Yamada	help
7171da177e4SLinus Torvalds	  This is support for the IBM ServeRAID hardware RAID controllers.
7181da177e4SLinus Torvalds	  See <http://www.developer.ibm.com/welcome/netfinity/serveraid.html>
719631dd1a8SJustin P. Mattock	  and <http://www-947.ibm.com/support/entry/portal/docdisplay?brand=5000008&lndocid=SERV-RAID>
7201da177e4SLinus Torvalds	  for more information.  If this driver does not work correctly
7211da177e4SLinus Torvalds	  without modification please contact the author by email at
7221da177e4SLinus Torvalds	  <ipslinux@adaptec.com>.
7231da177e4SLinus Torvalds
7241da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
7251da177e4SLinus Torvalds	  module will be called ips.
7261da177e4SLinus Torvalds
7271da177e4SLinus Torvaldsconfig SCSI_IBMVSCSI
7281da177e4SLinus Torvalds	tristate "IBM Virtual SCSI support"
7297834799aSStephen Rothwell	depends on PPC_PSERIES
7304d680419SFUJITA Tomonori	select SCSI_SRP_ATTRS
7311da177e4SLinus Torvalds	help
7321da177e4SLinus Torvalds	  This is the IBM POWER Virtual SCSI Client
7331da177e4SLinus Torvalds
7341da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
73546beb54dSWade Cline	  module will be called ibmvscsi.
7361da177e4SLinus Torvalds
73788a678bbSBryant G. Lyconfig SCSI_IBMVSCSIS
73888a678bbSBryant G. Ly	tristate "IBM Virtual SCSI Server support"
73988a678bbSBryant G. Ly	depends on PPC_PSERIES && TARGET_CORE && SCSI && PCI
74088a678bbSBryant G. Ly	help
74188a678bbSBryant G. Ly	  This is the IBM POWER Virtual SCSI Target Server
74283fc61a5SMasanari Iida	  This driver uses the SRP protocol for communication between servers
74388a678bbSBryant G. Ly	  guest and/or the host that run on the same server.
74488a678bbSBryant G. Ly	  More information on VSCSI protocol can be found at www.power.org
74588a678bbSBryant G. Ly
74688a678bbSBryant G. Ly	  The userspace configuration needed to initialize the driver can be
74788a678bbSBryant G. Ly	  be found here:
74888a678bbSBryant G. Ly
74988a678bbSBryant G. Ly	  https://github.com/powervm/ibmvscsis/wiki/Configuration
75088a678bbSBryant G. Ly
75188a678bbSBryant G. Ly	  To compile this driver as a module, choose M here: the
75288a678bbSBryant G. Ly	  module will be called ibmvscsis.
75388a678bbSBryant G. Ly
754072b91f9SBrian Kingconfig SCSI_IBMVFC
755072b91f9SBrian King	tristate "IBM Virtual FC support"
756072b91f9SBrian King	depends on PPC_PSERIES && SCSI
7576a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
758072b91f9SBrian King	help
759072b91f9SBrian King	  This is the IBM POWER Virtual FC Client
760072b91f9SBrian King
761072b91f9SBrian King	  To compile this driver as a module, choose M here: the
762072b91f9SBrian King	  module will be called ibmvfc.
763072b91f9SBrian King
764072b91f9SBrian Kingconfig SCSI_IBMVFC_TRACE
765072b91f9SBrian King	bool "enable driver internal trace"
766072b91f9SBrian King	depends on SCSI_IBMVFC
767072b91f9SBrian King	default y
768072b91f9SBrian King	help
769072b91f9SBrian King	  If you say Y here, the driver will trace all commands issued
770072b91f9SBrian King	  to the adapter. Performance impact is minimal. Trace can be
771072b91f9SBrian King	  dumped using /sys/class/scsi_host/hostXX/trace.
772072b91f9SBrian King
7731da177e4SLinus Torvaldsconfig SCSI_INITIO
7741da177e4SLinus Torvalds	tristate "Initio 9100U(W) support"
775b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
7761da177e4SLinus Torvalds	help
7771da177e4SLinus Torvalds	  This is support for the Initio 91XXU(W) SCSI host adapter.  Please
7781da177e4SLinus Torvalds	  read the SCSI-HOWTO, available from
7791da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
7801da177e4SLinus Torvalds
7811da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
7821da177e4SLinus Torvalds	  module will be called initio.
7831da177e4SLinus Torvalds
7841da177e4SLinus Torvaldsconfig SCSI_INIA100
7851da177e4SLinus Torvalds	tristate "Initio INI-A100U2W support"
786b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
7871da177e4SLinus Torvalds	help
7881da177e4SLinus Torvalds	  This is support for the Initio INI-A100U2W SCSI host adapter.
7891da177e4SLinus Torvalds	  Please read the SCSI-HOWTO, available from
7901da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
7911da177e4SLinus Torvalds
7921da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
7931da177e4SLinus Torvalds	  module will be called a100u2w.
7941da177e4SLinus Torvalds
7951da177e4SLinus Torvaldsconfig SCSI_PPA
7961da177e4SLinus Torvalds	tristate "IOMEGA parallel port (ppa - older drives)"
7976a19b41bSMarko Kohtala	depends on SCSI && PARPORT_PC
798b58b2ba3SNiklas Schnelle	depends on HAS_IOPORT
799a7f7f624SMasahiro Yamada	help
8001da177e4SLinus Torvalds	  This driver supports older versions of IOMEGA's parallel port ZIP
8011da177e4SLinus Torvalds	  drive (a 100 MB removable media device).
8021da177e4SLinus Torvalds
8031da177e4SLinus Torvalds	  Note that you can say N here if you have the SCSI version of the ZIP
8041da177e4SLinus Torvalds	  drive: it will be supported automatically if you said Y to the
8051da177e4SLinus Torvalds	  generic "SCSI disk support", above.
8061da177e4SLinus Torvalds
8071da177e4SLinus Torvalds	  If you have the ZIP Plus drive or a more recent parallel port ZIP
8081da177e4SLinus Torvalds	  drive (if the supplied cable with the drive is labeled "AutoDetect")
8091da177e4SLinus Torvalds	  then you should say N here and Y to "IOMEGA parallel port (imm -
8101da177e4SLinus Torvalds	  newer drives)", below.
8111da177e4SLinus Torvalds
8121da177e4SLinus Torvalds	  For more information about this driver and how to use it you should
813304a8b62SMauro Carvalho Chehab	  read the file <file:Documentation/scsi/ppa.rst>.  You should also read
8141da177e4SLinus Torvalds	  the SCSI-HOWTO, which is available from
8151da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.  If you use this driver,
8161da177e4SLinus Torvalds	  you will still be able to use the parallel port for other tasks,
8171da177e4SLinus Torvalds	  such as a printer; it is safe to compile both drivers into the
8181da177e4SLinus Torvalds	  kernel.
8191da177e4SLinus Torvalds
8201da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
8211da177e4SLinus Torvalds	  module will be called ppa.
8221da177e4SLinus Torvalds
8231da177e4SLinus Torvaldsconfig SCSI_IMM
8241da177e4SLinus Torvalds	tristate "IOMEGA parallel port (imm - newer drives)"
8256a19b41bSMarko Kohtala	depends on SCSI && PARPORT_PC
826a7f7f624SMasahiro Yamada	help
8271da177e4SLinus Torvalds	  This driver supports newer versions of IOMEGA's parallel port ZIP
8281da177e4SLinus Torvalds	  drive (a 100 MB removable media device).
8291da177e4SLinus Torvalds
8301da177e4SLinus Torvalds	  Note that you can say N here if you have the SCSI version of the ZIP
8311da177e4SLinus Torvalds	  drive: it will be supported automatically if you said Y to the
8321da177e4SLinus Torvalds	  generic "SCSI disk support", above.
8331da177e4SLinus Torvalds
8341da177e4SLinus Torvalds	  If you have the ZIP Plus drive or a more recent parallel port ZIP
8351da177e4SLinus Torvalds	  drive (if the supplied cable with the drive is labeled "AutoDetect")
8361da177e4SLinus Torvalds	  then you should say Y here; if you have an older ZIP drive, say N
8371da177e4SLinus Torvalds	  here and Y to "IOMEGA Parallel Port (ppa - older drives)", above.
8381da177e4SLinus Torvalds
8391da177e4SLinus Torvalds	  For more information about this driver and how to use it you should
840304a8b62SMauro Carvalho Chehab	  read the file <file:Documentation/scsi/ppa.rst>.  You should also read
8411da177e4SLinus Torvalds	  the SCSI-HOWTO, which is available from
8421da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.  If you use this driver,
8431da177e4SLinus Torvalds	  you will still be able to use the parallel port for other tasks,
8441da177e4SLinus Torvalds	  such as a printer; it is safe to compile both drivers into the
8451da177e4SLinus Torvalds	  kernel.
8461da177e4SLinus Torvalds
8471da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
8481da177e4SLinus Torvalds	  module will be called imm.
8491da177e4SLinus Torvalds
8501da177e4SLinus Torvaldsconfig SCSI_IZIP_SLOW_CTR
8511da177e4SLinus Torvalds	bool "ppa/imm option - Assume slow parport control register"
8526a19b41bSMarko Kohtala	depends on SCSI_PPA || SCSI_IMM
8531da177e4SLinus Torvalds	help
8541da177e4SLinus Torvalds	  Some parallel ports are known to have excessive delays between
8551da177e4SLinus Torvalds	  changing the parallel port control register and good data being
8561da177e4SLinus Torvalds	  available on the parallel port data/status register. This option
8571da177e4SLinus Torvalds	  forces a small delay (1.0 usec to be exact) after changing the
8581da177e4SLinus Torvalds	  control register to let things settle out. Enabling this option may
8591da177e4SLinus Torvalds	  result in a big drop in performance but some very old parallel ports
8601da177e4SLinus Torvalds	  (found in 386 vintage machines) will not work properly.
8611da177e4SLinus Torvalds
8621da177e4SLinus Torvalds	  Generally, saying N is fine.
8631da177e4SLinus Torvalds
8641da177e4SLinus Torvaldsconfig SCSI_LASI700
8651da177e4SLinus Torvalds	tristate "HP Lasi SCSI support for 53c700/710"
8661da177e4SLinus Torvalds	depends on GSC && SCSI
8671da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
8681da177e4SLinus Torvalds	help
8691da177e4SLinus Torvalds	  This is a driver for the SCSI controller in the Lasi chip found in
8701da177e4SLinus Torvalds	  many PA-RISC workstations & servers.  If you do not know whether you
8711da177e4SLinus Torvalds	  have a Lasi chip, it is safe to say "Y" here.
8721da177e4SLinus Torvalds
873c27d85f3SThomas Bogendoerferconfig SCSI_SNI_53C710
874c27d85f3SThomas Bogendoerfer	tristate "SNI RM SCSI support for 53c710"
875c27d85f3SThomas Bogendoerfer	depends on SNI_RM && SCSI
876c27d85f3SThomas Bogendoerfer	select SCSI_SPI_ATTRS
877c27d85f3SThomas Bogendoerfer	select 53C700_LE_ON_BE
878c27d85f3SThomas Bogendoerfer	help
879c27d85f3SThomas Bogendoerfer	  This is a driver for the onboard SCSI controller found in older
880c27d85f3SThomas Bogendoerfer	  SNI RM workstations & servers.
881c27d85f3SThomas Bogendoerfer
8821da177e4SLinus Torvaldsconfig 53C700_LE_ON_BE
8831da177e4SLinus Torvalds	bool
8848cbf0c17SThomas Bogendoerfer	depends on SCSI_LASI700 || SCSI_SNI_53C710
8851da177e4SLinus Torvalds	default y
8861da177e4SLinus Torvalds
8875a25ba16SJeff Garzikconfig SCSI_STEX
8885a25ba16SJeff Garzik	tristate "Promise SuperTrak EX Series support"
8895a25ba16SJeff Garzik	depends on PCI && SCSI
890a7f7f624SMasahiro Yamada	help
891ee926b27SEd Lin	  This driver supports Promise SuperTrak EX series storage controllers.
892ee926b27SEd Lin
893ee926b27SEd Lin	  Promise provides Linux RAID configuration utility for these
894ee926b27SEd Lin	  controllers. Please visit <http://www.promise.com> to download.
895ee926b27SEd Lin
896ee926b27SEd Lin	  To compile this driver as a module, choose M here: the
897ee926b27SEd Lin	  module will be called stex.
8985a25ba16SJeff Garzik
89963273134SKars de Jongconfig 53C700_BE_BUS
90063273134SKars de Jong	bool
90145804fbbSKars de Jong	depends on SCSI_A4000T || SCSI_ZORRO7XX || MVME16x_SCSI || BVME6000_SCSI
90263273134SKars de Jong	default y
90363273134SKars de Jong
9041da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_2
9051da177e4SLinus Torvalds	tristate "SYM53C8XX Version 2 SCSI support"
9061da177e4SLinus Torvalds	depends on PCI && SCSI
9071da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
908a7f7f624SMasahiro Yamada	help
9091da177e4SLinus Torvalds	  This driver supports the whole NCR53C8XX/SYM53C8XX family of
9101da177e4SLinus Torvalds	  PCI-SCSI controllers.  It also supports the subset of LSI53C10XX
9111da177e4SLinus Torvalds	  Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
9121da177e4SLinus Torvalds	  language.  It does not support LSI53C10XX Ultra-320 PCI-X SCSI
9131da177e4SLinus Torvalds	  controllers; you need to use the Fusion MPT driver for that.
9141da177e4SLinus Torvalds
915f02e84d2SMauro Carvalho Chehab	  Please read <file:Documentation/scsi/sym53c8xx_2.rst> for more
9161da177e4SLinus Torvalds	  information.
9171da177e4SLinus Torvalds
9181da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
9191da177e4SLinus Torvalds	int "DMA addressing mode"
9201da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9211da177e4SLinus Torvalds	default "1"
922a7f7f624SMasahiro Yamada	help
9231da177e4SLinus Torvalds	  This option only applies to PCI-SCSI chips that are PCI DAC
9241da177e4SLinus Torvalds	  capable (875A, 895A, 896, 1010-33, 1010-66, 1000).
9251da177e4SLinus Torvalds
9261da177e4SLinus Torvalds	  When set to 0, the driver will program the chip to only perform
9271da177e4SLinus Torvalds	  32-bit DMA.  When set to 1, the chip will be able to perform DMA
9281da177e4SLinus Torvalds	  to addresses up to 1TB.  When set to 2, the driver supports the
9291da177e4SLinus Torvalds	  full 64-bit DMA address range, but can only address 16 segments
9301da177e4SLinus Torvalds	  of 4 GB each.  This limits the total addressable range to 64 GB.
9311da177e4SLinus Torvalds
9321da177e4SLinus Torvalds	  Most machines with less than 4GB of memory should use a setting
9331da177e4SLinus Torvalds	  of 0 for best performance.  If your machine has 4GB of memory
9341da177e4SLinus Torvalds	  or more, you should set this option to 1 (the default).
9351da177e4SLinus Torvalds
9361da177e4SLinus Torvalds	  The still experimental value 2 (64 bit DMA addressing with 16
9371da177e4SLinus Torvalds	  x 4GB segments limitation) can be used on systems that require
9381da177e4SLinus Torvalds	  PCI address bits past bit 39 to be set for the addressing of
9391da177e4SLinus Torvalds	  memory using PCI DAC cycles.
9401da177e4SLinus Torvalds
9411da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_DEFAULT_TAGS
9421f61d824SMatthew Wilcox	int "Default tagged command queue depth"
9431da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9441da177e4SLinus Torvalds	default "16"
9451da177e4SLinus Torvalds	help
9461da177e4SLinus Torvalds	  This is the default value of the command queue depth the
9471da177e4SLinus Torvalds	  driver will announce to the generic SCSI layer for devices
9481da177e4SLinus Torvalds	  that support tagged command queueing. This value can be changed
9491da177e4SLinus Torvalds	  from the boot command line.  This is a soft limit that cannot
9501da177e4SLinus Torvalds	  exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.
9511da177e4SLinus Torvalds
9521da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_MAX_TAGS
9531f61d824SMatthew Wilcox	int "Maximum number of queued commands"
9541da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9551da177e4SLinus Torvalds	default "64"
9561da177e4SLinus Torvalds	help
9571da177e4SLinus Torvalds	  This option allows you to specify the maximum number of commands
9581da177e4SLinus Torvalds	  that can be queued to any device, when tagged command queuing is
9591da177e4SLinus Torvalds	  possible. The driver supports up to 256 queued commands per device.
9601da177e4SLinus Torvalds	  This value is used as a compiled-in hard limit.
9611da177e4SLinus Torvalds
9621f61d824SMatthew Wilcoxconfig SCSI_SYM53C8XX_MMIO
9631f61d824SMatthew Wilcox	bool "Use memory mapped IO"
9641da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9651f61d824SMatthew Wilcox	default y
9661da177e4SLinus Torvalds	help
9671f61d824SMatthew Wilcox	  Memory mapped IO is faster than Port IO.  Most people should
9681f61d824SMatthew Wilcox	  answer Y here, but some machines may have problems.  If you have
9691f61d824SMatthew Wilcox	  to answer N here, please report the problem to the maintainer.
9701da177e4SLinus Torvalds
9711da177e4SLinus Torvaldsconfig SCSI_IPR
9721da177e4SLinus Torvalds	tristate "IBM Power Linux RAID adapter support"
97365a15d65SBrian King	depends on PCI && SCSI
9741da177e4SLinus Torvalds	select FW_LOADER
975511cbce2SChristoph Hellwig	select IRQ_POLL
976f95dc1bbSBart Van Assche	select SGL_ALLOC
977a7f7f624SMasahiro Yamada	help
9781da177e4SLinus Torvalds	  This driver supports the IBM Power Linux family RAID adapters.
9791da177e4SLinus Torvalds	  This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
9801da177e4SLinus Torvalds	  as IBM iSeries 5702, 5703, 5709, and 570A.
9811da177e4SLinus Torvalds
9821da177e4SLinus Torvaldsconfig SCSI_IPR_TRACE
9831da177e4SLinus Torvalds	bool "enable driver internal trace"
9841da177e4SLinus Torvalds	depends on SCSI_IPR
985efbbdd84SBrian King	default y
9861da177e4SLinus Torvalds	help
9871da177e4SLinus Torvalds	  If you say Y here, the driver will trace all commands issued
9881da177e4SLinus Torvalds	  to the adapter. Performance impact is minimal. Trace can be
9891da177e4SLinus Torvalds	  dumped using /sys/bus/class/scsi_host/hostXX/trace.
9901da177e4SLinus Torvalds
9911da177e4SLinus Torvaldsconfig SCSI_IPR_DUMP
9921da177e4SLinus Torvalds	bool "enable adapter dump support"
9931da177e4SLinus Torvalds	depends on SCSI_IPR
994efbbdd84SBrian King	default y
9951da177e4SLinus Torvalds	help
9961da177e4SLinus Torvalds	  If you say Y here, the driver will support adapter crash dump.
9971da177e4SLinus Torvalds	  If you enable this support, the iprdump daemon can be used
9981da177e4SLinus Torvalds	  to capture adapter failure analysis information.
9991da177e4SLinus Torvalds
10001da177e4SLinus Torvaldsconfig SCSI_ZALON
10011da177e4SLinus Torvalds	tristate "Zalon SCSI support"
10021da177e4SLinus Torvalds	depends on GSC && SCSI
10031da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
10041da177e4SLinus Torvalds	help
10051da177e4SLinus Torvalds	  The Zalon is a GSC/HSC bus interface chip that sits between the
10061da177e4SLinus Torvalds	  PA-RISC processor and the NCR 53c720 SCSI controller on C100,
10071da177e4SLinus Torvalds	  C110, J200, J210 and some D, K & R-class machines.  It's also
10081da177e4SLinus Torvalds	  used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
10091da177e4SLinus Torvalds	  Say Y here if you have one of these machines or cards.
10101da177e4SLinus Torvalds
10111da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_DEFAULT_TAGS
10121da177e4SLinus Torvalds	int "default tagged command queue depth"
1013af8a6722SJohannes Thumshirn	depends on SCSI_ZALON
10141da177e4SLinus Torvalds	default "8"
1015a7f7f624SMasahiro Yamada	help
10161da177e4SLinus Torvalds	  "Tagged command queuing" is a feature of SCSI-2 which improves
10171da177e4SLinus Torvalds	  performance: the host adapter can send several SCSI commands to a
10181da177e4SLinus Torvalds	  device's queue even if previous commands haven't finished yet.
10191da177e4SLinus Torvalds	  Because the device is intelligent, it can optimize its operations
10201da177e4SLinus Torvalds	  (like head positioning) based on its own request queue. Some SCSI
10211da177e4SLinus Torvalds	  devices don't implement this properly; if you want to disable this
10221da177e4SLinus Torvalds	  feature, enter 0 or 1 here (it doesn't matter which).
10231da177e4SLinus Torvalds
10241da177e4SLinus Torvalds	  The default value is 8 and should be supported by most hard disks.
10251da177e4SLinus Torvalds	  This value can be overridden from the boot command line using the
10261da177e4SLinus Torvalds	  'tags' option as follows (example):
10271da177e4SLinus Torvalds	  'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
10281da177e4SLinus Torvalds	  4, set queue depth to 16 for target 2 and target 3 on controller 0
10291da177e4SLinus Torvalds	  and set queue depth to 10 for target 0 / lun 2 on controller 1.
10301da177e4SLinus Torvalds
10311da177e4SLinus Torvalds	  The normal answer therefore is to go with the default 8 and to use
10321da177e4SLinus Torvalds	  a boot command line option for devices that need to use a different
10331da177e4SLinus Torvalds	  command queue depth.
10341da177e4SLinus Torvalds
10351da177e4SLinus Torvalds	  There is no safe option other than using good SCSI devices.
10361da177e4SLinus Torvalds
10371da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_MAX_TAGS
10381da177e4SLinus Torvalds	int "maximum number of queued commands"
1039af8a6722SJohannes Thumshirn	depends on SCSI_ZALON
10401da177e4SLinus Torvalds	default "32"
1041a7f7f624SMasahiro Yamada	help
10421da177e4SLinus Torvalds	  This option allows you to specify the maximum number of commands
10431da177e4SLinus Torvalds	  that can be queued to any device, when tagged command queuing is
10441da177e4SLinus Torvalds	  possible. The default value is 32. Minimum is 2, maximum is 64.
10451da177e4SLinus Torvalds	  Modern hard disks are able to support 64 tags and even more, but
10461da177e4SLinus Torvalds	  do not seem to be faster when more than 32 tags are being used.
10471da177e4SLinus Torvalds
10481da177e4SLinus Torvalds	  So, the normal answer here is to go with the default value 32 unless
10491da177e4SLinus Torvalds	  you are using very large hard disks with large cache (>= 1 MB) that
10501da177e4SLinus Torvalds	  are able to take advantage of more than 32 tagged commands.
10511da177e4SLinus Torvalds
10521da177e4SLinus Torvalds	  There is no safe option and the default answer is recommended.
10531da177e4SLinus Torvalds
10541da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_SYNC
10551da177e4SLinus Torvalds	int "synchronous transfers frequency in MHz"
1056af8a6722SJohannes Thumshirn	depends on SCSI_ZALON
10571da177e4SLinus Torvalds	default "20"
1058a7f7f624SMasahiro Yamada	help
10591da177e4SLinus Torvalds	  The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
10601da177e4SLinus Torvalds	  rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80.  The numbers
10611da177e4SLinus Torvalds	  are respectively the maximum data transfer rates in mega-transfers
10621da177e4SLinus Torvalds	  per second for each class.  For example, a FAST-20 Wide 16 device is
10631da177e4SLinus Torvalds	  able to transfer data at 20 million 16 bit packets per second for a
10641da177e4SLinus Torvalds	  total rate of 40 MB/s.
10651da177e4SLinus Torvalds
10661da177e4SLinus Torvalds	  You may specify 0 if you want to only use asynchronous data
10671da177e4SLinus Torvalds	  transfers. This is the safest and slowest option. Otherwise, specify
10681da177e4SLinus Torvalds	  a value between 5 and 80, depending on the capability of your SCSI
10691da177e4SLinus Torvalds	  controller.  The higher the number, the faster the data transfer.
10701da177e4SLinus Torvalds	  Note that 80 should normally be ok since the driver decreases the
10711da177e4SLinus Torvalds	  value automatically according to the controller's capabilities.
10721da177e4SLinus Torvalds
10731da177e4SLinus Torvalds	  Your answer to this question is ignored for controllers with NVRAM,
10741da177e4SLinus Torvalds	  since the driver will get this information from the user set-up.  It
10751da177e4SLinus Torvalds	  also can be overridden using a boot setup option, as follows
10761da177e4SLinus Torvalds	  (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
10771da177e4SLinus Torvalds	  for FAST-20 synchronous data transfer (20 mega-transfers per
10781da177e4SLinus Torvalds	  second).
10791da177e4SLinus Torvalds
10801da177e4SLinus Torvalds	  The normal answer therefore is not to go with the default but to
10811da177e4SLinus Torvalds	  select the maximum value 80 allowing the driver to use the maximum
10821da177e4SLinus Torvalds	  value supported by each controller. If this causes problems with
10831da177e4SLinus Torvalds	  your SCSI devices, you should come back and decrease the value.
10841da177e4SLinus Torvalds
10851da177e4SLinus Torvalds	  There is no safe option other than using good cabling, right
10861da177e4SLinus Torvalds	  terminations and SCSI conformant devices.
10871da177e4SLinus Torvalds
10881da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_NO_DISCONNECT
10891da177e4SLinus Torvalds	bool "not allow targets to disconnect"
1090af8a6722SJohannes Thumshirn	depends on SCSI_ZALON && SCSI_NCR53C8XX_DEFAULT_TAGS=0
10911da177e4SLinus Torvalds	help
10921da177e4SLinus Torvalds	  This option is only provided for safety if you suspect some SCSI
10931da177e4SLinus Torvalds	  device of yours to not support properly the target-disconnect
10941da177e4SLinus Torvalds	  feature. In that case, you would say Y here. In general however, to
10951da177e4SLinus Torvalds	  not allow targets to disconnect is not reasonable if there is more
10961da177e4SLinus Torvalds	  than 1 device on a SCSI bus. The normal answer therefore is N.
10971da177e4SLinus Torvalds
10981da177e4SLinus Torvaldsconfig SCSI_QLOGIC_FAS
10991da177e4SLinus Torvalds	tristate "Qlogic FAS SCSI support"
11001da177e4SLinus Torvalds	depends on ISA && SCSI
1101a7f7f624SMasahiro Yamada	help
11021da177e4SLinus Torvalds	  This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic
11031da177e4SLinus Torvalds	  FastSCSI! cards as well as any other card based on the FASXX chip
11041da177e4SLinus Torvalds	  (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
11051da177e4SLinus Torvalds
11061da177e4SLinus Torvalds	  This driver does NOT support the PCI versions of these cards. The
11071da177e4SLinus Torvalds	  PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP
11081da177e4SLinus Torvalds	  SCSI support"), below.
11091da177e4SLinus Torvalds
11101da177e4SLinus Torvalds	  Information about this driver is contained in
1111058595d5SMauro Carvalho Chehab	  <file:Documentation/scsi/qlogicfas.rst>.  You should also read the
11121da177e4SLinus Torvalds	  SCSI-HOWTO, available from
11131da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
11141da177e4SLinus Torvalds
11151da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11161da177e4SLinus Torvalds	  module will be called qlogicfas.
11171da177e4SLinus Torvalds
11181da177e4SLinus Torvaldsconfig SCSI_QLOGIC_1280
11191da177e4SLinus Torvalds	tristate "Qlogic QLA 1240/1x80/1x160 SCSI support"
11201da177e4SLinus Torvalds	depends on PCI && SCSI
11211da177e4SLinus Torvalds	help
11221da177e4SLinus Torvalds	  Say Y if you have a QLogic ISP1240/1x80/1x160 SCSI host adapter.
11231da177e4SLinus Torvalds
11241da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11251da177e4SLinus Torvalds	  module will be called qla1280.
11261da177e4SLinus Torvalds
11271da177e4SLinus Torvaldsconfig SCSI_QLOGICPTI
11281da177e4SLinus Torvalds	tristate "PTI Qlogic, ISP Driver"
11291da177e4SLinus Torvalds	depends on SBUS && SCSI
11301da177e4SLinus Torvalds	help
11311da177e4SLinus Torvalds	  This driver supports SBUS SCSI controllers from PTI or QLogic. These
11321da177e4SLinus Torvalds	  controllers are known under Solaris as qpti and in the openprom as
11331da177e4SLinus Torvalds	  PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
11341da177e4SLinus Torvalds	  driven by a different driver.
11351da177e4SLinus Torvalds
11361da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11371da177e4SLinus Torvalds	  module will be called qlogicpti.
11381da177e4SLinus Torvalds
11391da177e4SLinus Torvaldssource "drivers/scsi/qla2xxx/Kconfig"
1140afaf5a2dSDavid Somayajulusource "drivers/scsi/qla4xxx/Kconfig"
1141ace7f46bSManish Rangankarsource "drivers/scsi/qedi/Kconfig"
114261d8658bSDupuis, Chadsource "drivers/scsi/qedf/Kconfig"
11431da177e4SLinus Torvalds
1144dea3101eSconfig SCSI_LPFC
1145dea3101eS	tristate "Emulex LightPulse Fibre Channel Support"
1146dea3101eS	depends on PCI && SCSI
1147e3d2bf65SGuenter Roeck	depends on CPU_FREQ
11486a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
1149cd069bb9SArnd Bergmann	depends on NVME_TARGET_FC || NVME_TARGET_FC=n
1150cd069bb9SArnd Bergmann	depends on NVME_FC || NVME_FC=n
11516a7252fdSJames Bottomley	select CRC_T10DIF
1152fad0a161STong Zhang	select IRQ_POLL
1153a7f7f624SMasahiro Yamada	help
1154dea3101eS          This lpfc driver supports the Emulex LightPulse
1155dea3101eS          Family of Fibre Channel PCI host adapters.
1156dea3101eS
1157923e4b6aSJames Smartconfig SCSI_LPFC_DEBUG_FS
1158923e4b6aSJames Smart	bool "Emulex LightPulse Fibre Channel debugfs Support"
1159923e4b6aSJames Smart	depends on SCSI_LPFC && DEBUG_FS
1160a7f7f624SMasahiro Yamada	help
1161692105b8SMatt LaPlante	  This makes debugging information from the lpfc driver
1162923e4b6aSJames Smart	  available via the debugfs filesystem.
1163923e4b6aSJames Smart
1164ebc076b3SJames Smartsource "drivers/scsi/elx/Kconfig"
1165ebc076b3SJames Smart
11661da177e4SLinus Torvaldsconfig SCSI_SIM710
11671da177e4SLinus Torvalds	tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
1168c8bf9212SChristoph Hellwig	depends on EISA && SCSI
11691da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
1170a7f7f624SMasahiro Yamada	help
1171692105b8SMatt LaPlante	  This driver is for NCR53c710 based SCSI host adapters.
11721da177e4SLinus Torvalds
1173c8bf9212SChristoph Hellwig	  It currently supports Compaq EISA cards.
11741da177e4SLinus Torvalds
11751da177e4SLinus Torvaldsconfig SCSI_DC395x
117692f6ed4aSKees Cook	tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support"
1177b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
11789c2d2670SHannes Reinecke	select SCSI_SPI_ATTRS
1179a7f7f624SMasahiro Yamada	help
11801da177e4SLinus Torvalds	  This driver supports PCI SCSI host adapters based on the ASIC
11811da177e4SLinus Torvalds	  TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants.
11821da177e4SLinus Torvalds
11831da177e4SLinus Torvalds	  This driver works, but is still in experimental status. So better
11841da177e4SLinus Torvalds	  have a bootable disk and a backup in case of emergency.
11851da177e4SLinus Torvalds
118662e3bfa4SMauro Carvalho Chehab	  Documentation can be found in <file:Documentation/scsi/dc395x.rst>.
11871da177e4SLinus Torvalds
11881da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11891da177e4SLinus Torvalds	  module will be called dc395x.
11901da177e4SLinus Torvalds
11913a7e7be2SHannes Reineckeconfig SCSI_AM53C974
11923a7e7be2SHannes Reinecke	tristate "Tekram DC390(T) and Am53/79C974 SCSI support (new driver)"
11933a7e7be2SHannes Reinecke	depends on PCI && SCSI
11943a7e7be2SHannes Reinecke	select SCSI_SPI_ATTRS
1195a7f7f624SMasahiro Yamada	help
11963a7e7be2SHannes Reinecke	  This driver supports PCI SCSI host adapters based on the Am53C974A
11973a7e7be2SHannes Reinecke	  chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard
11983a7e7be2SHannes Reinecke	  PCscsi/PCnet (Am53/79C974) solutions.
11993a7e7be2SHannes Reinecke	  This is a new implementation base on the generic esp_scsi driver.
12003a7e7be2SHannes Reinecke
12013a7e7be2SHannes Reinecke	  Note that this driver does NOT support Tekram DC390W/U/F, which are
12023a7e7be2SHannes Reinecke	  based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those.
12033a7e7be2SHannes Reinecke
12043a7e7be2SHannes Reinecke	  To compile this driver as a module, choose M here: the
12053a7e7be2SHannes Reinecke	  module will be called am53c974.
12063a7e7be2SHannes Reinecke
12071da177e4SLinus Torvaldsconfig SCSI_NSP32
12081da177e4SLinus Torvalds	tristate "Workbit NinjaSCSI-32Bi/UDE support"
1209b58b2ba3SNiklas Schnelle	depends on PCI && SCSI && !64BIT && HAS_IOPORT
12101da177e4SLinus Torvalds	help
12111da177e4SLinus Torvalds	  This is support for the Workbit NinjaSCSI-32Bi/UDE PCI/Cardbus
12121da177e4SLinus Torvalds	  SCSI host adapter. Please read the SCSI-HOWTO, available from
12131da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
12141da177e4SLinus Torvalds
12151da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
12161da177e4SLinus Torvalds	  module will be called nsp32.
12171da177e4SLinus Torvalds
121848a31030SOndrej Zaryconfig SCSI_WD719X
121948a31030SOndrej Zary	tristate "Western Digital WD7193/7197/7296 support"
122048a31030SOndrej Zary	depends on PCI && SCSI
122148a31030SOndrej Zary	select EEPROM_93CX6
1222a7f7f624SMasahiro Yamada	help
122348a31030SOndrej Zary	  This is a driver for Western Digital WD7193, WD7197 and WD7296 PCI
122448a31030SOndrej Zary	  SCSI controllers (based on WD33C296A chip).
122548a31030SOndrej Zary
12261da177e4SLinus Torvaldsconfig SCSI_DEBUG
12276d6f3807SDouglas Gilbert	tristate "SCSI debugging host and device simulator"
12281da177e4SLinus Torvalds	depends on SCSI
1229d0ace3c5SRandy Dunlap	select CRC_T10DIF
12301da177e4SLinus Torvalds	help
12316d6f3807SDouglas Gilbert	  This pseudo driver simulates one or more hosts (SCSI initiators),
12326d6f3807SDouglas Gilbert	  each with one or more targets, each with one or more logical units.
12336d6f3807SDouglas Gilbert	  Defaults to one of each, creating a small RAM disk device. Many
12346d6f3807SDouglas Gilbert	  parameters found in the /sys/bus/pseudo/drivers/scsi_debug
12356d6f3807SDouglas Gilbert	  directory can be tweaked at run time.
12366d6f3807SDouglas Gilbert	  See <http://sg.danny.cz/sg/sdebug26.html> for more information.
12376d6f3807SDouglas Gilbert	  Mainly used for testing and best as a module. If unsure, say N.
12381da177e4SLinus Torvalds
12391da177e4SLinus Torvaldsconfig SCSI_MESH
12401da177e4SLinus Torvalds	tristate "MESH (Power Mac internal SCSI) support"
12411da177e4SLinus Torvalds	depends on PPC32 && PPC_PMAC && SCSI
12421da177e4SLinus Torvalds	help
12431da177e4SLinus Torvalds	  Many Power Macintoshes and clones have a MESH (Macintosh Enhanced
12441da177e4SLinus Torvalds	  SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the
12451da177e4SLinus Torvalds	  other Power Macintoshes do). Say Y to include support for this SCSI
12461da177e4SLinus Torvalds	  adaptor.
12471da177e4SLinus Torvalds
12481da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
12491da177e4SLinus Torvalds	  module will be called mesh.
12501da177e4SLinus Torvalds
12511da177e4SLinus Torvaldsconfig SCSI_MESH_SYNC_RATE
12521da177e4SLinus Torvalds	int "maximum synchronous transfer rate (MB/s) (0 = async)"
12531da177e4SLinus Torvalds	depends on SCSI_MESH
12541da177e4SLinus Torvalds	default "5"
12551da177e4SLinus Torvalds	help
12561da177e4SLinus Torvalds	  On Power Macintoshes (and clones) where the MESH SCSI bus adaptor
12571da177e4SLinus Torvalds	  drives a bus which is entirely internal to the machine (such as the
12581da177e4SLinus Torvalds	  7500, 7600, 8500, etc.), the MESH is capable of synchronous
12591da177e4SLinus Torvalds	  operation at up to 10 MB/s. On machines where the SCSI bus
12601da177e4SLinus Torvalds	  controlled by the MESH can have external devices connected, it is
12611da177e4SLinus Torvalds	  usually rated at 5 MB/s. 5 is a safe value here unless you know the
12621da177e4SLinus Torvalds	  MESH SCSI bus is internal only; in that case you can say 10. Say 0
12631da177e4SLinus Torvalds	  to disable synchronous operation.
12641da177e4SLinus Torvalds
12651da177e4SLinus Torvaldsconfig SCSI_MESH_RESET_DELAY_MS
12661da177e4SLinus Torvalds	int "initial bus reset delay (ms) (0 = no reset)"
12671da177e4SLinus Torvalds	depends on SCSI_MESH
12681da177e4SLinus Torvalds	default "4000"
12691da177e4SLinus Torvalds
12701da177e4SLinus Torvaldsconfig SCSI_MAC53C94
12711da177e4SLinus Torvalds	tristate "53C94 (Power Mac external SCSI) support"
12721da177e4SLinus Torvalds	depends on PPC32 && PPC_PMAC && SCSI
12731da177e4SLinus Torvalds	help
12741da177e4SLinus Torvalds	  On Power Macintoshes (and clones) with two SCSI buses, the external
12751da177e4SLinus Torvalds	  SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older
12761da177e4SLinus Torvalds	  machines which only have one SCSI bus, such as the 7200, also use
12771da177e4SLinus Torvalds	  the 53C94. Say Y to include support for the 53C94.
12781da177e4SLinus Torvalds
12791da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
12801da177e4SLinus Torvalds	  module will be called mac53c94.
12811da177e4SLinus Torvalds
12821da177e4SLinus Torvaldssource "drivers/scsi/arm/Kconfig"
12831da177e4SLinus Torvalds
12841da177e4SLinus Torvaldsconfig JAZZ_ESP
12851da177e4SLinus Torvalds	bool "MIPS JAZZ FAS216 SCSI support"
12869ddf190aSRandy Dunlap	depends on MACH_JAZZ && SCSI=y
12873a243070SDavid S. Miller	select SCSI_SPI_ATTRS
12881da177e4SLinus Torvalds	help
12891da177e4SLinus Torvalds	  This is the driver for the onboard SCSI host adapter of MIPS Magnum
12901da177e4SLinus Torvalds	  4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
12911da177e4SLinus Torvalds	  systems.
12921da177e4SLinus Torvalds
12931da177e4SLinus Torvaldsconfig A3000_SCSI
12941da177e4SLinus Torvalds	tristate "A3000 WD33C93A support"
12951da177e4SLinus Torvalds	depends on AMIGA && SCSI
12961da177e4SLinus Torvalds	help
12971da177e4SLinus Torvalds	  If you have an Amiga 3000 and have SCSI devices connected to the
12981da177e4SLinus Torvalds	  built-in SCSI controller, say Y. Otherwise, say N.
12991da177e4SLinus Torvalds
13001da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
130190638f99SGeert Uytterhoeven	  module will be called a3000.
13021da177e4SLinus Torvalds
13031da177e4SLinus Torvaldsconfig A2091_SCSI
13041da177e4SLinus Torvalds	tristate "A2091/A590 WD33C93A support"
13051da177e4SLinus Torvalds	depends on ZORRO && SCSI
13061da177e4SLinus Torvalds	help
13071da177e4SLinus Torvalds	  If you have a Commodore A2091 SCSI controller, say Y. Otherwise,
13081da177e4SLinus Torvalds	  say N.
13091da177e4SLinus Torvalds
13101da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
131190638f99SGeert Uytterhoeven	  module will be called a2091.
13121da177e4SLinus Torvalds
13131da177e4SLinus Torvaldsconfig GVP11_SCSI
13141da177e4SLinus Torvalds	tristate "GVP Series II WD33C93A support"
13151da177e4SLinus Torvalds	depends on ZORRO && SCSI
1316a7f7f624SMasahiro Yamada	help
13171da177e4SLinus Torvalds	  If you have a Great Valley Products Series II SCSI controller,
13181da177e4SLinus Torvalds	  answer Y. Also say Y if you have a later model of GVP SCSI
13191da177e4SLinus Torvalds	  controller (such as the GVP A4008 or a Combo board). Otherwise,
13201da177e4SLinus Torvalds	  answer N. This driver does NOT work for the T-Rex series of
13211da177e4SLinus Torvalds	  accelerators from TekMagic and GVP-M.
13221da177e4SLinus Torvalds
13231da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
13241da177e4SLinus Torvalds	  module will be called gvp11.
13251da177e4SLinus Torvalds
1326a16efc1cSKars de Jongconfig SCSI_A4000T
132792f6ed4aSKees Cook	tristate "A4000T NCR53c710 SCSI support"
132892f6ed4aSKees Cook	depends on AMIGA && SCSI
1329a16efc1cSKars de Jong	select SCSI_SPI_ATTRS
13301da177e4SLinus Torvalds	help
1331a16efc1cSKars de Jong	  If you have an Amiga 4000T and have SCSI devices connected to the
1332a16efc1cSKars de Jong	  built-in SCSI controller, say Y. Otherwise, say N.
1333a16efc1cSKars de Jong
1334a16efc1cSKars de Jong	  To compile this driver as a module, choose M here: the
1335a16efc1cSKars de Jong	  module will be called a4000t.
1336a16efc1cSKars de Jong
133745804fbbSKars de Jongconfig SCSI_ZORRO7XX
133892f6ed4aSKees Cook	tristate "Zorro NCR53c710 SCSI support"
133992f6ed4aSKees Cook	depends on ZORRO && SCSI
134045804fbbSKars de Jong	select SCSI_SPI_ATTRS
13411da177e4SLinus Torvalds	help
134245804fbbSKars de Jong	  Support for various NCR53c710-based SCSI controllers on Zorro
134345804fbbSKars de Jong	  expansion boards for the Amiga.
13441da177e4SLinus Torvalds	  This includes:
13451da177e4SLinus Torvalds	    - the Amiga 4091 Zorro III SCSI-2 controller,
13461da177e4SLinus Torvalds	    - the MacroSystem Development's WarpEngine Amiga SCSI-2 controller
13471da177e4SLinus Torvalds	      (info at
13481da177e4SLinus Torvalds	      <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>),
13491da177e4SLinus Torvalds	    - the SCSI controller on the Phase5 Blizzard PowerUP 603e+
13501da177e4SLinus Torvalds	      accelerator card for the Amiga 1200,
13511da177e4SLinus Torvalds	    - the SCSI controller on the GVP Turbo 040/060 accelerator.
13521da177e4SLinus Torvalds
13533109e5aeSMichael Schmitzconfig SCSI_ZORRO_ESP
13543109e5aeSMichael Schmitz	tristate "Zorro ESP SCSI support"
13553109e5aeSMichael Schmitz	depends on ZORRO && SCSI
13563109e5aeSMichael Schmitz	select SCSI_SPI_ATTRS
135753dce332SFinn Thain	select SCSI_ESP_PIO
13583109e5aeSMichael Schmitz	help
13593109e5aeSMichael Schmitz	  Support for various NCR53C9x (ESP) based SCSI controllers on Zorro
13603109e5aeSMichael Schmitz	  expansion boards for the Amiga.
13613109e5aeSMichael Schmitz	  This includes:
13623109e5aeSMichael Schmitz	    - the Phase5 Blizzard 1230 II and IV SCSI controllers,
13633109e5aeSMichael Schmitz	    - the Phase5 Blizzard 2060 SCSI controller,
13643109e5aeSMichael Schmitz	    - the Phase5 Blizzard Cyberstorm and Cyberstorm II SCSI
13653109e5aeSMichael Schmitz	      controllers,
13663109e5aeSMichael Schmitz	    - the Fastlane Zorro III SCSI controller.
13673109e5aeSMichael Schmitz
13681da177e4SLinus Torvaldsconfig ATARI_SCSI
13691da177e4SLinus Torvalds	tristate "Atari native SCSI support"
1370fb810d12SMichael Schmitz	depends on ATARI && SCSI
1371410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
1372a7f7f624SMasahiro Yamada	help
13731da177e4SLinus Torvalds	  If you have an Atari with built-in NCR5380 SCSI controller (TT,
13741da177e4SLinus Torvalds	  Falcon, ...) say Y to get it supported. Of course also, if you have
13751da177e4SLinus Torvalds	  a compatible SCSI controller (e.g. for Medusa).
13761da177e4SLinus Torvalds
137783d2aed4SFinn Thain	  To compile this driver as a module, choose M here: the module will
137883d2aed4SFinn Thain	  be called atari_scsi. If you also enable NVRAM support, the SCSI
137983d2aed4SFinn Thain	  host's ID is taken from the setting in TT RTC NVRAM.
13801da177e4SLinus Torvalds
13811da177e4SLinus Torvalds	  This driver supports both styles of NCR integration into the
13821da177e4SLinus Torvalds	  system: the TT style (separate DMA), and the Falcon style (via
13831da177e4SLinus Torvalds	  ST-DMA, replacing ACSI).  It does NOT support other schemes, like
13841da177e4SLinus Torvalds	  in the Hades (without DMA).
13851da177e4SLinus Torvalds
13861da177e4SLinus Torvaldsconfig MAC_SCSI
13876e9ae6d5SFinn Thain	tristate "Macintosh NCR5380 SCSI"
13882559a1efSFinn Thain	depends on MAC && SCSI
1389410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
13901da177e4SLinus Torvalds	help
13911da177e4SLinus Torvalds	  This is the NCR 5380 SCSI controller included on most of the 68030
13921da177e4SLinus Torvalds	  based Macintoshes.  If you have one of these say Y and read the
13931da177e4SLinus Torvalds	  SCSI-HOWTO, available from
13941da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
13951da177e4SLinus Torvalds
13966fe07aafSFinn Thainconfig SCSI_MAC_ESP
13976fe07aafSFinn Thain	tristate "Macintosh NCR53c9[46] SCSI"
13986fe07aafSFinn Thain	depends on MAC && SCSI
139948fc8de9SGeert Uytterhoeven	select SCSI_SPI_ATTRS
140053dce332SFinn Thain	select SCSI_ESP_PIO
14016fe07aafSFinn Thain	help
14026fe07aafSFinn Thain	  This is the NCR 53c9x SCSI controller found on most of the 68040
14036fe07aafSFinn Thain	  based Macintoshes.
14046fe07aafSFinn Thain
14056fe07aafSFinn Thain	  To compile this driver as a module, choose M here: the module
14066fe07aafSFinn Thain	  will be called mac_esp.
14076fe07aafSFinn Thain
14081da177e4SLinus Torvaldsconfig MVME147_SCSI
14091da177e4SLinus Torvalds	bool "WD33C93 SCSI driver for MVME147"
1410fa53bb65SAl Viro	depends on MVME147 && SCSI=y
1411410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14121da177e4SLinus Torvalds	help
14131da177e4SLinus Torvalds	  Support for the on-board SCSI controller on the Motorola MVME147
14141da177e4SLinus Torvalds	  single-board computer.
14151da177e4SLinus Torvalds
14161da177e4SLinus Torvaldsconfig MVME16x_SCSI
1417506c7bbcSKars de Jong	tristate "NCR53C710 SCSI driver for MVME16x"
1418506c7bbcSKars de Jong	depends on MVME16x && SCSI
1419410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14201da177e4SLinus Torvalds	help
14211da177e4SLinus Torvalds	  The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710
14221da177e4SLinus Torvalds	  SCSI controller chip.  Almost everyone using one of these boards
14231da177e4SLinus Torvalds	  will want to say Y to this question.
14241da177e4SLinus Torvalds
14251da177e4SLinus Torvaldsconfig BVME6000_SCSI
14268276b58aSKars de Jong	tristate "NCR53C710 SCSI driver for BVME6000"
14278276b58aSKars de Jong	depends on BVME6000 && SCSI
1428410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14291da177e4SLinus Torvalds	help
14301da177e4SLinus Torvalds	  The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710
14311da177e4SLinus Torvalds	  SCSI controller chip.  Almost everyone using one of these boards
14321da177e4SLinus Torvalds	  will want to say Y to this question.
14331da177e4SLinus Torvalds
14341da177e4SLinus Torvaldsconfig SUN3_SCSI
14351da177e4SLinus Torvalds	tristate "Sun3 NCR5380 SCSI"
1436c39e7eeeSSam Creasey	depends on SUN3 && SCSI
1437410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14381da177e4SLinus Torvalds	help
14391da177e4SLinus Torvalds	  This option will enable support for the OBIO (onboard io) NCR5380
14401da177e4SLinus Torvalds	  SCSI controller found in the Sun 3/50 and 3/60, as well as for
14411da177e4SLinus Torvalds	  "Sun3" type VME scsi controllers also based on the NCR5380.
14421da177e4SLinus Torvalds	  General Linux information on the Sun 3 series (now discontinued)
14431da177e4SLinus Torvalds	  is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
14441da177e4SLinus Torvalds
14451da177e4SLinus Torvaldsconfig SUN3X_ESP
14461da177e4SLinus Torvalds	bool "Sun3x ESP SCSI"
1447fa53bb65SAl Viro	depends on SUN3X && SCSI=y
14480bb67f18SThomas Bogendoerfer	select SCSI_SPI_ATTRS
14491da177e4SLinus Torvalds	help
14501da177e4SLinus Torvalds	  The ESP was an on-board SCSI controller used on Sun 3/80
14511da177e4SLinus Torvalds	  machines.  Say Y here to compile in support for it.
14521da177e4SLinus Torvalds
14531da177e4SLinus Torvaldsconfig SCSI_SUNESP
14541da177e4SLinus Torvalds	tristate "Sparc ESP Scsi Driver"
14551da177e4SLinus Torvalds	depends on SBUS && SCSI
14563a243070SDavid S. Miller	select SCSI_SPI_ATTRS
14571da177e4SLinus Torvalds	help
14581da177e4SLinus Torvalds	  This is the driver for the Sun ESP SCSI host adapter. The ESP
1459dbfe54a9SFrans Pop	  chipset is present in most SPARC SBUS-based computers and
1460dbfe54a9SFrans Pop	  supports the Emulex family of ESP SCSI chips (esp100, esp100A,
1461dbfe54a9SFrans Pop	  esp236, fas101, fas236) as well as the Qlogic fas366 SCSI chip.
14621da177e4SLinus Torvalds
14631da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1464dbfe54a9SFrans Pop	  module will be called sun_esp.
14651da177e4SLinus Torvalds
14661da177e4SLinus Torvaldsconfig ZFCP
1467c06de6e2SBenjamin Block	tristate "FCP host bus adapter driver for IBM mainframes"
1468347a8dc3SMartin Schwidefsky	depends on S390 && QDIO && SCSI
14696a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
14701da177e4SLinus Torvalds	help
1471c06de6e2SBenjamin Block	  If you want to access SCSI devices attached to your IBM mainframe by
1472c06de6e2SBenjamin Block	  means of Fibre Channel Protocol host bus adapters say Y.
1473c06de6e2SBenjamin Block
1474c06de6e2SBenjamin Block	  Supported HBAs include different models of the FICON Express and FCP
1475c06de6e2SBenjamin Block	  Express I/O cards.
1476c06de6e2SBenjamin Block
1477c06de6e2SBenjamin Block	  For a more complete list, and for more details about setup and
1478c06de6e2SBenjamin Block	  operation refer to the IBM publication "Device Drivers, Features, and
1479c06de6e2SBenjamin Block	  Commands", SC33-8411.
14801da177e4SLinus Torvalds
14811da177e4SLinus Torvalds          This driver is also available as a module. This module will be
14821da177e4SLinus Torvalds          called zfcp. If you want to compile it as a module, say M here
1483cd238effSMauro Carvalho Chehab          and read <file:Documentation/kbuild/modules.rst>.
14841da177e4SLinus Torvalds
148589a36810SAnil Ravindranathconfig SCSI_PMCRAID
148689a36810SAnil Ravindranath	tristate "PMC SIERRA Linux MaxRAID adapter support"
1487b2045240SRandy Dunlap	depends on PCI && SCSI && NET
1488ed4414ceSBart Van Assche	select SGL_ALLOC
1489a7f7f624SMasahiro Yamada	help
149089a36810SAnil Ravindranath	  This driver supports the PMC SIERRA MaxRAID adapters.
149189a36810SAnil Ravindranath
1492dbf9bfe6Sjack wangconfig SCSI_PM8001
1493dbf9bfe6Sjack wang	tristate "PMC-Sierra SPC 8001 SAS/SATA Based Host Adapter driver"
1494dbf9bfe6Sjack wang	depends on PCI && SCSI
1495dbf9bfe6Sjack wang	select SCSI_SAS_LIBSAS
1496dbf9bfe6Sjack wang	help
1497dbf9bfe6Sjack wang	  This driver supports PMC-Sierra PCIE SAS/SATA 8x6G SPC 8001 chip
1498dbf9bfe6Sjack wang	  based host adapters.
1499dbf9bfe6Sjack wang
15007725ccfdSJing Huangconfig SCSI_BFA_FC
15017725ccfdSJing Huang	tristate "Brocade BFA Fibre Channel Support"
15027725ccfdSJing Huang	depends on PCI && SCSI
15036a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
15047725ccfdSJing Huang	help
15057725ccfdSJing Huang	  This bfa driver supports all Brocade PCIe FC/FCOE host adapters.
15067725ccfdSJing Huang
15077725ccfdSJing Huang	  To compile this driver as a module, choose M here. The module will
15087725ccfdSJing Huang	  be called bfa.
15097725ccfdSJing Huang
15104fe74b1cSPaolo Bonziniconfig SCSI_VIRTIO
151192f6ed4aSKees Cook	tristate "virtio-scsi support"
151292f6ed4aSKees Cook	depends on VIRTIO
15134fe74b1cSPaolo Bonzini	help
15144fe74b1cSPaolo Bonzini          This is the virtual HBA driver for virtio.  If the kernel will
15154fe74b1cSPaolo Bonzini          be used in a virtual machine, say Y or M.
15164fe74b1cSPaolo Bonzini
1517a3667aaeSNaresh Kumar Innasource "drivers/scsi/csiostor/Kconfig"
15184fe74b1cSPaolo Bonzini
15191da177e4SLinus Torvaldssource "drivers/scsi/pcmcia/Kconfig"
15201da177e4SLinus Torvalds
1521e70bdd81SArnd Bergmannendif # SCSI_LOWLEVEL
1522e70bdd81SArnd Bergmann
1523a6a8d9f8SChandra Seetharamansource "drivers/scsi/device_handler/Kconfig"
1524a6a8d9f8SChandra Seetharaman
15251da177e4SLinus Torvaldsendmenu
1526