Kconfig 51 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527
  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 CRC32
  252. select CRYPTO
  253. select CRYPTO_MD5
  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. config SGIWD93_SCSI
  280. tristate "SGI WD93C93 SCSI Driver"
  281. depends on SGI_HAS_WD93 && SCSI
  282. help
  283. If you have a Western Digital WD93 SCSI controller on
  284. an SGI MIPS system, say Y. Otherwise, say N.
  285. config BLK_DEV_3W_XXXX_RAID
  286. tristate "3ware 5/6/7/8xxx ATA-RAID support"
  287. depends on PCI && HAS_IOPORT && SCSI
  288. help
  289. 3ware is the only hardware ATA-Raid product in Linux to date.
  290. This card is 2,4, or 8 channel master mode support only.
  291. SCSI support required!!!
  292. <http://www.3ware.com/>
  293. Please read the comments at the top of
  294. <file:drivers/scsi/3w-xxxx.c>.
  295. config SCSI_HPSA
  296. tristate "HP Smart Array SCSI driver"
  297. depends on PCI && SCSI
  298. select CHECK_SIGNATURE
  299. select SCSI_SAS_ATTRS
  300. help
  301. This driver supports HP Smart Array Controllers (circa 2009).
  302. It is a SCSI alternative to the cciss driver, which is a block
  303. driver. Anyone wishing to use HP Smart Array controllers who
  304. would prefer the devices be presented to linux as SCSI devices,
  305. rather than as generic block devices should say Y here.
  306. config SCSI_3W_9XXX
  307. tristate "3ware 9xxx SATA-RAID support"
  308. depends on PCI && SCSI
  309. help
  310. This driver supports the 9000 series 3ware SATA-RAID cards.
  311. <http://www.amcc.com>
  312. Please read the comments at the top of
  313. <file:drivers/scsi/3w-9xxx.c>.
  314. config SCSI_3W_SAS
  315. tristate "3ware 97xx SAS/SATA-RAID support"
  316. depends on PCI && SCSI
  317. help
  318. This driver supports the LSI 3ware 9750 6Gb/s SAS/SATA-RAID cards.
  319. <http://www.lsi.com>
  320. Please read the comments at the top of
  321. <file:drivers/scsi/3w-sas.c>.
  322. config SCSI_ACARD
  323. tristate "ACARD SCSI support"
  324. depends on PCI && HAS_IOPORT && SCSI
  325. help
  326. This driver supports the ACARD SCSI host adapter.
  327. Support Chip <ATP870 ATP876 ATP880 ATP885>
  328. To compile this driver as a module, choose M here: the
  329. module will be called atp870u.
  330. config SCSI_AHA152X
  331. tristate "Adaptec AHA152X/2825 support"
  332. depends on ISA && SCSI
  333. depends on !HIGHMEM
  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_VMBUS
  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. depends on !HIGHMEM
  663. help
  664. This driver supports older versions of IOMEGA's parallel port ZIP
  665. drive (a 100 MB removable media device).
  666. Note that you can say N here if you have the SCSI version of the ZIP
  667. drive: it will be supported automatically if you said Y to the
  668. generic "SCSI disk support", above.
  669. If you have the ZIP Plus drive or a more recent parallel port ZIP
  670. drive (if the supplied cable with the drive is labeled "AutoDetect")
  671. then you should say N here and Y to "IOMEGA parallel port (imm -
  672. newer drives)", below.
  673. For more information about this driver and how to use it you should
  674. read the file <file:Documentation/scsi/ppa.rst>. You should also read
  675. the SCSI-HOWTO, which is available from
  676. <http://www.tldp.org/docs.html#howto>. If you use this driver,
  677. you will still be able to use the parallel port for other tasks,
  678. such as a printer; it is safe to compile both drivers into the
  679. kernel.
  680. To compile this driver as a module, choose M here: the
  681. module will be called ppa.
  682. config SCSI_IMM
  683. tristate "IOMEGA parallel port (imm - newer drives)"
  684. depends on SCSI && PARPORT_PC
  685. depends on !HIGHMEM
  686. help
  687. This driver supports newer versions of IOMEGA's parallel port ZIP
  688. drive (a 100 MB removable media device).
  689. Note that you can say N here if you have the SCSI version of the ZIP
  690. drive: it will be supported automatically if you said Y to the
  691. generic "SCSI disk support", above.
  692. If you have the ZIP Plus drive or a more recent parallel port ZIP
  693. drive (if the supplied cable with the drive is labeled "AutoDetect")
  694. then you should say Y here; if you have an older ZIP drive, say N
  695. here and Y to "IOMEGA Parallel Port (ppa - older drives)", above.
  696. For more information about this driver and how to use it you should
  697. read the file <file:Documentation/scsi/ppa.rst>. You should also read
  698. the SCSI-HOWTO, which is available from
  699. <http://www.tldp.org/docs.html#howto>. If you use this driver,
  700. you will still be able to use the parallel port for other tasks,
  701. such as a printer; it is safe to compile both drivers into the
  702. kernel.
  703. To compile this driver as a module, choose M here: the
  704. module will be called imm.
  705. config SCSI_IZIP_SLOW_CTR
  706. bool "ppa/imm option - Assume slow parport control register"
  707. depends on SCSI_PPA || SCSI_IMM
  708. help
  709. Some parallel ports are known to have excessive delays between
  710. changing the parallel port control register and good data being
  711. available on the parallel port data/status register. This option
  712. forces a small delay (1.0 usec to be exact) after changing the
  713. control register to let things settle out. Enabling this option may
  714. result in a big drop in performance but some very old parallel ports
  715. (found in 386 vintage machines) will not work properly.
  716. Generally, saying N is fine.
  717. config SCSI_LASI700
  718. tristate "HP Lasi SCSI support for 53c700/710"
  719. depends on GSC && SCSI
  720. select SCSI_SPI_ATTRS
  721. help
  722. This is a driver for the SCSI controller in the Lasi chip found in
  723. many PA-RISC workstations & servers. If you do not know whether you
  724. have a Lasi chip, it is safe to say "Y" here.
  725. config SCSI_SNI_53C710
  726. tristate "SNI RM SCSI support for 53c710"
  727. depends on SNI_RM && SCSI
  728. select SCSI_SPI_ATTRS
  729. select 53C700_LE_ON_BE
  730. help
  731. This is a driver for the onboard SCSI controller found in older
  732. SNI RM workstations & servers.
  733. config 53C700_LE_ON_BE
  734. bool
  735. depends on SCSI_LASI700 || SCSI_SNI_53C710
  736. default y
  737. config SCSI_STEX
  738. tristate "Promise SuperTrak EX Series support"
  739. depends on PCI && SCSI
  740. help
  741. This driver supports Promise SuperTrak EX series storage controllers.
  742. Promise provides Linux RAID configuration utility for these
  743. controllers. Please visit <http://www.promise.com> to download.
  744. To compile this driver as a module, choose M here: the
  745. module will be called stex.
  746. config 53C700_BE_BUS
  747. bool
  748. depends on SCSI_A4000T || SCSI_ZORRO7XX || MVME16x_SCSI || BVME6000_SCSI
  749. default y
  750. config SCSI_SYM53C8XX_2
  751. tristate "SYM53C8XX Version 2 SCSI support"
  752. depends on PCI && SCSI
  753. select SCSI_SPI_ATTRS
  754. help
  755. This driver supports the whole NCR53C8XX/SYM53C8XX family of
  756. PCI-SCSI controllers. It also supports the subset of LSI53C10XX
  757. Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
  758. language. It does not support LSI53C10XX Ultra-320 PCI-X SCSI
  759. controllers; you need to use the Fusion MPT driver for that.
  760. Please read <file:Documentation/scsi/sym53c8xx_2.rst> for more
  761. information.
  762. config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
  763. int "DMA addressing mode"
  764. depends on SCSI_SYM53C8XX_2
  765. default "1"
  766. help
  767. This option only applies to PCI-SCSI chips that are PCI DAC
  768. capable (875A, 895A, 896, 1010-33, 1010-66, 1000).
  769. When set to 0, the driver will program the chip to only perform
  770. 32-bit DMA. When set to 1, the chip will be able to perform DMA
  771. to addresses up to 1TB. When set to 2, the driver supports the
  772. full 64-bit DMA address range, but can only address 16 segments
  773. of 4 GB each. This limits the total addressable range to 64 GB.
  774. Most machines with less than 4GB of memory should use a setting
  775. of 0 for best performance. If your machine has 4GB of memory
  776. or more, you should set this option to 1 (the default).
  777. The still experimental value 2 (64 bit DMA addressing with 16
  778. x 4GB segments limitation) can be used on systems that require
  779. PCI address bits past bit 39 to be set for the addressing of
  780. memory using PCI DAC cycles.
  781. config SCSI_SYM53C8XX_DEFAULT_TAGS
  782. int "Default tagged command queue depth"
  783. depends on SCSI_SYM53C8XX_2
  784. default "16"
  785. help
  786. This is the default value of the command queue depth the
  787. driver will announce to the generic SCSI layer for devices
  788. that support tagged command queueing. This value can be changed
  789. from the boot command line. This is a soft limit that cannot
  790. exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.
  791. config SCSI_SYM53C8XX_MAX_TAGS
  792. int "Maximum number of queued commands"
  793. depends on SCSI_SYM53C8XX_2
  794. default "64"
  795. help
  796. This option allows you to specify the maximum number of commands
  797. that can be queued to any device, when tagged command queuing is
  798. possible. The driver supports up to 256 queued commands per device.
  799. This value is used as a compiled-in hard limit.
  800. config SCSI_SYM53C8XX_MMIO
  801. bool "Use memory mapped IO"
  802. depends on SCSI_SYM53C8XX_2
  803. default y
  804. help
  805. Memory mapped IO is faster than Port IO. Most people should
  806. answer Y here, but some machines may have problems. If you have
  807. to answer N here, please report the problem to the maintainer.
  808. config SCSI_IPR
  809. tristate "IBM Power Linux RAID adapter support"
  810. depends on PCI && SCSI
  811. select FW_LOADER
  812. select IRQ_POLL
  813. select SGL_ALLOC
  814. help
  815. This driver supports the IBM Power Linux family RAID adapters.
  816. This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
  817. as IBM iSeries 5702, 5703, 5709, and 570A.
  818. config SCSI_IPR_TRACE
  819. bool "enable driver internal trace"
  820. depends on SCSI_IPR
  821. default y
  822. help
  823. If you say Y here, the driver will trace all commands issued
  824. to the adapter. Performance impact is minimal. Trace can be
  825. dumped using /sys/bus/class/scsi_host/hostXX/trace.
  826. config SCSI_IPR_DUMP
  827. bool "enable adapter dump support"
  828. depends on SCSI_IPR
  829. default y
  830. help
  831. If you say Y here, the driver will support adapter crash dump.
  832. If you enable this support, the iprdump daemon can be used
  833. to capture adapter failure analysis information.
  834. config SCSI_ZALON
  835. tristate "Zalon SCSI support"
  836. depends on GSC && SCSI
  837. select SCSI_SPI_ATTRS
  838. help
  839. The Zalon is a GSC/HSC bus interface chip that sits between the
  840. PA-RISC processor and the NCR 53c720 SCSI controller on C100,
  841. C110, J200, J210 and some D, K & R-class machines. It's also
  842. used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
  843. Say Y here if you have one of these machines or cards.
  844. config SCSI_NCR53C8XX_DEFAULT_TAGS
  845. int "default tagged command queue depth"
  846. depends on SCSI_ZALON
  847. default "8"
  848. help
  849. "Tagged command queuing" is a feature of SCSI-2 which improves
  850. performance: the host adapter can send several SCSI commands to a
  851. device's queue even if previous commands haven't finished yet.
  852. Because the device is intelligent, it can optimize its operations
  853. (like head positioning) based on its own request queue. Some SCSI
  854. devices don't implement this properly; if you want to disable this
  855. feature, enter 0 or 1 here (it doesn't matter which).
  856. The default value is 8 and should be supported by most hard disks.
  857. This value can be overridden from the boot command line using the
  858. 'tags' option as follows (example):
  859. 'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
  860. 4, set queue depth to 16 for target 2 and target 3 on controller 0
  861. and set queue depth to 10 for target 0 / lun 2 on controller 1.
  862. The normal answer therefore is to go with the default 8 and to use
  863. a boot command line option for devices that need to use a different
  864. command queue depth.
  865. There is no safe option other than using good SCSI devices.
  866. config SCSI_NCR53C8XX_MAX_TAGS
  867. int "maximum number of queued commands"
  868. depends on SCSI_ZALON
  869. default "32"
  870. help
  871. This option allows you to specify the maximum number of commands
  872. that can be queued to any device, when tagged command queuing is
  873. possible. The default value is 32. Minimum is 2, maximum is 64.
  874. Modern hard disks are able to support 64 tags and even more, but
  875. do not seem to be faster when more than 32 tags are being used.
  876. So, the normal answer here is to go with the default value 32 unless
  877. you are using very large hard disks with large cache (>= 1 MB) that
  878. are able to take advantage of more than 32 tagged commands.
  879. There is no safe option and the default answer is recommended.
  880. config SCSI_NCR53C8XX_SYNC
  881. int "synchronous transfers frequency in MHz"
  882. depends on SCSI_ZALON
  883. default "20"
  884. help
  885. The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
  886. rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80. The numbers
  887. are respectively the maximum data transfer rates in mega-transfers
  888. per second for each class. For example, a FAST-20 Wide 16 device is
  889. able to transfer data at 20 million 16 bit packets per second for a
  890. total rate of 40 MB/s.
  891. You may specify 0 if you want to only use asynchronous data
  892. transfers. This is the safest and slowest option. Otherwise, specify
  893. a value between 5 and 80, depending on the capability of your SCSI
  894. controller. The higher the number, the faster the data transfer.
  895. Note that 80 should normally be ok since the driver decreases the
  896. value automatically according to the controller's capabilities.
  897. Your answer to this question is ignored for controllers with NVRAM,
  898. since the driver will get this information from the user set-up. It
  899. also can be overridden using a boot setup option, as follows
  900. (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
  901. for FAST-20 synchronous data transfer (20 mega-transfers per
  902. second).
  903. The normal answer therefore is not to go with the default but to
  904. select the maximum value 80 allowing the driver to use the maximum
  905. value supported by each controller. If this causes problems with
  906. your SCSI devices, you should come back and decrease the value.
  907. There is no safe option other than using good cabling, right
  908. terminations and SCSI conformant devices.
  909. config SCSI_NCR53C8XX_NO_DISCONNECT
  910. bool "not allow targets to disconnect"
  911. depends on SCSI_ZALON && SCSI_NCR53C8XX_DEFAULT_TAGS=0
  912. help
  913. This option is only provided for safety if you suspect some SCSI
  914. device of yours to not support properly the target-disconnect
  915. feature. In that case, you would say Y here. In general however, to
  916. not allow targets to disconnect is not reasonable if there is more
  917. than 1 device on a SCSI bus. The normal answer therefore is N.
  918. config SCSI_QLOGIC_FAS
  919. tristate "Qlogic FAS SCSI support"
  920. depends on ISA && SCSI
  921. help
  922. This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic
  923. FastSCSI! cards as well as any other card based on the FASXX chip
  924. (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
  925. This driver does NOT support the PCI versions of these cards. The
  926. PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP
  927. SCSI support"), below.
  928. Information about this driver is contained in
  929. <file:Documentation/scsi/qlogicfas.rst>. You should also read the
  930. SCSI-HOWTO, available from
  931. <http://www.tldp.org/docs.html#howto>.
  932. To compile this driver as a module, choose M here: the
  933. module will be called qlogicfas.
  934. config SCSI_QLOGIC_1280
  935. tristate "Qlogic QLA 1240/1x80/1x160 SCSI support"
  936. depends on PCI && SCSI
  937. help
  938. Say Y if you have a QLogic ISP1240/1x80/1x160 SCSI host adapter.
  939. To compile this driver as a module, choose M here: the
  940. module will be called qla1280.
  941. config SCSI_QLOGICPTI
  942. tristate "PTI Qlogic, ISP Driver"
  943. depends on SBUS && SCSI
  944. help
  945. This driver supports SBUS SCSI controllers from PTI or QLogic. These
  946. controllers are known under Solaris as qpti and in the openprom as
  947. PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
  948. driven by a different driver.
  949. To compile this driver as a module, choose M here: the
  950. module will be called qlogicpti.
  951. source "drivers/scsi/qla2xxx/Kconfig"
  952. source "drivers/scsi/qla4xxx/Kconfig"
  953. source "drivers/scsi/qedi/Kconfig"
  954. source "drivers/scsi/qedf/Kconfig"
  955. config SCSI_LPFC
  956. tristate "Emulex LightPulse Fibre Channel Support"
  957. depends on PCI && SCSI
  958. depends on CPU_FREQ
  959. depends on SCSI_FC_ATTRS
  960. depends on NVME_TARGET_FC || NVME_TARGET_FC=n
  961. depends on NVME_FC || NVME_FC=n
  962. select CRC_T10DIF
  963. select IRQ_POLL
  964. help
  965. This lpfc driver supports the Emulex LightPulse
  966. Family of Fibre Channel PCI host adapters.
  967. config SCSI_LPFC_DEBUG_FS
  968. bool "Emulex LightPulse Fibre Channel debugfs Support"
  969. depends on SCSI_LPFC && DEBUG_FS
  970. help
  971. This makes debugging information from the lpfc driver
  972. available via the debugfs filesystem.
  973. source "drivers/scsi/elx/Kconfig"
  974. config SCSI_SIM710
  975. tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
  976. depends on EISA && SCSI
  977. select SCSI_SPI_ATTRS
  978. help
  979. This driver is for NCR53c710 based SCSI host adapters.
  980. It currently supports Compaq EISA cards.
  981. config SCSI_DC395x
  982. tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support"
  983. depends on PCI && HAS_IOPORT && SCSI
  984. select SCSI_SPI_ATTRS
  985. help
  986. This driver supports PCI SCSI host adapters based on the ASIC
  987. TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants.
  988. This driver works, but is still in experimental status. So better
  989. have a bootable disk and a backup in case of emergency.
  990. Documentation can be found in <file:Documentation/scsi/dc395x.rst>.
  991. To compile this driver as a module, choose M here: the
  992. module will be called dc395x.
  993. config SCSI_AM53C974
  994. tristate "Tekram DC390(T) and Am53/79C974 SCSI support (new driver)"
  995. depends on PCI && SCSI
  996. select SCSI_SPI_ATTRS
  997. help
  998. This driver supports PCI SCSI host adapters based on the Am53C974A
  999. chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard
  1000. PCscsi/PCnet (Am53/79C974) solutions.
  1001. This is a new implementation base on the generic esp_scsi driver.
  1002. Note that this driver does NOT support Tekram DC390W/U/F, which are
  1003. based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those.
  1004. To compile this driver as a module, choose M here: the
  1005. module will be called am53c974.
  1006. config SCSI_NSP32
  1007. tristate "Workbit NinjaSCSI-32Bi/UDE support"
  1008. depends on PCI && SCSI && !64BIT && HAS_IOPORT
  1009. help
  1010. This is support for the Workbit NinjaSCSI-32Bi/UDE PCI/Cardbus
  1011. SCSI host adapter. Please read the SCSI-HOWTO, available from
  1012. <http://www.tldp.org/docs.html#howto>.
  1013. To compile this driver as a module, choose M here: the
  1014. module will be called nsp32.
  1015. config SCSI_WD719X
  1016. tristate "Western Digital WD7193/7197/7296 support"
  1017. depends on PCI && SCSI
  1018. select EEPROM_93CX6
  1019. help
  1020. This is a driver for Western Digital WD7193, WD7197 and WD7296 PCI
  1021. SCSI controllers (based on WD33C296A chip).
  1022. config SCSI_DEBUG
  1023. tristate "SCSI debugging host and device simulator"
  1024. depends on SCSI
  1025. select CRC_T10DIF
  1026. help
  1027. This pseudo driver simulates one or more hosts (SCSI initiators),
  1028. each with one or more targets, each with one or more logical units.
  1029. Defaults to one of each, creating a small RAM disk device. Many
  1030. parameters found in the /sys/bus/pseudo/drivers/scsi_debug
  1031. directory can be tweaked at run time.
  1032. See <http://sg.danny.cz/sg/sdebug26.html> for more information.
  1033. Mainly used for testing and best as a module. If unsure, say N.
  1034. config SCSI_MESH
  1035. tristate "MESH (Power Mac internal SCSI) support"
  1036. depends on PPC32 && PPC_PMAC && SCSI
  1037. help
  1038. Many Power Macintoshes and clones have a MESH (Macintosh Enhanced
  1039. SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the
  1040. other Power Macintoshes do). Say Y to include support for this SCSI
  1041. adaptor.
  1042. To compile this driver as a module, choose M here: the
  1043. module will be called mesh.
  1044. config SCSI_MESH_SYNC_RATE
  1045. int "maximum synchronous transfer rate (MB/s) (0 = async)"
  1046. depends on SCSI_MESH
  1047. default "5"
  1048. help
  1049. On Power Macintoshes (and clones) where the MESH SCSI bus adaptor
  1050. drives a bus which is entirely internal to the machine (such as the
  1051. 7500, 7600, 8500, etc.), the MESH is capable of synchronous
  1052. operation at up to 10 MB/s. On machines where the SCSI bus
  1053. controlled by the MESH can have external devices connected, it is
  1054. usually rated at 5 MB/s. 5 is a safe value here unless you know the
  1055. MESH SCSI bus is internal only; in that case you can say 10. Say 0
  1056. to disable synchronous operation.
  1057. config SCSI_MESH_RESET_DELAY_MS
  1058. int "initial bus reset delay (ms) (0 = no reset)"
  1059. depends on SCSI_MESH
  1060. default "4000"
  1061. config SCSI_MAC53C94
  1062. tristate "53C94 (Power Mac external SCSI) support"
  1063. depends on PPC32 && PPC_PMAC && SCSI
  1064. help
  1065. On Power Macintoshes (and clones) with two SCSI buses, the external
  1066. SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older
  1067. machines which only have one SCSI bus, such as the 7200, also use
  1068. the 53C94. Say Y to include support for the 53C94.
  1069. To compile this driver as a module, choose M here: the
  1070. module will be called mac53c94.
  1071. source "drivers/scsi/arm/Kconfig"
  1072. config JAZZ_ESP
  1073. bool "MIPS JAZZ FAS216 SCSI support"
  1074. depends on MACH_JAZZ && SCSI=y
  1075. select SCSI_SPI_ATTRS
  1076. help
  1077. This is the driver for the onboard SCSI host adapter of MIPS Magnum
  1078. 4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
  1079. systems.
  1080. config A3000_SCSI
  1081. tristate "A3000 WD33C93A support"
  1082. depends on AMIGA && SCSI
  1083. help
  1084. If you have an Amiga 3000 and have SCSI devices connected to the
  1085. built-in SCSI controller, say Y. Otherwise, say N.
  1086. To compile this driver as a module, choose M here: the
  1087. module will be called a3000.
  1088. config A2091_SCSI
  1089. tristate "A2091/A590 WD33C93A support"
  1090. depends on ZORRO && SCSI
  1091. help
  1092. If you have a Commodore A2091 SCSI controller, say Y. Otherwise,
  1093. say N.
  1094. To compile this driver as a module, choose M here: the
  1095. module will be called a2091.
  1096. config GVP11_SCSI
  1097. tristate "GVP Series II WD33C93A support"
  1098. depends on ZORRO && SCSI
  1099. help
  1100. If you have a Great Valley Products Series II SCSI controller,
  1101. answer Y. Also say Y if you have a later model of GVP SCSI
  1102. controller (such as the GVP A4008 or a Combo board). Otherwise,
  1103. answer N. This driver does NOT work for the T-Rex series of
  1104. accelerators from TekMagic and GVP-M.
  1105. To compile this driver as a module, choose M here: the
  1106. module will be called gvp11.
  1107. config SCSI_A4000T
  1108. tristate "A4000T NCR53c710 SCSI support"
  1109. depends on AMIGA && SCSI
  1110. select SCSI_SPI_ATTRS
  1111. help
  1112. If you have an Amiga 4000T and have SCSI devices connected to the
  1113. built-in SCSI controller, say Y. Otherwise, say N.
  1114. To compile this driver as a module, choose M here: the
  1115. module will be called a4000t.
  1116. config SCSI_ZORRO7XX
  1117. tristate "Zorro NCR53c710 SCSI support"
  1118. depends on ZORRO && SCSI
  1119. select SCSI_SPI_ATTRS
  1120. help
  1121. Support for various NCR53c710-based SCSI controllers on Zorro
  1122. expansion boards for the Amiga.
  1123. This includes:
  1124. - the Amiga 4091 Zorro III SCSI-2 controller,
  1125. - the MacroSystem Development's WarpEngine Amiga SCSI-2 controller
  1126. (info at
  1127. <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>),
  1128. - the SCSI controller on the Phase5 Blizzard PowerUP 603e+
  1129. accelerator card for the Amiga 1200,
  1130. - the SCSI controller on the GVP Turbo 040/060 accelerator.
  1131. config SCSI_ZORRO_ESP
  1132. tristate "Zorro ESP SCSI support"
  1133. depends on ZORRO && SCSI
  1134. select SCSI_SPI_ATTRS
  1135. select SCSI_ESP_PIO
  1136. help
  1137. Support for various NCR53C9x (ESP) based SCSI controllers on Zorro
  1138. expansion boards for the Amiga.
  1139. This includes:
  1140. - the Phase5 Blizzard 1230 II and IV SCSI controllers,
  1141. - the Phase5 Blizzard 2060 SCSI controller,
  1142. - the Phase5 Blizzard Cyberstorm and Cyberstorm II SCSI
  1143. controllers,
  1144. - the Fastlane Zorro III SCSI controller.
  1145. config ATARI_SCSI
  1146. tristate "Atari native SCSI support"
  1147. depends on ATARI && SCSI
  1148. select SCSI_SPI_ATTRS
  1149. help
  1150. If you have an Atari with built-in NCR5380 SCSI controller (TT,
  1151. Falcon, ...) say Y to get it supported. Of course also, if you have
  1152. a compatible SCSI controller (e.g. for Medusa).
  1153. To compile this driver as a module, choose M here: the module will
  1154. be called atari_scsi. If you also enable NVRAM support, the SCSI
  1155. host's ID is taken from the setting in TT RTC NVRAM.
  1156. This driver supports both styles of NCR integration into the
  1157. system: the TT style (separate DMA), and the Falcon style (via
  1158. ST-DMA, replacing ACSI). It does NOT support other schemes, like
  1159. in the Hades (without DMA).
  1160. config MAC_SCSI
  1161. tristate "Macintosh NCR5380 SCSI"
  1162. depends on MAC && SCSI
  1163. select SCSI_SPI_ATTRS
  1164. help
  1165. This is the NCR 5380 SCSI controller included on most of the 68030
  1166. based Macintoshes. If you have one of these say Y and read the
  1167. SCSI-HOWTO, available from
  1168. <http://www.tldp.org/docs.html#howto>.
  1169. config SCSI_MAC_ESP
  1170. tristate "Macintosh NCR53c9[46] SCSI"
  1171. depends on MAC && SCSI
  1172. select SCSI_SPI_ATTRS
  1173. select SCSI_ESP_PIO
  1174. help
  1175. This is the NCR 53c9x SCSI controller found on most of the 68040
  1176. based Macintoshes.
  1177. To compile this driver as a module, choose M here: the module
  1178. will be called mac_esp.
  1179. config MVME147_SCSI
  1180. bool "WD33C93 SCSI driver for MVME147"
  1181. depends on MVME147 && SCSI=y
  1182. select SCSI_SPI_ATTRS
  1183. help
  1184. Support for the on-board SCSI controller on the Motorola MVME147
  1185. single-board computer.
  1186. config MVME16x_SCSI
  1187. tristate "NCR53C710 SCSI driver for MVME16x"
  1188. depends on MVME16x && SCSI
  1189. select SCSI_SPI_ATTRS
  1190. help
  1191. The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710
  1192. SCSI controller chip. Almost everyone using one of these boards
  1193. will want to say Y to this question.
  1194. config BVME6000_SCSI
  1195. tristate "NCR53C710 SCSI driver for BVME6000"
  1196. depends on BVME6000 && SCSI
  1197. select SCSI_SPI_ATTRS
  1198. help
  1199. The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710
  1200. SCSI controller chip. Almost everyone using one of these boards
  1201. will want to say Y to this question.
  1202. config SUN3_SCSI
  1203. tristate "Sun3 NCR5380 SCSI"
  1204. depends on SUN3 && SCSI
  1205. select SCSI_SPI_ATTRS
  1206. help
  1207. This option will enable support for the OBIO (onboard io) NCR5380
  1208. SCSI controller found in the Sun 3/50 and 3/60, as well as for
  1209. "Sun3" type VME scsi controllers also based on the NCR5380.
  1210. General Linux information on the Sun 3 series (now discontinued)
  1211. is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
  1212. config SUN3X_ESP
  1213. bool "Sun3x ESP SCSI"
  1214. depends on SUN3X && SCSI=y
  1215. select SCSI_SPI_ATTRS
  1216. help
  1217. The ESP was an on-board SCSI controller used on Sun 3/80
  1218. machines. Say Y here to compile in support for it.
  1219. config SCSI_SUNESP
  1220. tristate "Sparc ESP Scsi Driver"
  1221. depends on SBUS && SCSI
  1222. select SCSI_SPI_ATTRS
  1223. help
  1224. This is the driver for the Sun ESP SCSI host adapter. The ESP
  1225. chipset is present in most SPARC SBUS-based computers and
  1226. supports the Emulex family of ESP SCSI chips (esp100, esp100A,
  1227. esp236, fas101, fas236) as well as the Qlogic fas366 SCSI chip.
  1228. To compile this driver as a module, choose M here: the
  1229. module will be called sun_esp.
  1230. config ZFCP
  1231. tristate "FCP host bus adapter driver for IBM mainframes"
  1232. depends on S390 && QDIO && SCSI
  1233. depends on SCSI_FC_ATTRS
  1234. help
  1235. If you want to access SCSI devices attached to your IBM mainframe by
  1236. means of Fibre Channel Protocol host bus adapters say Y.
  1237. Supported HBAs include different models of the FICON Express and FCP
  1238. Express I/O cards.
  1239. For a more complete list, and for more details about setup and
  1240. operation refer to the IBM publication "Device Drivers, Features, and
  1241. Commands", SC33-8411.
  1242. This driver is also available as a module. This module will be
  1243. called zfcp. If you want to compile it as a module, say M here
  1244. and read <file:Documentation/kbuild/modules.rst>.
  1245. config SCSI_PMCRAID
  1246. tristate "PMC SIERRA Linux MaxRAID adapter support"
  1247. depends on PCI && SCSI && NET
  1248. select SGL_ALLOC
  1249. help
  1250. This driver supports the PMC SIERRA MaxRAID adapters.
  1251. config SCSI_PM8001
  1252. tristate "PMC-Sierra SPC 8001 SAS/SATA Based Host Adapter driver"
  1253. depends on PCI && SCSI
  1254. select SCSI_SAS_LIBSAS
  1255. help
  1256. This driver supports PMC-Sierra PCIE SAS/SATA 8x6G SPC 8001 chip
  1257. based host adapters.
  1258. config SCSI_BFA_FC
  1259. tristate "Brocade BFA Fibre Channel Support"
  1260. depends on PCI && SCSI
  1261. depends on SCSI_FC_ATTRS
  1262. help
  1263. This bfa driver supports all Brocade PCIe FC/FCOE host adapters.
  1264. To compile this driver as a module, choose M here. The module will
  1265. be called bfa.
  1266. config SCSI_VIRTIO
  1267. tristate "virtio-scsi support"
  1268. depends on VIRTIO
  1269. help
  1270. This is the virtual HBA driver for virtio. If the kernel will
  1271. be used in a virtual machine, say Y or M.
  1272. source "drivers/scsi/csiostor/Kconfig"
  1273. source "drivers/scsi/pcmcia/Kconfig"
  1274. endif # SCSI_LOWLEVEL
  1275. source "drivers/scsi/device_handler/Kconfig"
  1276. endmenu