namespaces: cleanup the code managed with the USER_NS option
[linux-2.6] / drivers / scsi / Kconfig
1 menu "SCSI device support"
2
3 config RAID_ATTRS
4         tristate "RAID Transport Class"
5         default n
6         depends on BLOCK
7         ---help---
8           Provides RAID
9
10 config SCSI
11         tristate "SCSI device support"
12         depends on BLOCK
13         select SCSI_DMA if HAS_DMA
14         ---help---
15           If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or
16           any other SCSI device under Linux, say Y and make sure that you know
17           the name of your SCSI host adapter (the card inside your computer
18           that "speaks" the SCSI protocol, also called SCSI controller),
19           because you will be asked for it.
20
21           You also need to say Y here if you have a device which speaks
22           the SCSI protocol.  Examples of this include the parallel port
23           version of the IOMEGA ZIP drive, USB storage devices, Fibre
24           Channel, FireWire storage and the IDE-SCSI emulation driver.
25
26           To compile this driver as a module, choose M here and read
27           <file:Documentation/scsi/scsi.txt>.
28           The module will be called scsi_mod.
29
30           However, do not compile this as a module if your root file system
31           (the one containing the directory /) is located on a SCSI device.
32
33 config SCSI_DMA
34         bool
35         default n
36
37 config SCSI_TGT
38         tristate "SCSI target support"
39         depends on SCSI && EXPERIMENTAL
40         ---help---
41           If you want to use SCSI target mode drivers enable this option.
42           If you choose M, the module will be called scsi_tgt.
43
44 config SCSI_NETLINK
45         bool
46         default n
47         select NET
48
49 config SCSI_PROC_FS
50         bool "legacy /proc/scsi/ support"
51         depends on SCSI && PROC_FS
52         default y
53         ---help---
54           This option enables support for the various files in
55           /proc/scsi.  In Linux 2.6 this has been superseded by
56           files in sysfs but many legacy applications rely on this.
57
58           If unsure say Y.
59
60 comment "SCSI support type (disk, tape, CD-ROM)"
61         depends on SCSI
62
63 config BLK_DEV_SD
64         tristate "SCSI disk support"
65         depends on SCSI
66         ---help---
67           If you want to use SCSI hard disks, Fibre Channel disks,
68           Serial ATA (SATA) or Parallel ATA (PATA) hard disks,
69           USB storage or the SCSI or parallel port version of
70           the IOMEGA ZIP drive, say Y and read the SCSI-HOWTO,
71           the Disk-HOWTO and the Multi-Disk-HOWTO, available from
72           <http://www.tldp.org/docs.html#howto>. This is NOT for SCSI
73           CD-ROMs.
74
75           To compile this driver as a module, choose M here and read
76           <file:Documentation/scsi/scsi.txt>.
77           The module will be called sd_mod.
78
79           Do not compile this driver as a module if your root file system
80           (the one containing the directory /) is located on a SCSI disk.
81           In this case, do not compile the driver for your SCSI host adapter
82           (below) as a module either.
83
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.txt> in the kernel source.  This is NOT
92           for SCSI CD-ROMs.
93
94           To compile this driver as a module, choose M here and read
95           <file:Documentation/scsi/scsi.txt>. The module will be called st.
96
97 config CHR_DEV_OSST
98         tristate "SCSI OnStream SC-x0 tape support"
99         depends on SCSI
100         ---help---
101           The OnStream SC-x0 SCSI tape drives cannot be driven by the
102           standard st driver, but instead need this special osst driver and
103           use the  /dev/osstX char device nodes (major 206).  Via usb-storage
104           and ide-scsi, you may be able to drive the USB-x0 and DI-x0 drives
105           as well.  Note that there is also a second generation of OnStream
106           tape drives (ADR-x0) that supports the standard SCSI-2 commands for
107           tapes (QIC-157) and can be driven by the standard driver st.
108           For more information, you may have a look at the SCSI-HOWTO
109           <http://www.tldp.org/docs.html#howto>  and
110           <file:Documentation/scsi/osst.txt>  in the kernel source.
111           More info on the OnStream driver may be found on
112           <http://linux1.onstream.nl/test/>
113           Please also have a look at the standard st docu, as most of it
114           applies to osst as well.
115
116           To compile this driver as a module, choose M here and read
117           <file:Documentation/scsi/scsi.txt>. The module will be called osst.
118
119 config BLK_DEV_SR
120         tristate "SCSI CDROM support"
121         depends on SCSI
122         ---help---
123           If you want to use a SCSI or FireWire CD-ROM under Linux,
124           say Y and read the SCSI-HOWTO and the CDROM-HOWTO at
125           <http://www.tldp.org/docs.html#howto>. Also make sure to say
126           Y or M to "ISO 9660 CD-ROM file system support" later.
127
128           To compile this driver as a module, choose M here and read
129           <file:Documentation/scsi/scsi.txt>.
130           The module will be called sr_mod.
131
132 config BLK_DEV_SR_VENDOR
133         bool "Enable vendor-specific extensions (for SCSI CDROM)"
134         depends on BLK_DEV_SR
135         help
136           This enables the usage of vendor specific SCSI commands. This is
137           required to support multisession CDs with old NEC/TOSHIBA cdrom
138           drives (and HP Writers). If you have such a drive and get the first
139           session only, try saying Y here; everybody else says N.
140
141 config CHR_DEV_SG
142         tristate "SCSI generic support"
143         depends on SCSI
144         ---help---
145           If you want to use SCSI scanners, synthesizers or CD-writers or just
146           about anything having "SCSI" in its name other than hard disks,
147           CD-ROMs or tapes, say Y here. These won't be supported by the kernel
148           directly, so you need some additional software which knows how to
149           talk to these devices using the SCSI protocol:
150
151           For scanners, look at SANE (<http://www.mostang.com/sane/>). For CD
152           writer software look at Cdrtools
153           (<http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html>)
154           and for burning a "disk at once": CDRDAO
155           (<http://cdrdao.sourceforge.net/>). Cdparanoia is a high
156           quality digital reader of audio CDs (<http://www.xiph.org/paranoia/>).
157           For other devices, it's possible that you'll have to write the
158           driver software yourself. Please read the file
159           <file:Documentation/scsi/scsi-generic.txt> for more information.
160
161           To compile this driver as a module, choose M here and read
162           <file:Documentation/scsi/scsi.txt>. The module will be called sg.
163
164           If unsure, say N.
165
166 config CHR_DEV_SCH
167         tristate "SCSI media changer support"
168         depends on SCSI
169         ---help---
170           This is a driver for SCSI media changers.  Most common devices are
171           tape libraries and MOD/CDROM jukeboxes.  *Real* jukeboxes, you
172           don't need this for those tiny 6-slot cdrom changers.  Media
173           changers are listed as "Type: Medium Changer" in /proc/scsi/scsi.
174           If you have such hardware and want to use it with linux, say Y
175           here.  Check <file:Documentation/scsi/scsi-changer.txt> for details.
176         
177           If you want to compile this as a module ( = code which can be
178           inserted in and removed from the running kernel whenever you want),
179           say M here and read <file:Documentation/kbuild/modules.txt> and
180           <file:Documentation/scsi/scsi.txt>. The module will be called ch.o.
181           If unsure, say N.
182
183 config SCSI_ENCLOSURE
184         tristate "SCSI Enclosure Support"
185         depends on SCSI && ENCLOSURE_SERVICES
186         help
187           Enclosures are devices sitting on or in SCSI backplanes that
188           manage devices.  If you have a disk cage, the chances are that
189           it has an enclosure device.  Selecting this option will just allow
190           certain enclosure conditions to be reported and is not required.
191
192 comment "Some SCSI devices (e.g. CD jukebox) support multiple LUNs"
193         depends on SCSI
194
195 config SCSI_MULTI_LUN
196         bool "Probe all LUNs on each SCSI device"
197         depends on SCSI
198         help
199           If you have a SCSI device that supports more than one LUN (Logical
200           Unit Number), e.g. a CD jukebox, and only one LUN is detected, you
201           can say Y here to force the SCSI driver to probe for multiple LUNs.
202           A SCSI device with multiple LUNs acts logically like multiple SCSI
203           devices. The vast majority of SCSI devices have only one LUN, and
204           so most people can say N here. The max_luns boot/module parameter 
205           allows to override this setting.
206
207 config SCSI_CONSTANTS
208         bool "Verbose SCSI error reporting (kernel size +=12K)"
209         depends on SCSI
210         help
211           The error messages regarding your SCSI hardware will be easier to
212           understand if you say Y here; it will enlarge your kernel by about
213           12 KB. If in doubt, say Y.
214
215 config SCSI_LOGGING
216         bool "SCSI logging facility"
217         depends on SCSI
218         ---help---
219           This turns on a logging facility that can be used to debug a number
220           of SCSI related problems.
221
222           If you say Y here, no logging output will appear by default, but you
223           can enable logging by saying Y to "/proc file system support" and
224           "Sysctl support" below and executing the command
225
226           echo "scsi log token [level]" > /proc/scsi/scsi
227
228           at boot time after the /proc file system has been mounted.
229
230           There are a number of things that can be used for 'token' (you can
231           find them in the source: <file:drivers/scsi/scsi.c>), and this
232           allows you to select the types of information you want, and the
233           level allows you to select the level of verbosity.
234
235           If you say N here, it may be harder to track down some types of SCSI
236           problems. If you say Y here your kernel will be somewhat larger, but
237           there should be no noticeable performance impact as long as you have
238           logging turned off.
239
240 config SCSI_SCAN_ASYNC
241         bool "Asynchronous SCSI scanning"
242         depends on SCSI
243         help
244           The SCSI subsystem can probe for devices while the rest of the
245           system continues booting, and even probe devices on different
246           busses in parallel, leading to a significant speed-up.
247
248           If you have built SCSI as modules, enabling this option can
249           be a problem as the devices may not have been found by the
250           time your system expects them to have been.  You can load the
251           scsi_wait_scan module to ensure that all scans have completed.
252           If you build your SCSI drivers into the kernel, then everything
253           will work fine if you say Y here.
254
255           You can override this choice by specifying "scsi_mod.scan=sync"
256           or async on the kernel's command line.
257
258 config SCSI_WAIT_SCAN
259         tristate
260         default m
261         depends on SCSI
262         depends on MODULES
263
264 menu "SCSI Transports"
265         depends on SCSI
266
267 config SCSI_SPI_ATTRS
268         tristate "Parallel SCSI (SPI) Transport Attributes"
269         depends on SCSI
270         help
271           If you wish to export transport-specific information about
272           each attached SCSI device to sysfs, say Y.  Otherwise, say N.
273
274 config SCSI_FC_ATTRS
275         tristate "FiberChannel Transport Attributes"
276         depends on SCSI
277         select SCSI_NETLINK
278         help
279           If you wish to export transport-specific information about
280           each attached FiberChannel device to sysfs, say Y.
281           Otherwise, say N.
282
283 config SCSI_FC_TGT_ATTRS
284         bool "SCSI target support for FiberChannel Transport Attributes"
285         depends on SCSI_FC_ATTRS
286         depends on SCSI_TGT = y || SCSI_TGT = SCSI_FC_ATTRS
287         help
288                 If you want to use SCSI target mode drivers enable this option.
289
290 config SCSI_ISCSI_ATTRS
291         tristate "iSCSI Transport Attributes"
292         depends on SCSI && NET
293         help
294           If you wish to export transport-specific information about
295           each attached iSCSI device to sysfs, say Y.
296           Otherwise, say N.
297
298 config SCSI_SAS_ATTRS
299         tristate "SAS Transport Attributes"
300         depends on SCSI && BLK_DEV_BSG
301         help
302           If you wish to export transport-specific information about
303           each attached SAS device to sysfs, say Y.
304
305 source "drivers/scsi/libsas/Kconfig"
306
307 config SCSI_SRP_ATTRS
308         tristate "SRP Transport Attributes"
309         depends on SCSI
310         help
311           If you wish to export transport-specific information about
312           each attached SRP device to sysfs, say Y.
313
314 config SCSI_SRP_TGT_ATTRS
315         bool "SCSI target support for SRP Transport Attributes"
316         depends on SCSI_SRP_ATTRS
317         depends on SCSI_TGT = y || SCSI_TGT = SCSI_SRP_ATTRS
318         help
319                 If you want to use SCSI target mode drivers enable this option.
320
321 endmenu
322
323 menuconfig SCSI_LOWLEVEL
324         bool "SCSI low-level drivers"
325         depends on SCSI!=n
326         default y
327
328 if SCSI_LOWLEVEL
329
330 config ISCSI_TCP
331         tristate "iSCSI Initiator over TCP/IP"
332         depends on SCSI && INET
333         select CRYPTO
334         select CRYPTO_MD5
335         select CRYPTO_CRC32C
336         select SCSI_ISCSI_ATTRS
337         help
338          The iSCSI Driver provides a host with the ability to access storage
339          through an IP network. The driver uses the iSCSI protocol to transport
340          SCSI requests and responses over a TCP/IP network between the host
341          (the "initiator") and "targets".  Architecturally, the iSCSI driver
342          combines with the host's TCP/IP stack, network drivers, and Network
343          Interface Card (NIC) to provide the same functions as a SCSI or a
344          Fibre Channel (FC) adapter driver with a Host Bus Adapter (HBA).
345
346          To compile this driver as a module, choose M here: the
347          module will be called iscsi_tcp.
348
349          The userspace component needed to initialize the driver, documentation,
350          and sample configuration files can be found here:
351
352          http://open-iscsi.org
353
354 config SGIWD93_SCSI
355         tristate "SGI WD93C93 SCSI Driver"
356         depends on SGI_HAS_WD93 && SCSI
357         help
358           If you have a Western Digital WD93 SCSI controller on
359           an SGI MIPS system, say Y.  Otherwise, say N.
360
361 config BLK_DEV_3W_XXXX_RAID
362         tristate "3ware 5/6/7/8xxx ATA-RAID support"
363         depends on PCI && SCSI
364         help
365           3ware is the only hardware ATA-Raid product in Linux to date.
366           This card is 2,4, or 8 channel master mode support only.
367           SCSI support required!!!
368
369           <http://www.3ware.com/>
370
371           Please read the comments at the top of
372           <file:drivers/scsi/3w-xxxx.c>.
373
374 config SCSI_3W_9XXX
375         tristate "3ware 9xxx SATA-RAID support"
376         depends on PCI && SCSI
377         help
378           This driver supports the 9000 series 3ware SATA-RAID cards.
379
380           <http://www.amcc.com>
381
382           Please read the comments at the top of
383           <file:drivers/scsi/3w-9xxx.c>.
384
385 config SCSI_7000FASST
386         tristate "7000FASST SCSI support"
387         depends on ISA && SCSI && ISA_DMA_API
388         select CHECK_SIGNATURE
389         help
390           This driver supports the Western Digital 7000 SCSI host adapter
391           family.  Some information is in the source:
392           <file:drivers/scsi/wd7000.c>.
393
394           To compile this driver as a module, choose M here: the
395           module will be called wd7000.
396
397 config SCSI_ACARD
398         tristate "ACARD SCSI support"
399         depends on PCI && SCSI
400         help
401           This driver supports the ACARD SCSI host adapter.
402           Support Chip <ATP870 ATP876 ATP880 ATP885>
403           To compile this driver as a module, choose M here: the
404           module will be called atp870u.
405
406 config SCSI_AHA152X
407         tristate "Adaptec AHA152X/2825 support"
408         depends on ISA && SCSI && !64BIT
409         select SCSI_SPI_ATTRS
410         select CHECK_SIGNATURE
411         ---help---
412           This is a driver for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825
413           SCSI host adapters. It also works for the AVA-1505, but the IRQ etc.
414           must be manually specified in this case.
415
416           It is explained in section 3.3 of the SCSI-HOWTO, available from
417           <http://www.tldp.org/docs.html#howto>. You might also want to
418           read the file <file:Documentation/scsi/aha152x.txt>.
419
420           To compile this driver as a module, choose M here: the
421           module will be called aha152x.
422
423 config SCSI_AHA1542
424         tristate "Adaptec AHA1542 support"
425         depends on ISA && SCSI && ISA_DMA_API
426         ---help---
427           This is support for a SCSI host adapter.  It is explained in section
428           3.4 of the SCSI-HOWTO, available from
429           <http://www.tldp.org/docs.html#howto>.  Note that Trantor was
430           purchased by Adaptec, and some former Trantor products are being
431           sold under the Adaptec name.  If it doesn't work out of the box, you
432           may have to change some settings in <file:drivers/scsi/aha1542.h>.
433
434           To compile this driver as a module, choose M here: the
435           module will be called aha1542.
436
437 config SCSI_AHA1740
438         tristate "Adaptec AHA1740 support"
439         depends on EISA && SCSI
440         ---help---
441           This is support for a SCSI host adapter.  It is explained in section
442           3.5 of the SCSI-HOWTO, available from
443           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
444           of the box, you may have to change some settings in
445           <file:drivers/scsi/aha1740.h>.
446
447           To compile this driver as a module, choose M here: the
448           module will be called aha1740.
449
450 config SCSI_AACRAID
451         tristate "Adaptec AACRAID support"
452         depends on SCSI && PCI
453         help
454           This driver supports a variety of Dell, HP, Adaptec, IBM and
455           ICP storage products. For a list of supported products, refer
456           to <file:Documentation/scsi/aacraid.txt>.
457
458           To compile this driver as a module, choose M here: the module
459           will be called aacraid.
460
461
462 source "drivers/scsi/aic7xxx/Kconfig.aic7xxx"
463
464 config SCSI_AIC7XXX_OLD
465         tristate "Adaptec AIC7xxx support (old driver)"
466         depends on (ISA || EISA || PCI ) && SCSI
467         help
468           WARNING This driver is an older aic7xxx driver and is no longer
469           under active development.  Adaptec, Inc. is writing a new driver to
470           take the place of this one, and it is recommended that whenever
471           possible, people should use the new Adaptec written driver instead
472           of this one.  This driver will eventually be phased out entirely.
473
474           This is support for the various aic7xxx based Adaptec SCSI
475           controllers. These include the 274x EISA cards; 284x VLB cards;
476           2902, 2910, 293x, 294x, 394x, 3985 and several other PCI and
477           motherboard based SCSI controllers from Adaptec. It does not support
478           the AAA-13x RAID controllers from Adaptec, nor will it likely ever
479           support them. It does not support the 2920 cards from Adaptec that
480           use the Future Domain SCSI controller chip. For those cards, you
481           need the "Future Domain 16xx SCSI support" driver.
482
483           In general, if the controller is based on an Adaptec SCSI controller
484           chip from the aic777x series or the aic78xx series, this driver
485           should work. The only exception is the 7810 which is specifically
486           not supported (that's the RAID controller chip on the AAA-13x
487           cards).
488
489           Note that the AHA2920 SCSI host adapter is *not* supported by this
490           driver; choose "Future Domain 16xx SCSI support" instead if you have
491           one of those.
492
493           Information on the configuration options for this controller can be
494           found by checking the help file for each of the available
495           configuration options. You should read
496           <file:Documentation/scsi/aic7xxx_old.txt> at a minimum before
497           contacting the maintainer with any questions.  The SCSI-HOWTO,
498           available from <http://www.tldp.org/docs.html#howto>, can also
499           be of great help.
500
501           To compile this driver as a module, choose M here: the
502           module will be called aic7xxx_old.
503
504 source "drivers/scsi/aic7xxx/Kconfig.aic79xx"
505 source "drivers/scsi/aic94xx/Kconfig"
506
507 # All the I2O code and drivers do not seem to be 64bit safe.
508 config SCSI_DPT_I2O
509         tristate "Adaptec I2O RAID support "
510         depends on !64BIT && SCSI && PCI && VIRT_TO_BUS
511         help
512           This driver supports all of Adaptec's I2O based RAID controllers as 
513           well as the DPT SmartRaid V cards.  This is an Adaptec maintained
514           driver by Deanna Bonds.  See <file:Documentation/scsi/dpti.txt>.
515
516           To compile this driver as a module, choose M here: the
517           module will be called dpt_i2o.
518
519 config SCSI_ADVANSYS
520         tristate "AdvanSys SCSI support"
521         depends on SCSI && VIRT_TO_BUS
522         depends on ISA || EISA || PCI
523         help
524           This is a driver for all SCSI host adapters manufactured by
525           AdvanSys. It is documented in the kernel source in
526           <file:drivers/scsi/advansys.c>.
527
528           To compile this driver as a module, choose M here: the
529           module will be called advansys.
530
531 config SCSI_IN2000
532         tristate "Always IN2000 SCSI support"
533         depends on ISA && SCSI
534         help
535           This is support for an ISA bus SCSI host adapter.  You'll find more
536           information in <file:Documentation/scsi/in2000.txt>. If it doesn't work
537           out of the box, you may have to change the jumpers for IRQ or
538           address selection.
539
540           To compile this driver as a module, choose M here: the
541           module will be called in2000.
542
543 config SCSI_ARCMSR
544         tristate "ARECA (ARC11xx/12xx/13xx/16xx) SATA/SAS RAID Host Adapter"
545         depends on PCI && SCSI
546         help
547           This driver supports all of ARECA's SATA/SAS RAID controller cards.
548           This is an ARECA-maintained driver by Erich Chen.
549           If you have any problems, please mail to: <erich@areca.com.tw>.
550           Areca supports Linux RAID config tools.
551           Please link <http://www.areca.com.tw>
552
553           To compile this driver as a module, choose M here: the
554           module will be called arcmsr (modprobe arcmsr).
555
556 config SCSI_ARCMSR_AER
557         bool "Enable PCI Error Recovery Capability in Areca Driver(ARCMSR)"
558         depends on SCSI_ARCMSR && PCIEAER
559         default n
560         help
561           The advanced error reporting(AER) capability is "NOT" provided by
562           ARC1200/1201/1202 SATA RAID controllers cards.
563           If your card is one of ARC1200/1201/1202, please use the default setting, n.
564           If your card is other models, you could pick it
565           on condition that the kernel version is greater than 2.6.19.
566           This function is maintained driver by Nick Cheng. If you have any
567           problems or suggestion, you are welcome to contact with <nick.cheng@areca.com.tw>.
568           To enable this function, choose Y here.
569
570 source "drivers/scsi/megaraid/Kconfig.megaraid"
571
572 config SCSI_HPTIOP
573         tristate "HighPoint RocketRAID 3xxx/4xxx Controller support"
574         depends on SCSI && PCI
575         help
576           This option enables support for HighPoint RocketRAID 3xxx/4xxx
577           controllers.
578
579           To compile this driver as a module, choose M here; the module
580           will be called hptiop. If unsure, say N.
581
582 config SCSI_BUSLOGIC
583         tristate "BusLogic SCSI support"
584         depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API && VIRT_TO_BUS
585         ---help---
586           This is support for BusLogic MultiMaster and FlashPoint SCSI Host
587           Adapters. Consult the SCSI-HOWTO, available from
588           <http://www.tldp.org/docs.html#howto>, and the files
589           <file:Documentation/scsi/BusLogic.txt> and
590           <file:Documentation/scsi/FlashPoint.txt> for more information.
591
592           To compile this driver as a module, choose M here: the
593           module will be called BusLogic.
594
595 config SCSI_OMIT_FLASHPOINT
596         bool "Omit FlashPoint support"
597         depends on SCSI_BUSLOGIC
598         help
599           This option allows you to omit the FlashPoint support from the
600           BusLogic SCSI driver. The FlashPoint SCCB Manager code is
601           substantial, so users of MultiMaster Host Adapters may wish to omit
602           it.
603
604 config SCSI_DMX3191D
605         tristate "DMX3191D SCSI support"
606         depends on PCI && SCSI
607         select SCSI_SPI_ATTRS
608         help
609           This is support for Domex DMX3191D SCSI Host Adapters.
610
611           To compile this driver as a module, choose M here: the
612           module will be called dmx3191d.
613
614 config SCSI_DTC3280
615         tristate "DTC3180/3280 SCSI support"
616         depends on ISA && SCSI
617         select SCSI_SPI_ATTRS
618         select CHECK_SIGNATURE
619         help
620           This is support for DTC 3180/3280 SCSI Host Adapters.  Please read
621           the SCSI-HOWTO, available from
622           <http://www.tldp.org/docs.html#howto>, and the file
623           <file:Documentation/scsi/dtc3x80.txt>.
624
625           To compile this driver as a module, choose M here: the
626           module will be called dtc.
627
628 config SCSI_EATA
629         tristate "EATA ISA/EISA/PCI (DPT and generic EATA/DMA-compliant boards) support"
630         depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API
631         ---help---
632           This driver supports all EATA/DMA-compliant SCSI host adapters.  DPT
633           ISA and all EISA I/O addresses are probed looking for the "EATA"
634           signature. The addresses of all the PCI SCSI controllers reported
635           by the PCI subsystem are probed as well.
636
637           You want to read the start of <file:drivers/scsi/eata.c> and the
638           SCSI-HOWTO, available from
639           <http://www.tldp.org/docs.html#howto>.
640
641           To compile this driver as a module, choose M here: the
642           module will be called eata.
643
644 config SCSI_EATA_TAGGED_QUEUE
645         bool "enable tagged command queueing"
646         depends on SCSI_EATA
647         help
648           This is a feature of SCSI-2 which improves performance: the host
649           adapter can send several SCSI commands to a device's queue even if
650           previous commands haven't finished yet.
651           This is equivalent to the "eata=tc:y" boot option.
652
653 config SCSI_EATA_LINKED_COMMANDS
654         bool "enable elevator sorting"
655         depends on SCSI_EATA
656         help
657           This option enables elevator sorting for all probed SCSI disks and
658           CD-ROMs. It definitely reduces the average seek distance when doing
659           random seeks, but this does not necessarily result in a noticeable
660           performance improvement: your mileage may vary...
661           This is equivalent to the "eata=lc:y" boot option.
662
663 config SCSI_EATA_MAX_TAGS
664         int "maximum number of queued commands"
665         depends on SCSI_EATA
666         default "16"
667         help
668           This specifies how many SCSI commands can be maximally queued for
669           each probed SCSI device. You should reduce the default value of 16
670           only if you have disks with buggy or limited tagged command support.
671           Minimum is 2 and maximum is 62. This value is also the window size
672           used by the elevator sorting option above. The effective value used
673           by the driver for each probed SCSI device is reported at boot time.
674           This is equivalent to the "eata=mq:8" boot option.
675
676 config SCSI_EATA_PIO
677         tristate "EATA-PIO (old DPT PM2001, PM2012A) support"
678         depends on (ISA || EISA || PCI) && SCSI && BROKEN
679         ---help---
680           This driver supports all EATA-PIO protocol compliant SCSI Host
681           Adapters like the DPT PM2001 and the PM2012A.  EATA-DMA compliant
682           host adapters could also use this driver but are discouraged from
683           doing so, since this driver only supports hard disks and lacks
684           numerous features.  You might want to have a look at the SCSI-HOWTO,
685           available from <http://www.tldp.org/docs.html#howto>.
686
687           To compile this driver as a module, choose M here: the
688           module will be called eata_pio.
689
690 config SCSI_FUTURE_DOMAIN
691         tristate "Future Domain 16xx SCSI/AHA-2920A support"
692         depends on (ISA || PCI) && SCSI
693         select CHECK_SIGNATURE
694         ---help---
695           This is support for Future Domain's 16-bit SCSI host adapters
696           (TMC-1660/1680, TMC-1650/1670, TMC-3260, TMC-1610M/MER/MEX) and
697           other adapters based on the Future Domain chipsets (Quantum
698           ISA-200S, ISA-250MG; Adaptec AHA-2920A; and at least one IBM board).
699           It is explained in section 3.7 of the SCSI-HOWTO, available from
700           <http://www.tldp.org/docs.html#howto>.
701
702           NOTE: Newer Adaptec AHA-2920C boards use the Adaptec AIC-7850 chip
703           and should use the aic7xxx driver ("Adaptec AIC7xxx chipset SCSI
704           controller support"). This Future Domain driver works with the older
705           Adaptec AHA-2920A boards with a Future Domain chip on them.
706
707           To compile this driver as a module, choose M here: the
708           module will be called fdomain.
709
710 config SCSI_FD_MCS
711         tristate "Future Domain MCS-600/700 SCSI support"
712         depends on MCA_LEGACY && SCSI
713         ---help---
714           This is support for Future Domain MCS 600/700 MCA SCSI adapters.
715           Some PS/2 computers are equipped with IBM Fast SCSI Adapter/A which
716           is identical to the MCS 700 and hence also supported by this driver.
717           This driver also supports the Reply SB16/SCSI card (the SCSI part).
718           It supports multiple adapters in the same system.
719
720           To compile this driver as a module, choose M here: the
721           module will be called fd_mcs.
722
723 config SCSI_GDTH
724         tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support"
725         depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API && PCI_LEGACY
726         ---help---
727           Formerly called GDT SCSI Disk Array Controller Support.
728
729           This is a driver for RAID/SCSI Disk Array Controllers (EISA/ISA/PCI) 
730           manufactured by Intel Corporation/ICP vortex GmbH. It is documented
731           in the kernel source in <file:drivers/scsi/gdth.c> and
732           <file:drivers/scsi/gdth.h>.
733
734           To compile this driver as a module, choose M here: the
735           module will be called gdth.
736
737 config SCSI_GENERIC_NCR5380
738         tristate "Generic NCR5380/53c400 SCSI PIO support"
739         depends on ISA && SCSI
740         select SCSI_SPI_ATTRS
741         ---help---
742           This is a driver for the old NCR 53c80 series of SCSI controllers
743           on boards using PIO. Most boards such as the Trantor T130 fit this
744           category, along with a large number of ISA 8bit controllers shipped
745           for free with SCSI scanners. If you have a PAS16, T128 or DMX3191
746           you should select the specific driver for that card rather than
747           generic 5380 support.
748
749           It is explained in section 3.8 of the SCSI-HOWTO, available from
750           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
751           of the box, you may have to change some settings in
752           <file:drivers/scsi/g_NCR5380.h>.
753
754           To compile this driver as a module, choose M here: the
755           module will be called g_NCR5380.
756
757 config SCSI_GENERIC_NCR5380_MMIO
758         tristate "Generic NCR5380/53c400 SCSI MMIO support"
759         depends on ISA && SCSI
760         select SCSI_SPI_ATTRS
761         ---help---
762           This is a driver for the old NCR 53c80 series of SCSI controllers
763           on boards using memory mapped I/O. 
764           It is explained in section 3.8 of the SCSI-HOWTO, available from
765           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
766           of the box, you may have to change some settings in
767           <file:drivers/scsi/g_NCR5380.h>.
768
769           To compile this driver as a module, choose M here: the
770           module will be called g_NCR5380_mmio.
771
772 config SCSI_GENERIC_NCR53C400
773         bool "Enable NCR53c400 extensions"
774         depends on SCSI_GENERIC_NCR5380
775         help
776           This enables certain optimizations for the NCR53c400 SCSI cards.
777           You might as well try it out.  Note that this driver will only probe
778           for the Trantor T130B in its default configuration; you might have
779           to pass a command line option to the kernel at boot time if it does
780           not detect your card.  See the file
781           <file:Documentation/scsi/g_NCR5380.txt> for details.
782
783 config SCSI_IBMMCA
784         tristate "IBMMCA SCSI support"
785         depends on MCA && SCSI
786         ---help---
787           This is support for the IBM SCSI adapter found in many of the PS/2
788           series computers.  These machines have an MCA bus, so you need to
789           answer Y to "MCA support" as well and read
790           <file:Documentation/mca.txt>.
791
792           If the adapter isn't found during boot (a common problem for models
793           56, 57, 76, and 77) you'll need to use the 'ibmmcascsi=<pun>' kernel
794           option, where <pun> is the id of the SCSI subsystem (usually 7, but
795           if that doesn't work check your reference diskette).  Owners of
796           model 95 with a LED-matrix-display can in addition activate some
797           activity info like under OS/2, but more informative, by setting
798           'ibmmcascsi=display' as an additional kernel parameter.  Try "man
799           bootparam" or see the documentation of your boot loader about how to
800           pass options to the kernel.
801
802           To compile this driver as a module, choose M here: the
803           module will be called ibmmca.
804
805 config IBMMCA_SCSI_ORDER_STANDARD
806         bool "Standard SCSI-order"
807         depends on SCSI_IBMMCA
808         ---help---
809           In the PC-world and in most modern SCSI-BIOS-setups, SCSI-hard disks
810           are assigned to the drive letters, starting with the lowest SCSI-id
811           (physical number -- pun) to be drive C:, as seen from DOS and
812           similar operating systems. When looking into papers describing the
813           ANSI-SCSI-standard, this assignment of drives appears to be wrong.
814           The SCSI-standard follows a hardware-hierarchy which says that id 7
815           has the highest priority and id 0 the lowest. Therefore, the host
816           adapters are still today everywhere placed as SCSI-id 7 by default.
817           In the SCSI-standard, the drive letters express the priority of the
818           disk. C: should be the hard disk, or a partition on it, with the
819           highest priority. This must therefore be the disk with the highest
820           SCSI-id (e.g. 6) and not the one with the lowest! IBM-BIOS kept the
821           original definition of the SCSI-standard as also industrial- and
822           process-control-machines, like VME-CPUs running under realtime-OSes
823           (e.g. LynxOS, OS9) do.
824
825           If you like to run Linux on your MCA-machine with the same
826           assignment of hard disks as seen from e.g. DOS or OS/2 on your
827           machine, which is in addition conformant to the SCSI-standard, you
828           must say Y here. This is also necessary for MCA-Linux users who want
829           to keep downward compatibility to older releases of the
830           IBM-MCA-SCSI-driver (older than driver-release 2.00 and older than
831           June 1997).
832
833           If you like to have the lowest SCSI-id assigned as drive C:, as
834           modern SCSI-BIOSes do, which does not conform to the standard, but
835           is widespread and common in the PC-world of today, you must say N
836           here. If unsure, say Y.
837
838 config IBMMCA_SCSI_DEV_RESET
839         bool "Reset SCSI-devices at boottime"
840         depends on SCSI_IBMMCA
841         ---help---
842           By default, SCSI-devices are reset when the machine is powered on.
843           However, some devices exist, like special-control-devices,
844           SCSI-CNC-machines, SCSI-printer or scanners of older type, that do
845           not reset when switched on. If you say Y here, each device connected
846           to your SCSI-bus will be issued a reset-command after it has been
847           probed, while the kernel is booting. This may cause problems with
848           more modern devices, like hard disks, which do not appreciate these
849           reset commands, and can cause your system to hang. So say Y only if
850           you know that one of your older devices needs it; N is the safe
851           answer.
852
853 config SCSI_IPS
854         tristate "IBM ServeRAID support"
855         depends on PCI && SCSI
856         ---help---
857           This is support for the IBM ServeRAID hardware RAID controllers.
858           See <http://www.developer.ibm.com/welcome/netfinity/serveraid.html>
859           for more information.  If this driver does not work correctly
860           without modification please contact the author by email at
861           <ipslinux@adaptec.com>.
862
863           To compile this driver as a module, choose M here: the
864           module will be called ips.
865
866 config SCSI_IBMVSCSI
867         tristate "IBM Virtual SCSI support"
868         depends on PPC_PSERIES || PPC_ISERIES
869         select SCSI_SRP_ATTRS
870         help
871           This is the IBM POWER Virtual SCSI Client
872
873           To compile this driver as a module, choose M here: the
874           module will be called ibmvscsic.
875
876 config SCSI_IBMVSCSIS
877         tristate "IBM Virtual SCSI Server support"
878         depends on PPC_PSERIES && SCSI_SRP && SCSI_SRP_TGT_ATTRS
879         help
880           This is the SRP target driver for IBM pSeries virtual environments.
881
882           The userspace component needed to initialize the driver and
883           documentation can be found:
884
885           http://stgt.berlios.de/
886
887           To compile this driver as a module, choose M here: the
888           module will be called ibmvstgt.
889
890 config SCSI_INITIO
891         tristate "Initio 9100U(W) support"
892         depends on PCI && SCSI
893         help
894           This is support for the Initio 91XXU(W) SCSI host adapter.  Please
895           read the SCSI-HOWTO, available from
896           <http://www.tldp.org/docs.html#howto>.
897
898           To compile this driver as a module, choose M here: the
899           module will be called initio.
900
901 config SCSI_INIA100
902         tristate "Initio INI-A100U2W support"
903         depends on PCI && SCSI
904         help
905           This is support for the Initio INI-A100U2W SCSI host adapter.
906           Please read the SCSI-HOWTO, available from
907           <http://www.tldp.org/docs.html#howto>.
908
909           To compile this driver as a module, choose M here: the
910           module will be called a100u2w.
911
912 config SCSI_PPA
913         tristate "IOMEGA parallel port (ppa - older drives)"
914         depends on SCSI && PARPORT_PC
915         ---help---
916           This driver supports older versions of IOMEGA's parallel port ZIP
917           drive (a 100 MB removable media device).
918
919           Note that you can say N here if you have the SCSI version of the ZIP
920           drive: it will be supported automatically if you said Y to the
921           generic "SCSI disk support", above.
922
923           If you have the ZIP Plus drive or a more recent parallel port ZIP
924           drive (if the supplied cable with the drive is labeled "AutoDetect")
925           then you should say N here and Y to "IOMEGA parallel port (imm -
926           newer drives)", below.
927
928           For more information about this driver and how to use it you should
929           read the file <file:Documentation/scsi/ppa.txt>.  You should also read
930           the SCSI-HOWTO, which is available from
931           <http://www.tldp.org/docs.html#howto>.  If you use this driver,
932           you will still be able to use the parallel port for other tasks,
933           such as a printer; it is safe to compile both drivers into the
934           kernel.
935
936           To compile this driver as a module, choose M here: the
937           module will be called ppa.
938
939 config SCSI_IMM
940         tristate "IOMEGA parallel port (imm - newer drives)"
941         depends on SCSI && PARPORT_PC
942         ---help---
943           This driver supports newer versions of IOMEGA's parallel port ZIP
944           drive (a 100 MB removable media device).
945
946           Note that you can say N here if you have the SCSI version of the ZIP
947           drive: it will be supported automatically if you said Y to the
948           generic "SCSI disk support", above.
949
950           If you have the ZIP Plus drive or a more recent parallel port ZIP
951           drive (if the supplied cable with the drive is labeled "AutoDetect")
952           then you should say Y here; if you have an older ZIP drive, say N
953           here and Y to "IOMEGA Parallel Port (ppa - older drives)", above.
954
955           For more information about this driver and how to use it you should
956           read the file <file:Documentation/scsi/ppa.txt>.  You should also read
957           the SCSI-HOWTO, which is available from
958           <http://www.tldp.org/docs.html#howto>.  If you use this driver,
959           you will still be able to use the parallel port for other tasks,
960           such as a printer; it is safe to compile both drivers into the
961           kernel.
962
963           To compile this driver as a module, choose M here: the
964           module will be called imm.
965
966 config SCSI_IZIP_EPP16
967         bool "ppa/imm option - Use slow (but safe) EPP-16"
968         depends on SCSI_PPA || SCSI_IMM
969         ---help---
970           EPP (Enhanced Parallel Port) is a standard for parallel ports which
971           allows them to act as expansion buses that can handle up to 64
972           peripheral devices.
973
974           Some parallel port chipsets are slower than their motherboard, and
975           so we have to control the state of the chipset's FIFO queue every
976           now and then to avoid data loss. This will be done if you say Y
977           here.
978
979           Generally, saying Y is the safe option and slows things down a bit.
980
981 config SCSI_IZIP_SLOW_CTR
982         bool "ppa/imm option - Assume slow parport control register"
983         depends on SCSI_PPA || SCSI_IMM
984         help
985           Some parallel ports are known to have excessive delays between
986           changing the parallel port control register and good data being
987           available on the parallel port data/status register. This option
988           forces a small delay (1.0 usec to be exact) after changing the
989           control register to let things settle out. Enabling this option may
990           result in a big drop in performance but some very old parallel ports
991           (found in 386 vintage machines) will not work properly.
992
993           Generally, saying N is fine.
994
995 config SCSI_NCR53C406A
996         tristate "NCR53c406a SCSI support"
997         depends on ISA && SCSI
998         help
999           This is support for the NCR53c406a SCSI host adapter.  For user
1000           configurable parameters, check out <file:drivers/scsi/NCR53c406a.c>
1001           in the kernel source.  Also read the SCSI-HOWTO, available from
1002           <http://www.tldp.org/docs.html#howto>.
1003
1004           To compile this driver as a module, choose M here: the
1005           module will be called NCR53c406.
1006
1007 config SCSI_NCR_D700
1008         tristate "NCR Dual 700 MCA SCSI support"
1009         depends on MCA && SCSI
1010         select SCSI_SPI_ATTRS
1011         help
1012           This is a driver for the MicroChannel Dual 700 card produced by
1013           NCR and commonly used in 345x/35xx/4100 class machines.  It always
1014           tries to negotiate sync and uses tag command queueing.
1015
1016           Unless you have an NCR manufactured machine, the chances are that
1017           you do not have this SCSI card, so say N.
1018
1019 config SCSI_LASI700
1020         tristate "HP Lasi SCSI support for 53c700/710"
1021         depends on GSC && SCSI
1022         select SCSI_SPI_ATTRS
1023         help
1024           This is a driver for the SCSI controller in the Lasi chip found in
1025           many PA-RISC workstations & servers.  If you do not know whether you
1026           have a Lasi chip, it is safe to say "Y" here.
1027
1028 config SCSI_SNI_53C710
1029         tristate "SNI RM SCSI support for 53c710"
1030         depends on SNI_RM && SCSI
1031         select SCSI_SPI_ATTRS
1032         select 53C700_LE_ON_BE
1033         help
1034           This is a driver for the onboard SCSI controller found in older
1035           SNI RM workstations & servers.
1036
1037 config 53C700_LE_ON_BE
1038         bool
1039         depends on SCSI_LASI700
1040         default y
1041
1042 config SCSI_STEX
1043         tristate "Promise SuperTrak EX Series support"
1044         depends on PCI && SCSI
1045         ---help---
1046           This driver supports Promise SuperTrak EX series storage controllers.
1047
1048           Promise provides Linux RAID configuration utility for these
1049           controllers. Please visit <http://www.promise.com> to download.
1050
1051           To compile this driver as a module, choose M here: the
1052           module will be called stex.
1053
1054 config 53C700_BE_BUS
1055         bool
1056         depends on SCSI_A4000T || SCSI_ZORRO7XX || MVME16x_SCSI || BVME6000_SCSI
1057         default y
1058
1059 config SCSI_SYM53C8XX_2
1060         tristate "SYM53C8XX Version 2 SCSI support"
1061         depends on PCI && SCSI
1062         select SCSI_SPI_ATTRS
1063         ---help---
1064           This driver supports the whole NCR53C8XX/SYM53C8XX family of
1065           PCI-SCSI controllers.  It also supports the subset of LSI53C10XX
1066           Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS
1067           language.  It does not support LSI53C10XX Ultra-320 PCI-X SCSI
1068           controllers; you need to use the Fusion MPT driver for that.
1069
1070           Please read <file:Documentation/scsi/sym53c8xx_2.txt> for more
1071           information.
1072
1073 config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
1074         int "DMA addressing mode"
1075         depends on SCSI_SYM53C8XX_2
1076         default "1"
1077         ---help---
1078           This option only applies to PCI-SCSI chips that are PCI DAC
1079           capable (875A, 895A, 896, 1010-33, 1010-66, 1000).
1080
1081           When set to 0, the driver will program the chip to only perform
1082           32-bit DMA.  When set to 1, the chip will be able to perform DMA
1083           to addresses up to 1TB.  When set to 2, the driver supports the
1084           full 64-bit DMA address range, but can only address 16 segments
1085           of 4 GB each.  This limits the total addressable range to 64 GB.
1086
1087           Most machines with less than 4GB of memory should use a setting
1088           of 0 for best performance.  If your machine has 4GB of memory
1089           or more, you should set this option to 1 (the default).
1090
1091           The still experimental value 2 (64 bit DMA addressing with 16
1092           x 4GB segments limitation) can be used on systems that require
1093           PCI address bits past bit 39 to be set for the addressing of
1094           memory using PCI DAC cycles.
1095
1096 config SCSI_SYM53C8XX_DEFAULT_TAGS
1097         int "Default tagged command queue depth"
1098         depends on SCSI_SYM53C8XX_2
1099         default "16"
1100         help
1101           This is the default value of the command queue depth the
1102           driver will announce to the generic SCSI layer for devices
1103           that support tagged command queueing. This value can be changed
1104           from the boot command line.  This is a soft limit that cannot
1105           exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.
1106
1107 config SCSI_SYM53C8XX_MAX_TAGS
1108         int "Maximum number of queued commands"
1109         depends on SCSI_SYM53C8XX_2
1110         default "64"
1111         help
1112           This option allows you to specify the maximum number of commands
1113           that can be queued to any device, when tagged command queuing is
1114           possible. The driver supports up to 256 queued commands per device.
1115           This value is used as a compiled-in hard limit.
1116
1117 config SCSI_SYM53C8XX_MMIO
1118         bool "Use memory mapped IO"
1119         depends on SCSI_SYM53C8XX_2
1120         default y
1121         help
1122           Memory mapped IO is faster than Port IO.  Most people should
1123           answer Y here, but some machines may have problems.  If you have
1124           to answer N here, please report the problem to the maintainer.
1125
1126 config SCSI_IPR
1127         tristate "IBM Power Linux RAID adapter support"
1128         depends on PCI && SCSI && ATA
1129         select FW_LOADER
1130         ---help---
1131           This driver supports the IBM Power Linux family RAID adapters.
1132           This includes IBM pSeries 5712, 5703, 5709, and 570A, as well
1133           as IBM iSeries 5702, 5703, 5709, and 570A.
1134
1135 config SCSI_IPR_TRACE
1136         bool "enable driver internal trace"
1137         depends on SCSI_IPR
1138         default y
1139         help
1140           If you say Y here, the driver will trace all commands issued
1141           to the adapter. Performance impact is minimal. Trace can be
1142           dumped using /sys/bus/class/scsi_host/hostXX/trace.
1143
1144 config SCSI_IPR_DUMP
1145         bool "enable adapter dump support"
1146         depends on SCSI_IPR
1147         default y
1148         help
1149           If you say Y here, the driver will support adapter crash dump.
1150           If you enable this support, the iprdump daemon can be used
1151           to capture adapter failure analysis information.
1152
1153 config SCSI_ZALON
1154         tristate "Zalon SCSI support"
1155         depends on GSC && SCSI
1156         select SCSI_SPI_ATTRS
1157         help
1158           The Zalon is a GSC/HSC bus interface chip that sits between the
1159           PA-RISC processor and the NCR 53c720 SCSI controller on C100,
1160           C110, J200, J210 and some D, K & R-class machines.  It's also
1161           used on the add-in Bluefish, Barracuda & Shrike SCSI cards.
1162           Say Y here if you have one of these machines or cards.
1163
1164 config SCSI_NCR_Q720
1165         tristate "NCR Quad 720 MCA SCSI support"
1166         depends on MCA && SCSI
1167         select SCSI_SPI_ATTRS
1168         help
1169           This is a driver for the MicroChannel Quad 720 card produced by
1170           NCR and commonly used in 345x/35xx/4100 class machines.  It always
1171           tries to negotiate sync and uses tag command queueing.
1172
1173           Unless you have an NCR manufactured machine, the chances are that
1174           you do not have this SCSI card, so say N.
1175
1176 config SCSI_NCR53C8XX_DEFAULT_TAGS
1177         int "default tagged command queue depth"
1178         depends on SCSI_ZALON || SCSI_NCR_Q720
1179         default "8"
1180         ---help---
1181           "Tagged command queuing" is a feature of SCSI-2 which improves
1182           performance: the host adapter can send several SCSI commands to a
1183           device's queue even if previous commands haven't finished yet.
1184           Because the device is intelligent, it can optimize its operations
1185           (like head positioning) based on its own request queue. Some SCSI
1186           devices don't implement this properly; if you want to disable this
1187           feature, enter 0 or 1 here (it doesn't matter which).
1188
1189           The default value is 8 and should be supported by most hard disks.
1190           This value can be overridden from the boot command line using the
1191           'tags' option as follows (example):
1192           'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to
1193           4, set queue depth to 16 for target 2 and target 3 on controller 0
1194           and set queue depth to 10 for target 0 / lun 2 on controller 1.
1195
1196           The normal answer therefore is to go with the default 8 and to use
1197           a boot command line option for devices that need to use a different
1198           command queue depth.
1199
1200           There is no safe option other than using good SCSI devices.
1201
1202 config SCSI_NCR53C8XX_MAX_TAGS
1203         int "maximum number of queued commands"
1204         depends on SCSI_ZALON || SCSI_NCR_Q720
1205         default "32"
1206         ---help---
1207           This option allows you to specify the maximum number of commands
1208           that can be queued to any device, when tagged command queuing is
1209           possible. The default value is 32. Minimum is 2, maximum is 64.
1210           Modern hard disks are able to support 64 tags and even more, but
1211           do not seem to be faster when more than 32 tags are being used.
1212
1213           So, the normal answer here is to go with the default value 32 unless
1214           you are using very large hard disks with large cache (>= 1 MB) that
1215           are able to take advantage of more than 32 tagged commands.
1216
1217           There is no safe option and the default answer is recommended.
1218
1219 config SCSI_NCR53C8XX_SYNC
1220         int "synchronous transfers frequency in MHz"
1221         depends on SCSI_ZALON || SCSI_NCR_Q720
1222         default "20"
1223         ---help---
1224           The SCSI Parallel Interface-2 Standard defines 5 classes of transfer
1225           rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80.  The numbers
1226           are respectively the maximum data transfer rates in mega-transfers
1227           per second for each class.  For example, a FAST-20 Wide 16 device is
1228           able to transfer data at 20 million 16 bit packets per second for a
1229           total rate of 40 MB/s.
1230
1231           You may specify 0 if you want to only use asynchronous data
1232           transfers. This is the safest and slowest option. Otherwise, specify
1233           a value between 5 and 80, depending on the capability of your SCSI
1234           controller.  The higher the number, the faster the data transfer.
1235           Note that 80 should normally be ok since the driver decreases the
1236           value automatically according to the controller's capabilities.
1237
1238           Your answer to this question is ignored for controllers with NVRAM,
1239           since the driver will get this information from the user set-up.  It
1240           also can be overridden using a boot setup option, as follows
1241           (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate
1242           for FAST-20 synchronous data transfer (20 mega-transfers per
1243           second).
1244
1245           The normal answer therefore is not to go with the default but to
1246           select the maximum value 80 allowing the driver to use the maximum
1247           value supported by each controller. If this causes problems with
1248           your SCSI devices, you should come back and decrease the value.
1249
1250           There is no safe option other than using good cabling, right
1251           terminations and SCSI conformant devices.
1252
1253 config SCSI_NCR53C8XX_NO_DISCONNECT
1254         bool "not allow targets to disconnect"
1255         depends on (SCSI_ZALON || SCSI_NCR_Q720) && SCSI_NCR53C8XX_DEFAULT_TAGS=0
1256         help
1257           This option is only provided for safety if you suspect some SCSI
1258           device of yours to not support properly the target-disconnect
1259           feature. In that case, you would say Y here. In general however, to
1260           not allow targets to disconnect is not reasonable if there is more
1261           than 1 device on a SCSI bus. The normal answer therefore is N.
1262
1263 config SCSI_PAS16
1264         tristate "PAS16 SCSI support"
1265         depends on ISA && SCSI
1266         select SCSI_SPI_ATTRS
1267         ---help---
1268           This is support for a SCSI host adapter.  It is explained in section
1269           3.10 of the SCSI-HOWTO, available from
1270           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
1271           of the box, you may have to change some settings in
1272           <file:drivers/scsi/pas16.h>.
1273
1274           To compile this driver as a module, choose M here: the
1275           module will be called pas16.
1276
1277 config SCSI_QLOGIC_FAS
1278         tristate "Qlogic FAS SCSI support"
1279         depends on ISA && SCSI
1280         ---help---
1281           This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic
1282           FastSCSI! cards as well as any other card based on the FASXX chip
1283           (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards).
1284
1285           This driver does NOT support the PCI versions of these cards. The
1286           PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP
1287           SCSI support"), below.
1288
1289           Information about this driver is contained in
1290           <file:Documentation/scsi/qlogicfas.txt>.  You should also read the
1291           SCSI-HOWTO, available from
1292           <http://www.tldp.org/docs.html#howto>.
1293
1294           To compile this driver as a module, choose M here: the
1295           module will be called qlogicfas.
1296
1297 config SCSI_QLOGIC_FC_FIRMWARE
1298         bool "Include loadable firmware in driver"
1299         depends on SCSI_QLOGIC_FC
1300         help
1301           Say Y to include ISP2X00 Fabric Initiator/Target Firmware, with
1302           expanded LUN addressing and FcTape (FCP-2) support, in the
1303           qlogicfc driver. This is required on some platforms.
1304
1305 config SCSI_QLOGIC_1280
1306         tristate "Qlogic QLA 1240/1x80/1x160 SCSI support"
1307         depends on PCI && SCSI
1308         help
1309           Say Y if you have a QLogic ISP1240/1x80/1x160 SCSI host adapter.
1310
1311           To compile this driver as a module, choose M here: the
1312           module will be called qla1280.
1313
1314 config SCSI_QLOGICPTI
1315         tristate "PTI Qlogic, ISP Driver"
1316         depends on SBUS && SCSI
1317         help
1318           This driver supports SBUS SCSI controllers from PTI or QLogic. These
1319           controllers are known under Solaris as qpti and in the openprom as
1320           PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are
1321           driven by a different driver.
1322
1323           To compile this driver as a module, choose M here: the
1324           module will be called qlogicpti.
1325
1326 source "drivers/scsi/qla2xxx/Kconfig"
1327 source "drivers/scsi/qla4xxx/Kconfig"
1328
1329 config SCSI_LPFC
1330         tristate "Emulex LightPulse Fibre Channel Support"
1331         depends on PCI && SCSI
1332         select SCSI_FC_ATTRS
1333         help
1334           This lpfc driver supports the Emulex LightPulse
1335           Family of Fibre Channel PCI host adapters.
1336
1337 config SCSI_SIM710
1338         tristate "Simple 53c710 SCSI support (Compaq, NCR machines)"
1339         depends on (EISA || MCA) && SCSI
1340         select SCSI_SPI_ATTRS
1341         ---help---
1342           This driver for NCR53c710 based SCSI host adapters.
1343
1344           It currently supports Compaq EISA cards and NCR MCA cards
1345
1346 config SCSI_SYM53C416
1347         tristate "Symbios 53c416 SCSI support"
1348         depends on ISA && SCSI
1349         ---help---
1350           This is support for the sym53c416 SCSI host adapter, the SCSI
1351           adapter that comes with some HP scanners. This driver requires that
1352           the sym53c416 is configured first using some sort of PnP
1353           configuration program (e.g. isapnp) or by a PnP aware BIOS. If you
1354           are using isapnp then you need to compile this driver as a module
1355           and then load it using insmod after isapnp has run. The parameters
1356           of the configured card(s) should be passed to the driver. The format
1357           is:
1358
1359           insmod sym53c416 sym53c416=<base>,<irq> [sym53c416_1=<base>,<irq>]
1360
1361           To compile this driver as a module, choose M here: the
1362           module will be called sym53c416.
1363
1364 config SCSI_DC395x
1365         tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support (EXPERIMENTAL)"
1366         depends on PCI && SCSI && EXPERIMENTAL
1367         ---help---
1368           This driver supports PCI SCSI host adapters based on the ASIC
1369           TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants.
1370
1371           This driver works, but is still in experimental status. So better
1372           have a bootable disk and a backup in case of emergency.
1373
1374           Documentation can be found in <file:Documentation/scsi/dc395x.txt>.
1375
1376           To compile this driver as a module, choose M here: the
1377           module will be called dc395x.
1378
1379 config SCSI_DC390T
1380         tristate "Tekram DC390(T) and Am53/79C974 SCSI support"
1381         depends on PCI && SCSI
1382         ---help---
1383           This driver supports PCI SCSI host adapters based on the Am53C974A
1384           chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard
1385           PCscsi/PCnet (Am53/79C974) solutions.
1386
1387           Documentation can be found in <file:Documentation/scsi/tmscsim.txt>.
1388
1389           Note that this driver does NOT support Tekram DC390W/U/F, which are
1390           based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those.
1391
1392           To compile this driver as a module, choose M here: the
1393           module will be called tmscsim.
1394
1395 config SCSI_T128
1396         tristate "Trantor T128/T128F/T228 SCSI support"
1397         depends on ISA && SCSI
1398         select SCSI_SPI_ATTRS
1399         select CHECK_SIGNATURE
1400         ---help---
1401           This is support for a SCSI host adapter. It is explained in section
1402           3.11 of the SCSI-HOWTO, available from
1403           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
1404           of the box, you may have to change some settings in
1405           <file:drivers/scsi/t128.h>.  Note that Trantor was purchased by
1406           Adaptec, and some former Trantor products are being sold under the
1407           Adaptec name.
1408
1409           To compile this driver as a module, choose M here: the
1410           module will be called t128.
1411
1412 config SCSI_U14_34F
1413         tristate "UltraStor 14F/34F support"
1414         depends on ISA && SCSI && ISA_DMA_API
1415         ---help---
1416           This is support for the UltraStor 14F and 34F SCSI-2 host adapters.
1417           The source at <file:drivers/scsi/u14-34f.c> contains some
1418           information about this hardware.  If the driver doesn't work out of
1419           the box, you may have to change some settings in
1420           <file: drivers/scsi/u14-34f.c>.  Read the SCSI-HOWTO, available from
1421           <http://www.tldp.org/docs.html#howto>.  Note that there is also
1422           another driver for the same hardware: "UltraStor SCSI support",
1423           below.  You should say Y to both only if you want 24F support as
1424           well.
1425
1426           To compile this driver as a module, choose M here: the
1427           module will be called u14-34f.
1428
1429 config SCSI_U14_34F_TAGGED_QUEUE
1430         bool "enable tagged command queueing"
1431         depends on SCSI_U14_34F
1432         help
1433           This is a feature of SCSI-2 which improves performance: the host
1434           adapter can send several SCSI commands to a device's queue even if
1435           previous commands haven't finished yet.
1436           This is equivalent to the "u14-34f=tc:y" boot option.
1437
1438 config SCSI_U14_34F_LINKED_COMMANDS
1439         bool "enable elevator sorting"
1440         depends on SCSI_U14_34F
1441         help
1442           This option enables elevator sorting for all probed SCSI disks and
1443           CD-ROMs. It definitely reduces the average seek distance when doing
1444           random seeks, but this does not necessarily result in a noticeable
1445           performance improvement: your mileage may vary...
1446           This is equivalent to the "u14-34f=lc:y" boot option.
1447
1448 config SCSI_U14_34F_MAX_TAGS
1449         int "maximum number of queued commands"
1450         depends on SCSI_U14_34F
1451         default "8"
1452         help
1453           This specifies how many SCSI commands can be maximally queued for
1454           each probed SCSI device. You should reduce the default value of 8
1455           only if you have disks with buggy or limited tagged command support.
1456           Minimum is 2 and maximum is 14. This value is also the window size
1457           used by the elevator sorting option above. The effective value used
1458           by the driver for each probed SCSI device is reported at boot time.
1459           This is equivalent to the "u14-34f=mq:8" boot option.
1460
1461 config SCSI_ULTRASTOR
1462         tristate "UltraStor SCSI support"
1463         depends on X86 && ISA && SCSI
1464         ---help---
1465           This is support for the UltraStor 14F, 24F and 34F SCSI-2 host
1466           adapter family.  This driver is explained in section 3.12 of the
1467           SCSI-HOWTO, available from
1468           <http://www.tldp.org/docs.html#howto>.  If it doesn't work out
1469           of the box, you may have to change some settings in
1470           <file:drivers/scsi/ultrastor.h>.
1471
1472           Note that there is also another driver for the same hardware:
1473           "UltraStor 14F/34F support", above.
1474
1475           To compile this driver as a module, choose M here: the
1476           module will be called ultrastor.
1477
1478 config SCSI_NSP32
1479         tristate "Workbit NinjaSCSI-32Bi/UDE support"
1480         depends on PCI && SCSI && !64BIT
1481         help
1482           This is support for the Workbit NinjaSCSI-32Bi/UDE PCI/Cardbus
1483           SCSI host adapter. Please read the SCSI-HOWTO, available from
1484           <http://www.tldp.org/docs.html#howto>.
1485
1486           To compile this driver as a module, choose M here: the
1487           module will be called nsp32.
1488
1489 config SCSI_DEBUG
1490         tristate "SCSI debugging host simulator"
1491         depends on SCSI
1492         help
1493           This is a host adapter simulator that can simulate multiple hosts
1494           each with multiple dummy SCSI devices (disks). It defaults to one
1495           host adapter with one dummy SCSI disk. Each dummy disk uses kernel
1496           RAM as storage (i.e. it is a ramdisk). To save space when multiple
1497           dummy disks are simulated, they share the same kernel RAM for 
1498           their storage. See <http://www.torque.net/sg/sdebug.html> for more
1499           information. This driver is primarily of use to those testing the
1500           SCSI and block subsystems. If unsure, say N.
1501
1502 config SCSI_MESH
1503         tristate "MESH (Power Mac internal SCSI) support"
1504         depends on PPC32 && PPC_PMAC && SCSI
1505         help
1506           Many Power Macintoshes and clones have a MESH (Macintosh Enhanced
1507           SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the
1508           other Power Macintoshes do). Say Y to include support for this SCSI
1509           adaptor.
1510
1511           To compile this driver as a module, choose M here: the
1512           module will be called mesh.
1513
1514 config SCSI_MESH_SYNC_RATE
1515         int "maximum synchronous transfer rate (MB/s) (0 = async)"
1516         depends on SCSI_MESH
1517         default "5"
1518         help
1519           On Power Macintoshes (and clones) where the MESH SCSI bus adaptor
1520           drives a bus which is entirely internal to the machine (such as the
1521           7500, 7600, 8500, etc.), the MESH is capable of synchronous
1522           operation at up to 10 MB/s. On machines where the SCSI bus
1523           controlled by the MESH can have external devices connected, it is
1524           usually rated at 5 MB/s. 5 is a safe value here unless you know the
1525           MESH SCSI bus is internal only; in that case you can say 10. Say 0
1526           to disable synchronous operation.
1527
1528 config SCSI_MESH_RESET_DELAY_MS
1529         int "initial bus reset delay (ms) (0 = no reset)"
1530         depends on SCSI_MESH
1531         default "4000"
1532
1533 config SCSI_MAC53C94
1534         tristate "53C94 (Power Mac external SCSI) support"
1535         depends on PPC32 && PPC_PMAC && SCSI
1536         help
1537           On Power Macintoshes (and clones) with two SCSI buses, the external
1538           SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older
1539           machines which only have one SCSI bus, such as the 7200, also use
1540           the 53C94. Say Y to include support for the 53C94.
1541
1542           To compile this driver as a module, choose M here: the
1543           module will be called mac53c94.
1544
1545 source "drivers/scsi/arm/Kconfig"
1546
1547 config JAZZ_ESP
1548         bool "MIPS JAZZ FAS216 SCSI support"
1549         depends on MACH_JAZZ && SCSI
1550         select SCSI_SPI_ATTRS
1551         help
1552           This is the driver for the onboard SCSI host adapter of MIPS Magnum
1553           4000, Acer PICA, Olivetti M700-10 and a few other identical OEM
1554           systems.
1555
1556 config A3000_SCSI
1557         tristate "A3000 WD33C93A support"
1558         depends on AMIGA && SCSI
1559         help
1560           If you have an Amiga 3000 and have SCSI devices connected to the
1561           built-in SCSI controller, say Y. Otherwise, say N.
1562
1563           To compile this driver as a module, choose M here: the
1564           module will be called a3000.
1565
1566 config A2091_SCSI
1567         tristate "A2091/A590 WD33C93A support"
1568         depends on ZORRO && SCSI
1569         help
1570           If you have a Commodore A2091 SCSI controller, say Y. Otherwise,
1571           say N.
1572
1573           To compile this driver as a module, choose M here: the
1574           module will be called a2091.
1575
1576 config GVP11_SCSI
1577         tristate "GVP Series II WD33C93A support"
1578         depends on ZORRO && SCSI
1579         ---help---
1580           If you have a Great Valley Products Series II SCSI controller,
1581           answer Y. Also say Y if you have a later model of GVP SCSI
1582           controller (such as the GVP A4008 or a Combo board). Otherwise,
1583           answer N. This driver does NOT work for the T-Rex series of
1584           accelerators from TekMagic and GVP-M.
1585
1586           To compile this driver as a module, choose M here: the
1587           module will be called gvp11.
1588
1589 config SCSI_A4000T
1590         tristate "A4000T NCR53c710 SCSI support (EXPERIMENTAL)"
1591         depends on AMIGA && SCSI && EXPERIMENTAL
1592         select SCSI_SPI_ATTRS
1593         help
1594           If you have an Amiga 4000T and have SCSI devices connected to the
1595           built-in SCSI controller, say Y. Otherwise, say N.
1596
1597           To compile this driver as a module, choose M here: the
1598           module will be called a4000t.
1599
1600 config SCSI_ZORRO7XX
1601         tristate "Zorro NCR53c710 SCSI support (EXPERIMENTAL)"
1602         depends on ZORRO && SCSI && EXPERIMENTAL
1603         select SCSI_SPI_ATTRS
1604         help
1605           Support for various NCR53c710-based SCSI controllers on Zorro
1606           expansion boards for the Amiga.
1607           This includes:
1608             - the Amiga 4091 Zorro III SCSI-2 controller,
1609             - the MacroSystem Development's WarpEngine Amiga SCSI-2 controller
1610               (info at
1611               <http://www.lysator.liu.se/amiga/ar/guide/ar310.guide?FEATURE5>),
1612             - the SCSI controller on the Phase5 Blizzard PowerUP 603e+
1613               accelerator card for the Amiga 1200,
1614             - the SCSI controller on the GVP Turbo 040/060 accelerator.
1615
1616 config ATARI_SCSI
1617         tristate "Atari native SCSI support"
1618         depends on ATARI && SCSI
1619         select SCSI_SPI_ATTRS
1620         ---help---
1621           If you have an Atari with built-in NCR5380 SCSI controller (TT,
1622           Falcon, ...) say Y to get it supported. Of course also, if you have
1623           a compatible SCSI controller (e.g. for Medusa).
1624
1625           To compile this driver as a module, choose M here: the
1626           module will be called atari_scsi.
1627
1628           This driver supports both styles of NCR integration into the
1629           system: the TT style (separate DMA), and the Falcon style (via
1630           ST-DMA, replacing ACSI).  It does NOT support other schemes, like
1631           in the Hades (without DMA).
1632
1633 config ATARI_SCSI_TOSHIBA_DELAY
1634         bool "Long delays for Toshiba CD-ROMs"
1635         depends on ATARI_SCSI
1636         help
1637           This option increases the delay after a SCSI arbitration to
1638           accommodate some flaky Toshiba CD-ROM drives. Say Y if you intend to
1639           use a Toshiba CD-ROM drive; otherwise, the option is not needed and
1640           would impact performance a bit, so say N.
1641
1642 config ATARI_SCSI_RESET_BOOT
1643         bool "Reset SCSI-devices at boottime"
1644         depends on ATARI_SCSI
1645         help
1646           Reset the devices on your Atari whenever it boots.  This makes the
1647           boot process fractionally longer but may assist recovery from errors
1648           that leave the devices with SCSI operations partway completed.
1649
1650 config TT_DMA_EMUL
1651         bool "Hades SCSI DMA emulator"
1652         depends on ATARI_SCSI && HADES
1653         help
1654           This option enables code which emulates the TT SCSI DMA chip on the
1655           Hades. This increases the SCSI transfer rates at least ten times
1656           compared to PIO transfers.
1657
1658 config MAC_SCSI
1659         bool "Macintosh NCR5380 SCSI"
1660         depends on MAC && SCSI=y
1661         select SCSI_SPI_ATTRS
1662         help
1663           This is the NCR 5380 SCSI controller included on most of the 68030
1664           based Macintoshes.  If you have one of these say Y and read the
1665           SCSI-HOWTO, available from
1666           <http://www.tldp.org/docs.html#howto>.
1667
1668 config MVME147_SCSI
1669         bool "WD33C93 SCSI driver for MVME147"
1670         depends on MVME147 && SCSI=y
1671         select SCSI_SPI_ATTRS
1672         help
1673           Support for the on-board SCSI controller on the Motorola MVME147
1674           single-board computer.
1675
1676 config MVME16x_SCSI
1677         tristate "NCR53C710 SCSI driver for MVME16x"
1678         depends on MVME16x && SCSI
1679         select SCSI_SPI_ATTRS
1680         help
1681           The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710
1682           SCSI controller chip.  Almost everyone using one of these boards
1683           will want to say Y to this question.
1684
1685 config BVME6000_SCSI
1686         tristate "NCR53C710 SCSI driver for BVME6000"
1687         depends on BVME6000 && SCSI
1688         select SCSI_SPI_ATTRS
1689         help
1690           The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710
1691           SCSI controller chip.  Almost everyone using one of these boards
1692           will want to say Y to this question.
1693
1694 config SUN3_SCSI
1695         tristate "Sun3 NCR5380 SCSI"
1696         depends on SUN3 && SCSI
1697         select SCSI_SPI_ATTRS
1698         help
1699           This option will enable support for the OBIO (onboard io) NCR5380
1700           SCSI controller found in the Sun 3/50 and 3/60, as well as for
1701           "Sun3" type VME scsi controllers also based on the NCR5380.
1702           General Linux information on the Sun 3 series (now discontinued)
1703           is at <http://www.angelfire.com/ca2/tech68k/sun3.html>.
1704
1705 config SUN3X_ESP
1706         bool "Sun3x ESP SCSI"
1707         depends on SUN3X && SCSI=y
1708         select SCSI_SPI_ATTRS
1709         help
1710           The ESP was an on-board SCSI controller used on Sun 3/80
1711           machines.  Say Y here to compile in support for it.
1712
1713 config SCSI_SUNESP
1714         tristate "Sparc ESP Scsi Driver"
1715         depends on SBUS && SCSI
1716         select SCSI_SPI_ATTRS
1717         help
1718           This is the driver for the Sun ESP SCSI host adapter. The ESP
1719           chipset is present in most SPARC SBUS-based computers.
1720
1721           To compile this driver as a module, choose M here: the
1722           module will be called esp.
1723
1724 config ZFCP
1725         tristate "FCP host bus adapter driver for IBM eServer zSeries"
1726         depends on S390 && QDIO && SCSI
1727         select SCSI_FC_ATTRS
1728         help
1729           If you want to access SCSI devices attached to your IBM eServer
1730           zSeries by means of Fibre Channel interfaces say Y.
1731           For details please refer to the documentation provided by IBM at
1732           <http://oss.software.ibm.com/developerworks/opensource/linux390>
1733
1734           This driver is also available as a module. This module will be
1735           called zfcp. If you want to compile it as a module, say M here
1736           and read <file:Documentation/kbuild/modules.txt>.
1737
1738 config SCSI_SRP
1739         tristate "SCSI RDMA Protocol helper library"
1740         depends on SCSI && PCI
1741         select SCSI_TGT
1742         help
1743           If you wish to use SRP target drivers, say Y.
1744
1745           To compile this driver as a module, choose M here: the
1746           module will be called libsrp.
1747
1748 endif # SCSI_LOWLEVEL
1749
1750 source "drivers/scsi/pcmcia/Kconfig"
1751
1752 endmenu