xref: /linux/drivers/scsi/Kconfig (revision bf69bd3fc26a107611e76b342027bb60b2411d4e)
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
2434977c0f4SBart Van Asscheconfig SCSI_PROTO_TEST
2444977c0f4SBart Van Assche	tristate "scsi_proto.h unit tests" if !KUNIT_ALL_TESTS
2454977c0f4SBart Van Assche	depends on SCSI && KUNIT
2464977c0f4SBart Van Assche	default KUNIT_ALL_TESTS
2474977c0f4SBart 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
30692186c14SEric Biggers	select CRC32
307c899e4efSAlex Aizman	select CRYPTO
308c899e4efSAlex Aizman	select CRYPTO_MD5
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"
339c3673464SKaren Xie
3401da177e4SLinus Torvaldsconfig SGIWD93_SCSI
3411da177e4SLinus Torvalds	tristate "SGI WD93C93 SCSI Driver"
3422adbfa33SThomas Bogendoerfer	depends on SGI_HAS_WD93 && SCSI
3431da177e4SLinus Torvalds	help
3441da177e4SLinus Torvalds	  If you have a Western Digital WD93 SCSI controller on
3451da177e4SLinus Torvalds	  an SGI MIPS system, say Y.  Otherwise, say N.
3461da177e4SLinus Torvalds
3471da177e4SLinus Torvaldsconfig BLK_DEV_3W_XXXX_RAID
3481da177e4SLinus Torvalds	tristate "3ware 5/6/7/8xxx ATA-RAID support"
349b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
3501da177e4SLinus Torvalds	help
3511da177e4SLinus Torvalds	  3ware is the only hardware ATA-Raid product in Linux to date.
3521da177e4SLinus Torvalds	  This card is 2,4, or 8 channel master mode support only.
3531da177e4SLinus Torvalds	  SCSI support required!!!
3541da177e4SLinus Torvalds
3551da177e4SLinus Torvalds	  <http://www.3ware.com/>
3561da177e4SLinus Torvalds
3571da177e4SLinus Torvalds	  Please read the comments at the top of
3581da177e4SLinus Torvalds	  <file:drivers/scsi/3w-xxxx.c>.
3591da177e4SLinus Torvalds
360edd16368SStephen M. Cameronconfig SCSI_HPSA
361edd16368SStephen M. Cameron	tristate "HP Smart Array SCSI driver"
362edd16368SStephen M. Cameron	depends on PCI && SCSI
3630fc9fd40SAkinobu Mita	select CHECK_SIGNATURE
364653cfb85SArnd Bergmann	select SCSI_SAS_ATTRS
365edd16368SStephen M. Cameron	help
366edd16368SStephen M. Cameron	  This driver supports HP Smart Array Controllers (circa 2009).
367edd16368SStephen M. Cameron	  It is a SCSI alternative to the cciss driver, which is a block
368edd16368SStephen M. Cameron	  driver.  Anyone wishing to use HP Smart Array controllers who
369edd16368SStephen M. Cameron	  would prefer the devices be presented to linux as SCSI devices,
370edd16368SStephen M. Cameron	  rather than as generic block devices should say Y here.
371edd16368SStephen M. Cameron
3721da177e4SLinus Torvaldsconfig SCSI_3W_9XXX
3731da177e4SLinus Torvalds	tristate "3ware 9xxx SATA-RAID support"
3741da177e4SLinus Torvalds	depends on PCI && SCSI
3751da177e4SLinus Torvalds	help
3761da177e4SLinus Torvalds	  This driver supports the 9000 series 3ware SATA-RAID cards.
3771da177e4SLinus Torvalds
3781da177e4SLinus Torvalds	  <http://www.amcc.com>
3791da177e4SLinus Torvalds
3801da177e4SLinus Torvalds	  Please read the comments at the top of
3811da177e4SLinus Torvalds	  <file:drivers/scsi/3w-9xxx.c>.
3821da177e4SLinus Torvalds
383f619106bSadam radfordconfig SCSI_3W_SAS
384f619106bSadam radford	tristate "3ware 97xx SAS/SATA-RAID support"
385f619106bSadam radford	depends on PCI && SCSI
386f619106bSadam radford	help
387f619106bSadam radford	  This driver supports the LSI 3ware 9750 6Gb/s SAS/SATA-RAID cards.
388f619106bSadam radford
389f619106bSadam radford	  <http://www.lsi.com>
390f619106bSadam radford
391f619106bSadam radford	  Please read the comments at the top of
392f619106bSadam radford	  <file:drivers/scsi/3w-sas.c>.
393f619106bSadam radford
3941da177e4SLinus Torvaldsconfig SCSI_ACARD
3951da177e4SLinus Torvalds	tristate "ACARD SCSI support"
396b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
3971da177e4SLinus Torvalds	help
3981da177e4SLinus Torvalds	  This driver supports the ACARD SCSI host adapter.
3991da177e4SLinus Torvalds	  Support Chip <ATP870 ATP876 ATP880 ATP885>
4001da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4011da177e4SLinus Torvalds	  module will be called atp870u.
4021da177e4SLinus Torvalds
4031da177e4SLinus Torvaldsconfig SCSI_AHA152X
4041da177e4SLinus Torvalds	tristate "Adaptec AHA152X/2825 support"
405fa7250d6SAlan Cox	depends on ISA && SCSI
4067b32cb54SChristoph Hellwig	depends on !HIGHMEM
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
826*bf69bd3fSChristoph Hellwig	depends on !HIGHMEM
827a7f7f624SMasahiro Yamada	help
8281da177e4SLinus Torvalds	  This driver supports newer versions of IOMEGA's parallel port ZIP
8291da177e4SLinus Torvalds	  drive (a 100 MB removable media device).
8301da177e4SLinus Torvalds
8311da177e4SLinus Torvalds	  Note that you can say N here if you have the SCSI version of the ZIP
8321da177e4SLinus Torvalds	  drive: it will be supported automatically if you said Y to the
8331da177e4SLinus Torvalds	  generic "SCSI disk support", above.
8341da177e4SLinus Torvalds
8351da177e4SLinus Torvalds	  If you have the ZIP Plus drive or a more recent parallel port ZIP
8361da177e4SLinus Torvalds	  drive (if the supplied cable with the drive is labeled "AutoDetect")
8371da177e4SLinus Torvalds	  then you should say Y here; if you have an older ZIP drive, say N
8381da177e4SLinus Torvalds	  here and Y to "IOMEGA Parallel Port (ppa - older drives)", above.
8391da177e4SLinus Torvalds
8401da177e4SLinus Torvalds	  For more information about this driver and how to use it you should
841304a8b62SMauro Carvalho Chehab	  read the file <file:Documentation/scsi/ppa.rst>.  You should also read
8421da177e4SLinus Torvalds	  the SCSI-HOWTO, which is available from
8431da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.  If you use this driver,
8441da177e4SLinus Torvalds	  you will still be able to use the parallel port for other tasks,
8451da177e4SLinus Torvalds	  such as a printer; it is safe to compile both drivers into the
8461da177e4SLinus Torvalds	  kernel.
8471da177e4SLinus Torvalds
8481da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
8491da177e4SLinus Torvalds	  module will be called imm.
8501da177e4SLinus Torvalds
8511da177e4SLinus Torvaldsconfig SCSI_IZIP_SLOW_CTR
8521da177e4SLinus Torvalds	bool "ppa/imm option - Assume slow parport control register"
8536a19b41bSMarko Kohtala	depends on SCSI_PPA || SCSI_IMM
8541da177e4SLinus Torvalds	help
8551da177e4SLinus Torvalds	  Some parallel ports are known to have excessive delays between
8561da177e4SLinus Torvalds	  changing the parallel port control register and good data being
8571da177e4SLinus Torvalds	  available on the parallel port data/status register. This option
8581da177e4SLinus Torvalds	  forces a small delay (1.0 usec to be exact) after changing the
8591da177e4SLinus Torvalds	  control register to let things settle out. Enabling this option may
8601da177e4SLinus Torvalds	  result in a big drop in performance but some very old parallel ports
8611da177e4SLinus Torvalds	  (found in 386 vintage machines) will not work properly.
8621da177e4SLinus Torvalds
8631da177e4SLinus Torvalds	  Generally, saying N is fine.
8641da177e4SLinus Torvalds
8651da177e4SLinus Torvaldsconfig SCSI_LASI700
8661da177e4SLinus Torvalds	tristate "HP Lasi SCSI support for 53c700/710"
8671da177e4SLinus Torvalds	depends on GSC && SCSI
8681da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
8691da177e4SLinus Torvalds	help
8701da177e4SLinus Torvalds	  This is a driver for the SCSI controller in the Lasi chip found in
8711da177e4SLinus Torvalds	  many PA-RISC workstations & servers.  If you do not know whether you
8721da177e4SLinus Torvalds	  have a Lasi chip, it is safe to say "Y" here.
8731da177e4SLinus Torvalds
874c27d85f3SThomas Bogendoerferconfig SCSI_SNI_53C710
875c27d85f3SThomas Bogendoerfer	tristate "SNI RM SCSI support for 53c710"
876c27d85f3SThomas Bogendoerfer	depends on SNI_RM && SCSI
877c27d85f3SThomas Bogendoerfer	select SCSI_SPI_ATTRS
878c27d85f3SThomas Bogendoerfer	select 53C700_LE_ON_BE
879c27d85f3SThomas Bogendoerfer	help
880c27d85f3SThomas Bogendoerfer	  This is a driver for the onboard SCSI controller found in older
881c27d85f3SThomas Bogendoerfer	  SNI RM workstations & servers.
882c27d85f3SThomas Bogendoerfer
8831da177e4SLinus Torvaldsconfig 53C700_LE_ON_BE
8841da177e4SLinus Torvalds	bool
8858cbf0c17SThomas Bogendoerfer	depends on SCSI_LASI700 || SCSI_SNI_53C710
8861da177e4SLinus Torvalds	default y
8871da177e4SLinus Torvalds
8885a25ba16SJeff Garzikconfig SCSI_STEX
8895a25ba16SJeff Garzik	tristate "Promise SuperTrak EX Series support"
8905a25ba16SJeff Garzik	depends on PCI && SCSI
891a7f7f624SMasahiro Yamada	help
892ee926b27SEd Lin	  This driver supports Promise SuperTrak EX series storage controllers.
893ee926b27SEd Lin
894ee926b27SEd Lin	  Promise provides Linux RAID configuration utility for these
895ee926b27SEd Lin	  controllers. Please visit <http://www.promise.com> to download.
896ee926b27SEd Lin
897ee926b27SEd Lin	  To compile this driver as a module, choose M here: the
898ee926b27SEd Lin	  module will be called stex.
8995a25ba16SJeff Garzik
90063273134SKars de Jongconfig 53C700_BE_BUS
90163273134SKars de Jong	bool
90245804fbbSKars de Jong	depends on SCSI_A4000T || SCSI_ZORRO7XX || MVME16x_SCSI || BVME6000_SCSI
90363273134SKars de Jong	default y
90463273134SKars de Jong
9051da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_2
9061da177e4SLinus Torvalds	tristate "SYM53C8XX Version 2 SCSI support"
9071da177e4SLinus Torvalds	depends on PCI && SCSI
9081da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
909a7f7f624SMasahiro Yamada	help
9101da177e4SLinus Torvalds	  This driver supports the whole NCR53C8XX/SYM53C8XX family of
9111da177e4SLinus Torvalds	  PCI-SCSI controllers.  It also supports the subset of LSI53C10XX
9121da177e4SLinus Torvalds	  Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
9131da177e4SLinus Torvalds	  language.  It does not support LSI53C10XX Ultra-320 PCI-X SCSI
9141da177e4SLinus Torvalds	  controllers; you need to use the Fusion MPT driver for that.
9151da177e4SLinus Torvalds
916f02e84d2SMauro Carvalho Chehab	  Please read <file:Documentation/scsi/sym53c8xx_2.rst> for more
9171da177e4SLinus Torvalds	  information.
9181da177e4SLinus Torvalds
9191da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
9201da177e4SLinus Torvalds	int "DMA addressing mode"
9211da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9221da177e4SLinus Torvalds	default "1"
923a7f7f624SMasahiro Yamada	help
9241da177e4SLinus Torvalds	  This option only applies to PCI-SCSI chips that are PCI DAC
9251da177e4SLinus Torvalds	  capable (875A, 895A, 896, 1010-33, 1010-66, 1000).
9261da177e4SLinus Torvalds
9271da177e4SLinus Torvalds	  When set to 0, the driver will program the chip to only perform
9281da177e4SLinus Torvalds	  32-bit DMA.  When set to 1, the chip will be able to perform DMA
9291da177e4SLinus Torvalds	  to addresses up to 1TB.  When set to 2, the driver supports the
9301da177e4SLinus Torvalds	  full 64-bit DMA address range, but can only address 16 segments
9311da177e4SLinus Torvalds	  of 4 GB each.  This limits the total addressable range to 64 GB.
9321da177e4SLinus Torvalds
9331da177e4SLinus Torvalds	  Most machines with less than 4GB of memory should use a setting
9341da177e4SLinus Torvalds	  of 0 for best performance.  If your machine has 4GB of memory
9351da177e4SLinus Torvalds	  or more, you should set this option to 1 (the default).
9361da177e4SLinus Torvalds
9371da177e4SLinus Torvalds	  The still experimental value 2 (64 bit DMA addressing with 16
9381da177e4SLinus Torvalds	  x 4GB segments limitation) can be used on systems that require
9391da177e4SLinus Torvalds	  PCI address bits past bit 39 to be set for the addressing of
9401da177e4SLinus Torvalds	  memory using PCI DAC cycles.
9411da177e4SLinus Torvalds
9421da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_DEFAULT_TAGS
9431f61d824SMatthew Wilcox	int "Default tagged command queue depth"
9441da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9451da177e4SLinus Torvalds	default "16"
9461da177e4SLinus Torvalds	help
9471da177e4SLinus Torvalds	  This is the default value of the command queue depth the
9481da177e4SLinus Torvalds	  driver will announce to the generic SCSI layer for devices
9491da177e4SLinus Torvalds	  that support tagged command queueing. This value can be changed
9501da177e4SLinus Torvalds	  from the boot command line.  This is a soft limit that cannot
9511da177e4SLinus Torvalds	  exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.
9521da177e4SLinus Torvalds
9531da177e4SLinus Torvaldsconfig SCSI_SYM53C8XX_MAX_TAGS
9541f61d824SMatthew Wilcox	int "Maximum number of queued commands"
9551da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9561da177e4SLinus Torvalds	default "64"
9571da177e4SLinus Torvalds	help
9581da177e4SLinus Torvalds	  This option allows you to specify the maximum number of commands
9591da177e4SLinus Torvalds	  that can be queued to any device, when tagged command queuing is
9601da177e4SLinus Torvalds	  possible. The driver supports up to 256 queued commands per device.
9611da177e4SLinus Torvalds	  This value is used as a compiled-in hard limit.
9621da177e4SLinus Torvalds
9631f61d824SMatthew Wilcoxconfig SCSI_SYM53C8XX_MMIO
9641f61d824SMatthew Wilcox	bool "Use memory mapped IO"
9651da177e4SLinus Torvalds	depends on SCSI_SYM53C8XX_2
9661f61d824SMatthew Wilcox	default y
9671da177e4SLinus Torvalds	help
9681f61d824SMatthew Wilcox	  Memory mapped IO is faster than Port IO.  Most people should
9691f61d824SMatthew Wilcox	  answer Y here, but some machines may have problems.  If you have
9701f61d824SMatthew Wilcox	  to answer N here, please report the problem to the maintainer.
9711da177e4SLinus Torvalds
9721da177e4SLinus Torvaldsconfig SCSI_IPR
9731da177e4SLinus Torvalds	tristate "IBM Power Linux RAID adapter support"
97465a15d65SBrian King	depends on PCI && SCSI
9751da177e4SLinus Torvalds	select FW_LOADER
976511cbce2SChristoph Hellwig	select IRQ_POLL
977f95dc1bbSBart Van Assche	select SGL_ALLOC
978a7f7f624SMasahiro Yamada	help
9791da177e4SLinus Torvalds	  This driver supports the IBM Power Linux family RAID adapters.
9801da177e4SLinus Torvalds	  This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
9811da177e4SLinus Torvalds	  as IBM iSeries 5702, 5703, 5709, and 570A.
9821da177e4SLinus Torvalds
9831da177e4SLinus Torvaldsconfig SCSI_IPR_TRACE
9841da177e4SLinus Torvalds	bool "enable driver internal trace"
9851da177e4SLinus Torvalds	depends on SCSI_IPR
986efbbdd84SBrian King	default y
9871da177e4SLinus Torvalds	help
9881da177e4SLinus Torvalds	  If you say Y here, the driver will trace all commands issued
9891da177e4SLinus Torvalds	  to the adapter. Performance impact is minimal. Trace can be
9901da177e4SLinus Torvalds	  dumped using /sys/bus/class/scsi_host/hostXX/trace.
9911da177e4SLinus Torvalds
9921da177e4SLinus Torvaldsconfig SCSI_IPR_DUMP
9931da177e4SLinus Torvalds	bool "enable adapter dump support"
9941da177e4SLinus Torvalds	depends on SCSI_IPR
995efbbdd84SBrian King	default y
9961da177e4SLinus Torvalds	help
9971da177e4SLinus Torvalds	  If you say Y here, the driver will support adapter crash dump.
9981da177e4SLinus Torvalds	  If you enable this support, the iprdump daemon can be used
9991da177e4SLinus Torvalds	  to capture adapter failure analysis information.
10001da177e4SLinus Torvalds
10011da177e4SLinus Torvaldsconfig SCSI_ZALON
10021da177e4SLinus Torvalds	tristate "Zalon SCSI support"
10031da177e4SLinus Torvalds	depends on GSC && SCSI
10041da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
10051da177e4SLinus Torvalds	help
10061da177e4SLinus Torvalds	  The Zalon is a GSC/HSC bus interface chip that sits between the
10071da177e4SLinus Torvalds	  PA-RISC processor and the NCR 53c720 SCSI controller on C100,
10081da177e4SLinus Torvalds	  C110, J200, J210 and some D, K & R-class machines.  It's also
10091da177e4SLinus Torvalds	  used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
10101da177e4SLinus Torvalds	  Say Y here if you have one of these machines or cards.
10111da177e4SLinus Torvalds
10121da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_DEFAULT_TAGS
10131da177e4SLinus Torvalds	int "default tagged command queue depth"
1014af8a6722SJohannes Thumshirn	depends on SCSI_ZALON
10151da177e4SLinus Torvalds	default "8"
1016a7f7f624SMasahiro Yamada	help
10171da177e4SLinus Torvalds	  "Tagged command queuing" is a feature of SCSI-2 which improves
10181da177e4SLinus Torvalds	  performance: the host adapter can send several SCSI commands to a
10191da177e4SLinus Torvalds	  device's queue even if previous commands haven't finished yet.
10201da177e4SLinus Torvalds	  Because the device is intelligent, it can optimize its operations
10211da177e4SLinus Torvalds	  (like head positioning) based on its own request queue. Some SCSI
10221da177e4SLinus Torvalds	  devices don't implement this properly; if you want to disable this
10231da177e4SLinus Torvalds	  feature, enter 0 or 1 here (it doesn't matter which).
10241da177e4SLinus Torvalds
10251da177e4SLinus Torvalds	  The default value is 8 and should be supported by most hard disks.
10261da177e4SLinus Torvalds	  This value can be overridden from the boot command line using the
10271da177e4SLinus Torvalds	  'tags' option as follows (example):
10281da177e4SLinus Torvalds	  'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
10291da177e4SLinus Torvalds	  4, set queue depth to 16 for target 2 and target 3 on controller 0
10301da177e4SLinus Torvalds	  and set queue depth to 10 for target 0 / lun 2 on controller 1.
10311da177e4SLinus Torvalds
10321da177e4SLinus Torvalds	  The normal answer therefore is to go with the default 8 and to use
10331da177e4SLinus Torvalds	  a boot command line option for devices that need to use a different
10341da177e4SLinus Torvalds	  command queue depth.
10351da177e4SLinus Torvalds
10361da177e4SLinus Torvalds	  There is no safe option other than using good SCSI devices.
10371da177e4SLinus Torvalds
10381da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_MAX_TAGS
10391da177e4SLinus Torvalds	int "maximum number of queued commands"
1040af8a6722SJohannes Thumshirn	depends on SCSI_ZALON
10411da177e4SLinus Torvalds	default "32"
1042a7f7f624SMasahiro Yamada	help
10431da177e4SLinus Torvalds	  This option allows you to specify the maximum number of commands
10441da177e4SLinus Torvalds	  that can be queued to any device, when tagged command queuing is
10451da177e4SLinus Torvalds	  possible. The default value is 32. Minimum is 2, maximum is 64.
10461da177e4SLinus Torvalds	  Modern hard disks are able to support 64 tags and even more, but
10471da177e4SLinus Torvalds	  do not seem to be faster when more than 32 tags are being used.
10481da177e4SLinus Torvalds
10491da177e4SLinus Torvalds	  So, the normal answer here is to go with the default value 32 unless
10501da177e4SLinus Torvalds	  you are using very large hard disks with large cache (>= 1 MB) that
10511da177e4SLinus Torvalds	  are able to take advantage of more than 32 tagged commands.
10521da177e4SLinus Torvalds
10531da177e4SLinus Torvalds	  There is no safe option and the default answer is recommended.
10541da177e4SLinus Torvalds
10551da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_SYNC
10561da177e4SLinus Torvalds	int "synchronous transfers frequency in MHz"
1057af8a6722SJohannes Thumshirn	depends on SCSI_ZALON
10581da177e4SLinus Torvalds	default "20"
1059a7f7f624SMasahiro Yamada	help
10601da177e4SLinus Torvalds	  The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
10611da177e4SLinus Torvalds	  rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80.  The numbers
10621da177e4SLinus Torvalds	  are respectively the maximum data transfer rates in mega-transfers
10631da177e4SLinus Torvalds	  per second for each class.  For example, a FAST-20 Wide 16 device is
10641da177e4SLinus Torvalds	  able to transfer data at 20 million 16 bit packets per second for a
10651da177e4SLinus Torvalds	  total rate of 40 MB/s.
10661da177e4SLinus Torvalds
10671da177e4SLinus Torvalds	  You may specify 0 if you want to only use asynchronous data
10681da177e4SLinus Torvalds	  transfers. This is the safest and slowest option. Otherwise, specify
10691da177e4SLinus Torvalds	  a value between 5 and 80, depending on the capability of your SCSI
10701da177e4SLinus Torvalds	  controller.  The higher the number, the faster the data transfer.
10711da177e4SLinus Torvalds	  Note that 80 should normally be ok since the driver decreases the
10721da177e4SLinus Torvalds	  value automatically according to the controller's capabilities.
10731da177e4SLinus Torvalds
10741da177e4SLinus Torvalds	  Your answer to this question is ignored for controllers with NVRAM,
10751da177e4SLinus Torvalds	  since the driver will get this information from the user set-up.  It
10761da177e4SLinus Torvalds	  also can be overridden using a boot setup option, as follows
10771da177e4SLinus Torvalds	  (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
10781da177e4SLinus Torvalds	  for FAST-20 synchronous data transfer (20 mega-transfers per
10791da177e4SLinus Torvalds	  second).
10801da177e4SLinus Torvalds
10811da177e4SLinus Torvalds	  The normal answer therefore is not to go with the default but to
10821da177e4SLinus Torvalds	  select the maximum value 80 allowing the driver to use the maximum
10831da177e4SLinus Torvalds	  value supported by each controller. If this causes problems with
10841da177e4SLinus Torvalds	  your SCSI devices, you should come back and decrease the value.
10851da177e4SLinus Torvalds
10861da177e4SLinus Torvalds	  There is no safe option other than using good cabling, right
10871da177e4SLinus Torvalds	  terminations and SCSI conformant devices.
10881da177e4SLinus Torvalds
10891da177e4SLinus Torvaldsconfig SCSI_NCR53C8XX_NO_DISCONNECT
10901da177e4SLinus Torvalds	bool "not allow targets to disconnect"
1091af8a6722SJohannes Thumshirn	depends on SCSI_ZALON && SCSI_NCR53C8XX_DEFAULT_TAGS=0
10921da177e4SLinus Torvalds	help
10931da177e4SLinus Torvalds	  This option is only provided for safety if you suspect some SCSI
10941da177e4SLinus Torvalds	  device of yours to not support properly the target-disconnect
10951da177e4SLinus Torvalds	  feature. In that case, you would say Y here. In general however, to
10961da177e4SLinus Torvalds	  not allow targets to disconnect is not reasonable if there is more
10971da177e4SLinus Torvalds	  than 1 device on a SCSI bus. The normal answer therefore is N.
10981da177e4SLinus Torvalds
10991da177e4SLinus Torvaldsconfig SCSI_QLOGIC_FAS
11001da177e4SLinus Torvalds	tristate "Qlogic FAS SCSI support"
11011da177e4SLinus Torvalds	depends on ISA && SCSI
1102a7f7f624SMasahiro Yamada	help
11031da177e4SLinus Torvalds	  This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic
11041da177e4SLinus Torvalds	  FastSCSI! cards as well as any other card based on the FASXX chip
11051da177e4SLinus Torvalds	  (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
11061da177e4SLinus Torvalds
11071da177e4SLinus Torvalds	  This driver does NOT support the PCI versions of these cards. The
11081da177e4SLinus Torvalds	  PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP
11091da177e4SLinus Torvalds	  SCSI support"), below.
11101da177e4SLinus Torvalds
11111da177e4SLinus Torvalds	  Information about this driver is contained in
1112058595d5SMauro Carvalho Chehab	  <file:Documentation/scsi/qlogicfas.rst>.  You should also read the
11131da177e4SLinus Torvalds	  SCSI-HOWTO, available from
11141da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
11151da177e4SLinus Torvalds
11161da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11171da177e4SLinus Torvalds	  module will be called qlogicfas.
11181da177e4SLinus Torvalds
11191da177e4SLinus Torvaldsconfig SCSI_QLOGIC_1280
11201da177e4SLinus Torvalds	tristate "Qlogic QLA 1240/1x80/1x160 SCSI support"
11211da177e4SLinus Torvalds	depends on PCI && SCSI
11221da177e4SLinus Torvalds	help
11231da177e4SLinus Torvalds	  Say Y if you have a QLogic ISP1240/1x80/1x160 SCSI host adapter.
11241da177e4SLinus Torvalds
11251da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11261da177e4SLinus Torvalds	  module will be called qla1280.
11271da177e4SLinus Torvalds
11281da177e4SLinus Torvaldsconfig SCSI_QLOGICPTI
11291da177e4SLinus Torvalds	tristate "PTI Qlogic, ISP Driver"
11301da177e4SLinus Torvalds	depends on SBUS && SCSI
11311da177e4SLinus Torvalds	help
11321da177e4SLinus Torvalds	  This driver supports SBUS SCSI controllers from PTI or QLogic. These
11331da177e4SLinus Torvalds	  controllers are known under Solaris as qpti and in the openprom as
11341da177e4SLinus Torvalds	  PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
11351da177e4SLinus Torvalds	  driven by a different driver.
11361da177e4SLinus Torvalds
11371da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11381da177e4SLinus Torvalds	  module will be called qlogicpti.
11391da177e4SLinus Torvalds
11401da177e4SLinus Torvaldssource "drivers/scsi/qla2xxx/Kconfig"
1141afaf5a2dSDavid Somayajulusource "drivers/scsi/qla4xxx/Kconfig"
1142ace7f46bSManish Rangankarsource "drivers/scsi/qedi/Kconfig"
114361d8658bSDupuis, Chadsource "drivers/scsi/qedf/Kconfig"
11441da177e4SLinus Torvalds
1145dea3101eSconfig SCSI_LPFC
1146dea3101eS	tristate "Emulex LightPulse Fibre Channel Support"
1147dea3101eS	depends on PCI && SCSI
1148e3d2bf65SGuenter Roeck	depends on CPU_FREQ
11496a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
1150cd069bb9SArnd Bergmann	depends on NVME_TARGET_FC || NVME_TARGET_FC=n
1151cd069bb9SArnd Bergmann	depends on NVME_FC || NVME_FC=n
11526a7252fdSJames Bottomley	select CRC_T10DIF
1153fad0a161STong Zhang	select IRQ_POLL
1154a7f7f624SMasahiro Yamada	help
1155dea3101eS          This lpfc driver supports the Emulex LightPulse
1156dea3101eS          Family of Fibre Channel PCI host adapters.
1157dea3101eS
1158923e4b6aSJames Smartconfig SCSI_LPFC_DEBUG_FS
1159923e4b6aSJames Smart	bool "Emulex LightPulse Fibre Channel debugfs Support"
1160923e4b6aSJames Smart	depends on SCSI_LPFC && DEBUG_FS
1161a7f7f624SMasahiro Yamada	help
1162692105b8SMatt LaPlante	  This makes debugging information from the lpfc driver
1163923e4b6aSJames Smart	  available via the debugfs filesystem.
1164923e4b6aSJames Smart
1165ebc076b3SJames Smartsource "drivers/scsi/elx/Kconfig"
1166ebc076b3SJames Smart
11671da177e4SLinus Torvaldsconfig SCSI_SIM710
11681da177e4SLinus Torvalds	tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
1169c8bf9212SChristoph Hellwig	depends on EISA && SCSI
11701da177e4SLinus Torvalds	select SCSI_SPI_ATTRS
1171a7f7f624SMasahiro Yamada	help
1172692105b8SMatt LaPlante	  This driver is for NCR53c710 based SCSI host adapters.
11731da177e4SLinus Torvalds
1174c8bf9212SChristoph Hellwig	  It currently supports Compaq EISA cards.
11751da177e4SLinus Torvalds
11761da177e4SLinus Torvaldsconfig SCSI_DC395x
117792f6ed4aSKees Cook	tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support"
1178b58b2ba3SNiklas Schnelle	depends on PCI && HAS_IOPORT && SCSI
11799c2d2670SHannes Reinecke	select SCSI_SPI_ATTRS
1180a7f7f624SMasahiro Yamada	help
11811da177e4SLinus Torvalds	  This driver supports PCI SCSI host adapters based on the ASIC
11821da177e4SLinus Torvalds	  TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants.
11831da177e4SLinus Torvalds
11841da177e4SLinus Torvalds	  This driver works, but is still in experimental status. So better
11851da177e4SLinus Torvalds	  have a bootable disk and a backup in case of emergency.
11861da177e4SLinus Torvalds
118762e3bfa4SMauro Carvalho Chehab	  Documentation can be found in <file:Documentation/scsi/dc395x.rst>.
11881da177e4SLinus Torvalds
11891da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
11901da177e4SLinus Torvalds	  module will be called dc395x.
11911da177e4SLinus Torvalds
11923a7e7be2SHannes Reineckeconfig SCSI_AM53C974
11933a7e7be2SHannes Reinecke	tristate "Tekram DC390(T) and Am53/79C974 SCSI support (new driver)"
11943a7e7be2SHannes Reinecke	depends on PCI && SCSI
11953a7e7be2SHannes Reinecke	select SCSI_SPI_ATTRS
1196a7f7f624SMasahiro Yamada	help
11973a7e7be2SHannes Reinecke	  This driver supports PCI SCSI host adapters based on the Am53C974A
11983a7e7be2SHannes Reinecke	  chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard
11993a7e7be2SHannes Reinecke	  PCscsi/PCnet (Am53/79C974) solutions.
12003a7e7be2SHannes Reinecke	  This is a new implementation base on the generic esp_scsi driver.
12013a7e7be2SHannes Reinecke
12023a7e7be2SHannes Reinecke	  Note that this driver does NOT support Tekram DC390W/U/F, which are
12033a7e7be2SHannes Reinecke	  based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those.
12043a7e7be2SHannes Reinecke
12053a7e7be2SHannes Reinecke	  To compile this driver as a module, choose M here: the
12063a7e7be2SHannes Reinecke	  module will be called am53c974.
12073a7e7be2SHannes Reinecke
12081da177e4SLinus Torvaldsconfig SCSI_NSP32
12091da177e4SLinus Torvalds	tristate "Workbit NinjaSCSI-32Bi/UDE support"
1210b58b2ba3SNiklas Schnelle	depends on PCI && SCSI && !64BIT && HAS_IOPORT
12111da177e4SLinus Torvalds	help
12121da177e4SLinus Torvalds	  This is support for the Workbit NinjaSCSI-32Bi/UDE PCI/Cardbus
12131da177e4SLinus Torvalds	  SCSI host adapter. Please read the SCSI-HOWTO, available from
12141da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
12151da177e4SLinus Torvalds
12161da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
12171da177e4SLinus Torvalds	  module will be called nsp32.
12181da177e4SLinus Torvalds
121948a31030SOndrej Zaryconfig SCSI_WD719X
122048a31030SOndrej Zary	tristate "Western Digital WD7193/7197/7296 support"
122148a31030SOndrej Zary	depends on PCI && SCSI
122248a31030SOndrej Zary	select EEPROM_93CX6
1223a7f7f624SMasahiro Yamada	help
122448a31030SOndrej Zary	  This is a driver for Western Digital WD7193, WD7197 and WD7296 PCI
122548a31030SOndrej Zary	  SCSI controllers (based on WD33C296A chip).
122648a31030SOndrej Zary
12271da177e4SLinus Torvaldsconfig SCSI_DEBUG
12286d6f3807SDouglas Gilbert	tristate "SCSI debugging host and device simulator"
12291da177e4SLinus Torvalds	depends on SCSI
1230d0ace3c5SRandy Dunlap	select CRC_T10DIF
12311da177e4SLinus Torvalds	help
12326d6f3807SDouglas Gilbert	  This pseudo driver simulates one or more hosts (SCSI initiators),
12336d6f3807SDouglas Gilbert	  each with one or more targets, each with one or more logical units.
12346d6f3807SDouglas Gilbert	  Defaults to one of each, creating a small RAM disk device. Many
12356d6f3807SDouglas Gilbert	  parameters found in the /sys/bus/pseudo/drivers/scsi_debug
12366d6f3807SDouglas Gilbert	  directory can be tweaked at run time.
12376d6f3807SDouglas Gilbert	  See <http://sg.danny.cz/sg/sdebug26.html> for more information.
12386d6f3807SDouglas Gilbert	  Mainly used for testing and best as a module. If unsure, say N.
12391da177e4SLinus Torvalds
12401da177e4SLinus Torvaldsconfig SCSI_MESH
12411da177e4SLinus Torvalds	tristate "MESH (Power Mac internal SCSI) support"
12421da177e4SLinus Torvalds	depends on PPC32 && PPC_PMAC && SCSI
12431da177e4SLinus Torvalds	help
12441da177e4SLinus Torvalds	  Many Power Macintoshes and clones have a MESH (Macintosh Enhanced
12451da177e4SLinus Torvalds	  SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the
12461da177e4SLinus Torvalds	  other Power Macintoshes do). Say Y to include support for this SCSI
12471da177e4SLinus Torvalds	  adaptor.
12481da177e4SLinus Torvalds
12491da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
12501da177e4SLinus Torvalds	  module will be called mesh.
12511da177e4SLinus Torvalds
12521da177e4SLinus Torvaldsconfig SCSI_MESH_SYNC_RATE
12531da177e4SLinus Torvalds	int "maximum synchronous transfer rate (MB/s) (0 = async)"
12541da177e4SLinus Torvalds	depends on SCSI_MESH
12551da177e4SLinus Torvalds	default "5"
12561da177e4SLinus Torvalds	help
12571da177e4SLinus Torvalds	  On Power Macintoshes (and clones) where the MESH SCSI bus adaptor
12581da177e4SLinus Torvalds	  drives a bus which is entirely internal to the machine (such as the
12591da177e4SLinus Torvalds	  7500, 7600, 8500, etc.), the MESH is capable of synchronous
12601da177e4SLinus Torvalds	  operation at up to 10 MB/s. On machines where the SCSI bus
12611da177e4SLinus Torvalds	  controlled by the MESH can have external devices connected, it is
12621da177e4SLinus Torvalds	  usually rated at 5 MB/s. 5 is a safe value here unless you know the
12631da177e4SLinus Torvalds	  MESH SCSI bus is internal only; in that case you can say 10. Say 0
12641da177e4SLinus Torvalds	  to disable synchronous operation.
12651da177e4SLinus Torvalds
12661da177e4SLinus Torvaldsconfig SCSI_MESH_RESET_DELAY_MS
12671da177e4SLinus Torvalds	int "initial bus reset delay (ms) (0 = no reset)"
12681da177e4SLinus Torvalds	depends on SCSI_MESH
12691da177e4SLinus Torvalds	default "4000"
12701da177e4SLinus Torvalds
12711da177e4SLinus Torvaldsconfig SCSI_MAC53C94
12721da177e4SLinus Torvalds	tristate "53C94 (Power Mac external SCSI) support"
12731da177e4SLinus Torvalds	depends on PPC32 && PPC_PMAC && SCSI
12741da177e4SLinus Torvalds	help
12751da177e4SLinus Torvalds	  On Power Macintoshes (and clones) with two SCSI buses, the external
12761da177e4SLinus Torvalds	  SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older
12771da177e4SLinus Torvalds	  machines which only have one SCSI bus, such as the 7200, also use
12781da177e4SLinus Torvalds	  the 53C94. Say Y to include support for the 53C94.
12791da177e4SLinus Torvalds
12801da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
12811da177e4SLinus Torvalds	  module will be called mac53c94.
12821da177e4SLinus Torvalds
12831da177e4SLinus Torvaldssource "drivers/scsi/arm/Kconfig"
12841da177e4SLinus Torvalds
12851da177e4SLinus Torvaldsconfig JAZZ_ESP
12861da177e4SLinus Torvalds	bool "MIPS JAZZ FAS216 SCSI support"
12879ddf190aSRandy Dunlap	depends on MACH_JAZZ && SCSI=y
12883a243070SDavid S. Miller	select SCSI_SPI_ATTRS
12891da177e4SLinus Torvalds	help
12901da177e4SLinus Torvalds	  This is the driver for the onboard SCSI host adapter of MIPS Magnum
12911da177e4SLinus Torvalds	  4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
12921da177e4SLinus Torvalds	  systems.
12931da177e4SLinus Torvalds
12941da177e4SLinus Torvaldsconfig A3000_SCSI
12951da177e4SLinus Torvalds	tristate "A3000 WD33C93A support"
12961da177e4SLinus Torvalds	depends on AMIGA && SCSI
12971da177e4SLinus Torvalds	help
12981da177e4SLinus Torvalds	  If you have an Amiga 3000 and have SCSI devices connected to the
12991da177e4SLinus Torvalds	  built-in SCSI controller, say Y. Otherwise, say N.
13001da177e4SLinus Torvalds
13011da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
130290638f99SGeert Uytterhoeven	  module will be called a3000.
13031da177e4SLinus Torvalds
13041da177e4SLinus Torvaldsconfig A2091_SCSI
13051da177e4SLinus Torvalds	tristate "A2091/A590 WD33C93A support"
13061da177e4SLinus Torvalds	depends on ZORRO && SCSI
13071da177e4SLinus Torvalds	help
13081da177e4SLinus Torvalds	  If you have a Commodore A2091 SCSI controller, say Y. Otherwise,
13091da177e4SLinus Torvalds	  say N.
13101da177e4SLinus Torvalds
13111da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
131290638f99SGeert Uytterhoeven	  module will be called a2091.
13131da177e4SLinus Torvalds
13141da177e4SLinus Torvaldsconfig GVP11_SCSI
13151da177e4SLinus Torvalds	tristate "GVP Series II WD33C93A support"
13161da177e4SLinus Torvalds	depends on ZORRO && SCSI
1317a7f7f624SMasahiro Yamada	help
13181da177e4SLinus Torvalds	  If you have a Great Valley Products Series II SCSI controller,
13191da177e4SLinus Torvalds	  answer Y. Also say Y if you have a later model of GVP SCSI
13201da177e4SLinus Torvalds	  controller (such as the GVP A4008 or a Combo board). Otherwise,
13211da177e4SLinus Torvalds	  answer N. This driver does NOT work for the T-Rex series of
13221da177e4SLinus Torvalds	  accelerators from TekMagic and GVP-M.
13231da177e4SLinus Torvalds
13241da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
13251da177e4SLinus Torvalds	  module will be called gvp11.
13261da177e4SLinus Torvalds
1327a16efc1cSKars de Jongconfig SCSI_A4000T
132892f6ed4aSKees Cook	tristate "A4000T NCR53c710 SCSI support"
132992f6ed4aSKees Cook	depends on AMIGA && SCSI
1330a16efc1cSKars de Jong	select SCSI_SPI_ATTRS
13311da177e4SLinus Torvalds	help
1332a16efc1cSKars de Jong	  If you have an Amiga 4000T and have SCSI devices connected to the
1333a16efc1cSKars de Jong	  built-in SCSI controller, say Y. Otherwise, say N.
1334a16efc1cSKars de Jong
1335a16efc1cSKars de Jong	  To compile this driver as a module, choose M here: the
1336a16efc1cSKars de Jong	  module will be called a4000t.
1337a16efc1cSKars de Jong
133845804fbbSKars de Jongconfig SCSI_ZORRO7XX
133992f6ed4aSKees Cook	tristate "Zorro NCR53c710 SCSI support"
134092f6ed4aSKees Cook	depends on ZORRO && SCSI
134145804fbbSKars de Jong	select SCSI_SPI_ATTRS
13421da177e4SLinus Torvalds	help
134345804fbbSKars de Jong	  Support for various NCR53c710-based SCSI controllers on Zorro
134445804fbbSKars de Jong	  expansion boards for the Amiga.
13451da177e4SLinus Torvalds	  This includes:
13461da177e4SLinus Torvalds	    - the Amiga 4091 Zorro III SCSI-2 controller,
13471da177e4SLinus Torvalds	    - the MacroSystem Development's WarpEngine Amiga SCSI-2 controller
13481da177e4SLinus Torvalds	      (info at
13491da177e4SLinus Torvalds	      <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>),
13501da177e4SLinus Torvalds	    - the SCSI controller on the Phase5 Blizzard PowerUP 603e+
13511da177e4SLinus Torvalds	      accelerator card for the Amiga 1200,
13521da177e4SLinus Torvalds	    - the SCSI controller on the GVP Turbo 040/060 accelerator.
13531da177e4SLinus Torvalds
13543109e5aeSMichael Schmitzconfig SCSI_ZORRO_ESP
13553109e5aeSMichael Schmitz	tristate "Zorro ESP SCSI support"
13563109e5aeSMichael Schmitz	depends on ZORRO && SCSI
13573109e5aeSMichael Schmitz	select SCSI_SPI_ATTRS
135853dce332SFinn Thain	select SCSI_ESP_PIO
13593109e5aeSMichael Schmitz	help
13603109e5aeSMichael Schmitz	  Support for various NCR53C9x (ESP) based SCSI controllers on Zorro
13613109e5aeSMichael Schmitz	  expansion boards for the Amiga.
13623109e5aeSMichael Schmitz	  This includes:
13633109e5aeSMichael Schmitz	    - the Phase5 Blizzard 1230 II and IV SCSI controllers,
13643109e5aeSMichael Schmitz	    - the Phase5 Blizzard 2060 SCSI controller,
13653109e5aeSMichael Schmitz	    - the Phase5 Blizzard Cyberstorm and Cyberstorm II SCSI
13663109e5aeSMichael Schmitz	      controllers,
13673109e5aeSMichael Schmitz	    - the Fastlane Zorro III SCSI controller.
13683109e5aeSMichael Schmitz
13691da177e4SLinus Torvaldsconfig ATARI_SCSI
13701da177e4SLinus Torvalds	tristate "Atari native SCSI support"
1371fb810d12SMichael Schmitz	depends on ATARI && SCSI
1372410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
1373a7f7f624SMasahiro Yamada	help
13741da177e4SLinus Torvalds	  If you have an Atari with built-in NCR5380 SCSI controller (TT,
13751da177e4SLinus Torvalds	  Falcon, ...) say Y to get it supported. Of course also, if you have
13761da177e4SLinus Torvalds	  a compatible SCSI controller (e.g. for Medusa).
13771da177e4SLinus Torvalds
137883d2aed4SFinn Thain	  To compile this driver as a module, choose M here: the module will
137983d2aed4SFinn Thain	  be called atari_scsi. If you also enable NVRAM support, the SCSI
138083d2aed4SFinn Thain	  host's ID is taken from the setting in TT RTC NVRAM.
13811da177e4SLinus Torvalds
13821da177e4SLinus Torvalds	  This driver supports both styles of NCR integration into the
13831da177e4SLinus Torvalds	  system: the TT style (separate DMA), and the Falcon style (via
13841da177e4SLinus Torvalds	  ST-DMA, replacing ACSI).  It does NOT support other schemes, like
13851da177e4SLinus Torvalds	  in the Hades (without DMA).
13861da177e4SLinus Torvalds
13871da177e4SLinus Torvaldsconfig MAC_SCSI
13886e9ae6d5SFinn Thain	tristate "Macintosh NCR5380 SCSI"
13892559a1efSFinn Thain	depends on MAC && SCSI
1390410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
13911da177e4SLinus Torvalds	help
13921da177e4SLinus Torvalds	  This is the NCR 5380 SCSI controller included on most of the 68030
13931da177e4SLinus Torvalds	  based Macintoshes.  If you have one of these say Y and read the
13941da177e4SLinus Torvalds	  SCSI-HOWTO, available from
13951da177e4SLinus Torvalds	  <http://www.tldp.org/docs.html#howto>.
13961da177e4SLinus Torvalds
13976fe07aafSFinn Thainconfig SCSI_MAC_ESP
13986fe07aafSFinn Thain	tristate "Macintosh NCR53c9[46] SCSI"
13996fe07aafSFinn Thain	depends on MAC && SCSI
140048fc8de9SGeert Uytterhoeven	select SCSI_SPI_ATTRS
140153dce332SFinn Thain	select SCSI_ESP_PIO
14026fe07aafSFinn Thain	help
14036fe07aafSFinn Thain	  This is the NCR 53c9x SCSI controller found on most of the 68040
14046fe07aafSFinn Thain	  based Macintoshes.
14056fe07aafSFinn Thain
14066fe07aafSFinn Thain	  To compile this driver as a module, choose M here: the module
14076fe07aafSFinn Thain	  will be called mac_esp.
14086fe07aafSFinn Thain
14091da177e4SLinus Torvaldsconfig MVME147_SCSI
14101da177e4SLinus Torvalds	bool "WD33C93 SCSI driver for MVME147"
1411fa53bb65SAl Viro	depends on MVME147 && SCSI=y
1412410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14131da177e4SLinus Torvalds	help
14141da177e4SLinus Torvalds	  Support for the on-board SCSI controller on the Motorola MVME147
14151da177e4SLinus Torvalds	  single-board computer.
14161da177e4SLinus Torvalds
14171da177e4SLinus Torvaldsconfig MVME16x_SCSI
1418506c7bbcSKars de Jong	tristate "NCR53C710 SCSI driver for MVME16x"
1419506c7bbcSKars de Jong	depends on MVME16x && SCSI
1420410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14211da177e4SLinus Torvalds	help
14221da177e4SLinus Torvalds	  The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710
14231da177e4SLinus Torvalds	  SCSI controller chip.  Almost everyone using one of these boards
14241da177e4SLinus Torvalds	  will want to say Y to this question.
14251da177e4SLinus Torvalds
14261da177e4SLinus Torvaldsconfig BVME6000_SCSI
14278276b58aSKars de Jong	tristate "NCR53C710 SCSI driver for BVME6000"
14288276b58aSKars de Jong	depends on BVME6000 && SCSI
1429410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14301da177e4SLinus Torvalds	help
14311da177e4SLinus Torvalds	  The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710
14321da177e4SLinus Torvalds	  SCSI controller chip.  Almost everyone using one of these boards
14331da177e4SLinus Torvalds	  will want to say Y to this question.
14341da177e4SLinus Torvalds
14351da177e4SLinus Torvaldsconfig SUN3_SCSI
14361da177e4SLinus Torvalds	tristate "Sun3 NCR5380 SCSI"
1437c39e7eeeSSam Creasey	depends on SUN3 && SCSI
1438410ca5c7SMatthew Wilcox	select SCSI_SPI_ATTRS
14391da177e4SLinus Torvalds	help
14401da177e4SLinus Torvalds	  This option will enable support for the OBIO (onboard io) NCR5380
14411da177e4SLinus Torvalds	  SCSI controller found in the Sun 3/50 and 3/60, as well as for
14421da177e4SLinus Torvalds	  "Sun3" type VME scsi controllers also based on the NCR5380.
14431da177e4SLinus Torvalds	  General Linux information on the Sun 3 series (now discontinued)
14441da177e4SLinus Torvalds	  is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
14451da177e4SLinus Torvalds
14461da177e4SLinus Torvaldsconfig SUN3X_ESP
14471da177e4SLinus Torvalds	bool "Sun3x ESP SCSI"
1448fa53bb65SAl Viro	depends on SUN3X && SCSI=y
14490bb67f18SThomas Bogendoerfer	select SCSI_SPI_ATTRS
14501da177e4SLinus Torvalds	help
14511da177e4SLinus Torvalds	  The ESP was an on-board SCSI controller used on Sun 3/80
14521da177e4SLinus Torvalds	  machines.  Say Y here to compile in support for it.
14531da177e4SLinus Torvalds
14541da177e4SLinus Torvaldsconfig SCSI_SUNESP
14551da177e4SLinus Torvalds	tristate "Sparc ESP Scsi Driver"
14561da177e4SLinus Torvalds	depends on SBUS && SCSI
14573a243070SDavid S. Miller	select SCSI_SPI_ATTRS
14581da177e4SLinus Torvalds	help
14591da177e4SLinus Torvalds	  This is the driver for the Sun ESP SCSI host adapter. The ESP
1460dbfe54a9SFrans Pop	  chipset is present in most SPARC SBUS-based computers and
1461dbfe54a9SFrans Pop	  supports the Emulex family of ESP SCSI chips (esp100, esp100A,
1462dbfe54a9SFrans Pop	  esp236, fas101, fas236) as well as the Qlogic fas366 SCSI chip.
14631da177e4SLinus Torvalds
14641da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1465dbfe54a9SFrans Pop	  module will be called sun_esp.
14661da177e4SLinus Torvalds
14671da177e4SLinus Torvaldsconfig ZFCP
1468c06de6e2SBenjamin Block	tristate "FCP host bus adapter driver for IBM mainframes"
1469347a8dc3SMartin Schwidefsky	depends on S390 && QDIO && SCSI
14706a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
14711da177e4SLinus Torvalds	help
1472c06de6e2SBenjamin Block	  If you want to access SCSI devices attached to your IBM mainframe by
1473c06de6e2SBenjamin Block	  means of Fibre Channel Protocol host bus adapters say Y.
1474c06de6e2SBenjamin Block
1475c06de6e2SBenjamin Block	  Supported HBAs include different models of the FICON Express and FCP
1476c06de6e2SBenjamin Block	  Express I/O cards.
1477c06de6e2SBenjamin Block
1478c06de6e2SBenjamin Block	  For a more complete list, and for more details about setup and
1479c06de6e2SBenjamin Block	  operation refer to the IBM publication "Device Drivers, Features, and
1480c06de6e2SBenjamin Block	  Commands", SC33-8411.
14811da177e4SLinus Torvalds
14821da177e4SLinus Torvalds          This driver is also available as a module. This module will be
14831da177e4SLinus Torvalds          called zfcp. If you want to compile it as a module, say M here
1484cd238effSMauro Carvalho Chehab          and read <file:Documentation/kbuild/modules.rst>.
14851da177e4SLinus Torvalds
148689a36810SAnil Ravindranathconfig SCSI_PMCRAID
148789a36810SAnil Ravindranath	tristate "PMC SIERRA Linux MaxRAID adapter support"
1488b2045240SRandy Dunlap	depends on PCI && SCSI && NET
1489ed4414ceSBart Van Assche	select SGL_ALLOC
1490a7f7f624SMasahiro Yamada	help
149189a36810SAnil Ravindranath	  This driver supports the PMC SIERRA MaxRAID adapters.
149289a36810SAnil Ravindranath
1493dbf9bfe6Sjack wangconfig SCSI_PM8001
1494dbf9bfe6Sjack wang	tristate "PMC-Sierra SPC 8001 SAS/SATA Based Host Adapter driver"
1495dbf9bfe6Sjack wang	depends on PCI && SCSI
1496dbf9bfe6Sjack wang	select SCSI_SAS_LIBSAS
1497dbf9bfe6Sjack wang	help
1498dbf9bfe6Sjack wang	  This driver supports PMC-Sierra PCIE SAS/SATA 8x6G SPC 8001 chip
1499dbf9bfe6Sjack wang	  based host adapters.
1500dbf9bfe6Sjack wang
15017725ccfdSJing Huangconfig SCSI_BFA_FC
15027725ccfdSJing Huang	tristate "Brocade BFA Fibre Channel Support"
15037725ccfdSJing Huang	depends on PCI && SCSI
15046a38792cSRandy Dunlap	depends on SCSI_FC_ATTRS
15057725ccfdSJing Huang	help
15067725ccfdSJing Huang	  This bfa driver supports all Brocade PCIe FC/FCOE host adapters.
15077725ccfdSJing Huang
15087725ccfdSJing Huang	  To compile this driver as a module, choose M here. The module will
15097725ccfdSJing Huang	  be called bfa.
15107725ccfdSJing Huang
15114fe74b1cSPaolo Bonziniconfig SCSI_VIRTIO
151292f6ed4aSKees Cook	tristate "virtio-scsi support"
151392f6ed4aSKees Cook	depends on VIRTIO
15144fe74b1cSPaolo Bonzini	help
15154fe74b1cSPaolo Bonzini          This is the virtual HBA driver for virtio.  If the kernel will
15164fe74b1cSPaolo Bonzini          be used in a virtual machine, say Y or M.
15174fe74b1cSPaolo Bonzini
1518a3667aaeSNaresh Kumar Innasource "drivers/scsi/csiostor/Kconfig"
15194fe74b1cSPaolo Bonzini
15201da177e4SLinus Torvaldssource "drivers/scsi/pcmcia/Kconfig"
15211da177e4SLinus Torvalds
1522e70bdd81SArnd Bergmannendif # SCSI_LOWLEVEL
1523e70bdd81SArnd Bergmann
1524a6a8d9f8SChandra Seetharamansource "drivers/scsi/device_handler/Kconfig"
1525a6a8d9f8SChandra Seetharaman
15261da177e4SLinus Torvaldsendmenu
1527