Kconfig 51 KB

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