1.. SPDX-License-Identifier: GPL-2.0
2
3=========================================================
4BusLogic MultiMaster and FlashPoint SCSI Driver for Linux
5=========================================================
6
7			 Version 2.0.15 for Linux 2.0
8
9			 Version 2.1.15 for Linux 2.1
10
11			      PRODUCTION RELEASE
12
13				17 August 1998
14
15			       Leonard N. Zubkoff
16
17			       Dandelion Digital
18
19			       lnz@dandelion.com
20
21	 Copyright 1995-1998 by Leonard N. Zubkoff <lnz@dandelion.com>
22
23
24Introduction
25============
26
27BusLogic, Inc. designed and manufactured a variety of high performance SCSI
28host adapters which share a common programming interface across a diverse
29collection of bus architectures by virtue of their MultiMaster ASIC technology.
30BusLogic was acquired by Mylex Corporation in February 1996, but the products
31supported by this driver originated under the BusLogic name and so that name is
32retained in the source code and documentation.
33
34This driver supports all present BusLogic MultiMaster Host Adapters, and should
35support any future MultiMaster designs with little or no modification.  More
36recently, BusLogic introduced the FlashPoint Host Adapters, which are less
37costly and rely on the host CPU, rather than including an onboard processor.
38Despite not having an onboard CPU, the FlashPoint Host Adapters perform very
39well and have very low command latency.  BusLogic has recently provided me with
40the FlashPoint Driver Developer's Kit, which comprises documentation and freely
41redistributable source code for the FlashPoint SCCB Manager.  The SCCB Manager
42is the library of code that runs on the host CPU and performs functions
43analogous to the firmware on the MultiMaster Host Adapters.  Thanks to their
44having provided the SCCB Manager, this driver now supports the FlashPoint Host
45Adapters as well.
46
47My primary goals in writing this completely new BusLogic driver for Linux are
48to achieve the full performance that BusLogic SCSI Host Adapters and modern
49SCSI peripherals are capable of, and to provide a highly robust driver that can
50be depended upon for high performance mission critical applications.  All of
51the major performance features can be configured from the Linux kernel command
52line or at module initialization time, allowing individual installations to
53tune driver performance and error recovery to their particular needs.
54
55The latest information on Linux support for BusLogic SCSI Host Adapters, as
56well as the most recent release of this driver and the latest firmware for the
57BT-948/958/958D, will always be available from my Linux Home Page at URL
58"http://sourceforge.net/projects/dandelion/".
59
60Bug reports should be sent via electronic mail to "lnz@dandelion.com".  Please
61include with the bug report the complete configuration messages reported by the
62driver and SCSI subsystem at startup, along with any subsequent system messages
63relevant to SCSI operations, and a detailed description of your system's
64hardware configuration.
65
66Mylex has been an excellent company to work with and I highly recommend their
67products to the Linux community.  In November 1995, I was offered the
68opportunity to become a beta test site for their latest MultiMaster product,
69the BT-948 PCI Ultra SCSI Host Adapter, and then again for the BT-958 PCI Wide
70Ultra SCSI Host Adapter in January 1996.  This was mutually beneficial since
71Mylex received a degree and kind of testing that their own testing group cannot
72readily achieve, and the Linux community has available high performance host
73adapters that have been well tested with Linux even before being brought to
74market.  This relationship has also given me the opportunity to interact
75directly with their technical staff, to understand more about the internal
76workings of their products, and in turn to educate them about the needs and
77potential of the Linux community.
78
79More recently, Mylex has reaffirmed the company's interest in supporting the
80Linux community, and I am now working on a Linux driver for the DAC960 PCI RAID
81Controllers.  Mylex's interest and support is greatly appreciated.
82
83Unlike some other vendors, if you contact Mylex Technical Support with a
84problem and are running Linux, they will not tell you that your use of their
85products is unsupported.  Their latest product marketing literature even states
86"Mylex SCSI host adapters are compatible with all major operating systems
87including: ... Linux ...".
88
89Mylex Corporation is located at 34551 Ardenwood Blvd., Fremont, California
9094555, USA and can be reached at 510/796-6100 or on the World Wide Web at
91http://www.mylex.com.  Mylex HBA Technical Support can be reached by electronic
92mail at techsup@mylex.com, by Voice at 510/608-2400, or by FAX at 510/745-7715.
93Contact information for offices in Europe and Japan is available on the Web
94site.
95
96
97Driver Features
98===============
99
100Configuration Reporting and Testing
101-----------------------------------
102
103  During system initialization, the driver reports extensively on the host
104  adapter hardware configuration, including the synchronous transfer parameters
105  requested and negotiated with each target device.  AutoSCSI settings for
106  Synchronous Negotiation, Wide Negotiation, and Disconnect/Reconnect are
107  reported for each target device, as well as the status of Tagged Queuing.
108  If the same setting is in effect for all target devices, then a single word
109  or phrase is used; otherwise, a letter is provided for each target device to
110  indicate the individual status.  The following examples
111  should clarify this reporting format:
112
113    Synchronous Negotiation: Ultra
114
115      Synchronous negotiation is enabled for all target devices and the host
116      adapter will attempt to negotiate for 20.0 mega-transfers/second.
117
118    Synchronous Negotiation: Fast
119
120      Synchronous negotiation is enabled for all target devices and the host
121      adapter will attempt to negotiate for 10.0 mega-transfers/second.
122
123    Synchronous Negotiation: Slow
124
125      Synchronous negotiation is enabled for all target devices and the host
126      adapter will attempt to negotiate for 5.0 mega-transfers/second.
127
128    Synchronous Negotiation: Disabled
129
130      Synchronous negotiation is disabled and all target devices are limited to
131      asynchronous operation.
132
133    Synchronous Negotiation: UFSNUUU#UUUUUUUU
134
135      Synchronous negotiation to Ultra speed is enabled for target devices 0
136      and 4 through 15, to Fast speed for target device 1, to Slow speed for
137      target device 2, and is not permitted to target device 3.  The host
138      adapter's SCSI ID is represented by the "#".
139
140    The status of Wide Negotiation, Disconnect/Reconnect, and Tagged Queuing
141    are reported as "Enabled", Disabled", or a sequence of "Y" and "N" letters.
142
143Performance Features
144--------------------
145
146  BusLogic SCSI Host Adapters directly implement SCSI-2 Tagged Queuing, and so
147  support has been included in the driver to utilize tagged queuing with any
148  target devices that report having the tagged queuing capability.  Tagged
149  queuing allows for multiple outstanding commands to be issued to each target
150  device or logical unit, and can improve I/O performance substantially.  In
151  addition, BusLogic's Strict Round Robin Mode is used to optimize host adapter
152  performance, and scatter/gather I/O can support as many segments as can be
153  effectively utilized by the Linux I/O subsystem.  Control over the use of
154  tagged queuing for each target device as well as individual selection of the
155  tagged queue depth is available through driver options provided on the kernel
156  command line or at module initialization time.  By default, the queue depth
157  is determined automatically based on the host adapter's total queue depth and
158  the number, type, speed, and capabilities of the target devices found.  In
159  addition, tagged queuing is automatically disabled whenever the host adapter
160  firmware version is known not to implement it correctly, or whenever a tagged
161  queue depth of 1 is selected.  Tagged queuing is also disabled for individual
162  target devices if disconnect/reconnect is disabled for that device.
163
164Robustness Features
165-------------------
166
167  The driver implements extensive error recovery procedures.  When the higher
168  level parts of the SCSI subsystem request that a timed out command be reset,
169  a selection is made between a full host adapter hard reset and SCSI bus reset
170  versus sending a bus device reset message to the individual target device
171  based on the recommendation of the SCSI subsystem.  Error recovery strategies
172  are selectable through driver options individually for each target device,
173  and also include sending a bus device reset to the specific target device
174  associated with the command being reset, as well as suppressing error
175  recovery entirely to avoid perturbing an improperly functioning device.  If
176  the bus device reset error recovery strategy is selected and sending a bus
177  device reset does not restore correct operation, the next command that is
178  reset will force a full host adapter hard reset and SCSI bus reset.  SCSI bus
179  resets caused by other devices and detected by the host adapter are also
180  handled by issuing a soft reset to the host adapter and re-initialization.
181  Finally, if tagged queuing is active and more than one command reset occurs
182  in a 10 minute interval, or if a command reset occurs within the first 10
183  minutes of operation, then tagged queuing will be disabled for that target
184  device.  These error recovery options improve overall system robustness by
185  preventing individual errant devices from causing the system as a whole to
186  lock up or crash, and thereby allowing a clean shutdown and restart after the
187  offending component is removed.
188
189PCI Configuration Support
190-------------------------
191
192  On PCI systems running kernels compiled with PCI BIOS support enabled, this
193  driver will interrogate the PCI configuration space and use the I/O port
194  addresses assigned by the system BIOS, rather than the ISA compatible I/O
195  port addresses.  The ISA compatible I/O port address is then disabled by the
196  driver.  On PCI systems it is also recommended that the AutoSCSI utility be
197  used to disable the ISA compatible I/O port entirely as it is not necessary.
198  The ISA compatible I/O port is disabled by default on the BT-948/958/958D.
199
200/proc File System Support
201-------------------------
202
203  Copies of the host adapter configuration information together with updated
204  data transfer and error recovery statistics are available through the
205  /proc/scsi/BusLogic/<N> interface.
206
207Shared Interrupts Support
208-------------------------
209
210  On systems that support shared interrupts, any number of BusLogic Host
211  Adapters may share the same interrupt request channel.
212
213
214Supported Host Adapters
215=======================
216
217The following list comprises the supported BusLogic SCSI Host Adapters as of
218the date of this document.  It is recommended that anyone purchasing a BusLogic
219Host Adapter not in the following table contact the author beforehand to verify
220that it is or will be supported.
221
222FlashPoint Series PCI Host Adapters:
223
224=======================	=============================================
225FlashPoint LT (BT-930)	Ultra SCSI-3
226FlashPoint LT (BT-930R)	Ultra SCSI-3 with RAIDPlus
227FlashPoint LT (BT-920)	Ultra SCSI-3 (BT-930 without BIOS)
228FlashPoint DL (BT-932)	Dual Channel Ultra SCSI-3
229FlashPoint DL (BT-932R)	Dual Channel Ultra SCSI-3 with RAIDPlus
230FlashPoint LW (BT-950)	Wide Ultra SCSI-3
231FlashPoint LW (BT-950R)	Wide Ultra SCSI-3 with RAIDPlus
232FlashPoint DW (BT-952)	Dual Channel Wide Ultra SCSI-3
233FlashPoint DW (BT-952R)	Dual Channel Wide Ultra SCSI-3 with RAIDPlus
234=======================	=============================================
235
236MultiMaster "W" Series Host Adapters:
237
238=======     ===		==============================
239BT-948	    PCI		Ultra SCSI-3
240BT-958	    PCI		Wide Ultra SCSI-3
241BT-958D	    PCI		Wide Differential Ultra SCSI-3
242=======     ===		==============================
243
244MultiMaster "C" Series Host Adapters:
245
246========    ====	==============================
247BT-946C	    PCI		Fast SCSI-2
248BT-956C	    PCI		Wide Fast SCSI-2
249BT-956CD    PCI		Wide Differential Fast SCSI-2
250BT-445C	    VLB		Fast SCSI-2
251BT-747C	    EISA	Fast SCSI-2
252BT-757C	    EISA	Wide Fast SCSI-2
253BT-757CD    EISA	Wide Differential Fast SCSI-2
254BT-545C	    ISA		Fast SCSI-2
255BT-540CF    ISA		Fast SCSI-2
256========    ====	==============================
257
258MultiMaster "S" Series Host Adapters:
259
260=======     ====	==============================
261BT-445S	    VLB		Fast SCSI-2
262BT-747S	    EISA	Fast SCSI-2
263BT-747D	    EISA	Differential Fast SCSI-2
264BT-757S	    EISA	Wide Fast SCSI-2
265BT-757D	    EISA	Wide Differential Fast SCSI-2
266BT-545S	    ISA		Fast SCSI-2
267BT-542D	    ISA		Differential Fast SCSI-2
268BT-742A	    EISA	SCSI-2 (742A revision H)
269BT-542B	    ISA		SCSI-2 (542B revision H)
270=======     ====	==============================
271
272MultiMaster "A" Series Host Adapters:
273
274=======     ====	==============================
275BT-742A	    EISA	SCSI-2 (742A revisions A - G)
276BT-542B	    ISA		SCSI-2 (542B revisions A - G)
277=======     ====	==============================
278
279AMI FastDisk Host Adapters that are true BusLogic MultiMaster clones are also
280supported by this driver.
281
282BusLogic SCSI Host Adapters are available packaged both as bare boards and as
283retail kits.  The BT- model numbers above refer to the bare board packaging.
284The retail kit model numbers are found by replacing BT- with KT- in the above
285list.  The retail kit includes the bare board and manual as well as cabling and
286driver media and documentation that are not provided with bare boards.
287
288
289FlashPoint Installation Notes
290=============================
291
292RAIDPlus Support
293----------------
294
295  FlashPoint Host Adapters now include RAIDPlus, Mylex's bootable software
296  RAID.  RAIDPlus is not supported on Linux, and there are no plans to support
297  it.  The MD driver in Linux 2.0 provides for concatenation (LINEAR) and
298  striping (RAID-0), and support for mirroring (RAID-1), fixed parity (RAID-4),
299  and distributed parity (RAID-5) is available separately.  The built-in Linux
300  RAID support is generally more flexible and is expected to perform better
301  than RAIDPlus, so there is little impetus to include RAIDPlus support in the
302  BusLogic driver.
303
304Enabling UltraSCSI Transfers
305----------------------------
306
307  FlashPoint Host Adapters ship with their configuration set to "Factory
308  Default" settings that are conservative and do not allow for UltraSCSI speed
309  to be negotiated.  This results in fewer problems when these host adapters
310  are installed in systems with cabling or termination that is not sufficient
311  for UltraSCSI operation, or where existing SCSI devices do not properly
312  respond to synchronous transfer negotiation for UltraSCSI speed.  AutoSCSI
313  may be used to load "Optimum Performance" settings which allow UltraSCSI
314  speed to be negotiated with all devices, or UltraSCSI speed can be enabled on
315  an individual basis.  It is recommended that SCAM be manually disabled after
316  the "Optimum Performance" settings are loaded.
317
318
319BT-948/958/958D Installation Notes
320==================================
321
322The BT-948/958/958D PCI Ultra SCSI Host Adapters have some features which may
323require attention in some circumstances when installing Linux.
324
325PCI I/O Port Assignments
326------------------------
327
328  When configured to factory default settings, the BT-948/958/958D will only
329  recognize the PCI I/O port assignments made by the motherboard's PCI BIOS.
330  The BT-948/958/958D will not respond to any of the ISA compatible I/O ports
331  that previous BusLogic SCSI Host Adapters respond to.  This driver supports
332  the PCI I/O port assignments, so this is the preferred configuration.
333  However, if the obsolete BusLogic driver must be used for any reason, such as
334  a Linux distribution that does not yet use this driver in its boot kernel,
335  BusLogic has provided an AutoSCSI configuration option to enable a legacy ISA
336  compatible I/O port.
337
338  To enable this backward compatibility option, invoke the AutoSCSI utility via
339  Ctrl-B at system startup and select "Adapter Configuration", "View/Modify
340  Configuration", and then change the "ISA Compatible Port" setting from
341  "Disable" to "Primary" or "Alternate".  Once this driver has been installed,
342  the "ISA Compatible Port" option should be set back to "Disable" to avoid
343  possible future I/O port conflicts.  The older BT-946C/956C/956CD also have
344  this configuration option, but the factory default setting is "Primary".
345
346PCI Slot Scanning Order
347-----------------------
348
349  In systems with multiple BusLogic PCI Host Adapters, the order in which the
350  PCI slots are scanned may appear reversed with the BT-948/958/958D as
351  compared to the BT-946C/956C/956CD.  For booting from a SCSI disk to work
352  correctly, it is necessary that the host adapter's BIOS and the kernel agree
353  on which disk is the boot device, which requires that they recognize the PCI
354  host adapters in the same order.  The motherboard's PCI BIOS provides a
355  standard way of enumerating the PCI host adapters, which is used by the Linux
356  kernel.  Some PCI BIOS implementations enumerate the PCI slots in order of
357  increasing bus number and device number, while others do so in the opposite
358  direction.
359
360  Unfortunately, Microsoft decided that Windows 95 would always enumerate the
361  PCI slots in order of increasing bus number and device number regardless of
362  the PCI BIOS enumeration, and requires that their scheme be supported by the
363  host adapter's BIOS to receive Windows 95 certification.  Therefore, the
364  factory default settings of the BT-948/958/958D enumerate the host adapters
365  by increasing bus number and device number.  To disable this feature, invoke
366  the AutoSCSI utility via Ctrl-B at system startup and select "Adapter
367  Configuration", "View/Modify Configuration", press Ctrl-F10, and then change
368  the "Use Bus And Device # For PCI Scanning Seq." option to OFF.
369
370  This driver will interrogate the setting of the PCI Scanning Sequence option
371  so as to recognize the host adapters in the same order as they are enumerated
372  by the host adapter's BIOS.
373
374Enabling UltraSCSI Transfers
375----------------------------
376
377  The BT-948/958/958D ship with their configuration set to "Factory Default"
378  settings that are conservative and do not allow for UltraSCSI speed to be
379  negotiated.  This results in fewer problems when these host adapters are
380  installed in systems with cabling or termination that is not sufficient for
381  UltraSCSI operation, or where existing SCSI devices do not properly respond
382  to synchronous transfer negotiation for UltraSCSI speed.  AutoSCSI may be
383  used to load "Optimum Performance" settings which allow UltraSCSI speed to be
384  negotiated with all devices, or UltraSCSI speed can be enabled on an
385  individual basis.  It is recommended that SCAM be manually disabled after the
386  "Optimum Performance" settings are loaded.
387
388
389Driver Options
390==============
391
392BusLogic Driver Options may be specified either via the Linux Kernel Command
393Line or via the Loadable Kernel Module Installation Facility.  Driver Options
394for multiple host adapters may be specified either by separating the option
395strings by a semicolon, or by specifying multiple "BusLogic=" strings on the
396command line.  Individual option specifications for a single host adapter are
397separated by commas.  The Probing and Debugging Options apply to all host
398adapters whereas the remaining options apply individually only to the
399selected host adapter.
400
401The BusLogic Driver Probing Options comprise the following:
402
403IO:<integer>
404
405  The "IO:" option specifies an ISA I/O Address to be probed for a non-PCI
406  MultiMaster Host Adapter.  If neither "IO:" nor "NoProbeISA" options are
407  specified, then the standard list of BusLogic MultiMaster ISA I/O Addresses
408  will be probed (0x330, 0x334, 0x230, 0x234, 0x130, and 0x134).  Multiple
409  "IO:" options may be specified to precisely determine the I/O Addresses to
410  be probed, but the probe order will always follow the standard list.
411
412NoProbe
413
414  The "NoProbe" option disables all probing and therefore no BusLogic Host
415  Adapters will be detected.
416
417NoProbeISA
418
419  The "NoProbeISA" option disables probing of the standard BusLogic ISA I/O
420  Addresses and therefore only PCI MultiMaster and FlashPoint Host Adapters
421  will be detected.
422
423NoProbePCI
424
425  The "NoProbePCI" options disables the interrogation of PCI Configuration
426  Space and therefore only ISA Multimaster Host Adapters will be detected, as
427  well as PCI Multimaster Host Adapters that have their ISA Compatible I/O
428  Port set to "Primary" or "Alternate".
429
430NoSortPCI
431
432  The "NoSortPCI" option forces PCI MultiMaster Host Adapters to be
433  enumerated in the order provided by the PCI BIOS, ignoring any setting of
434  the AutoSCSI "Use Bus And Device # For PCI Scanning Seq." option.
435
436MultiMasterFirst
437
438  The "MultiMasterFirst" option forces MultiMaster Host Adapters to be probed
439  before FlashPoint Host Adapters.  By default, if both FlashPoint and PCI
440  MultiMaster Host Adapters are present, this driver will probe for
441  FlashPoint Host Adapters first unless the BIOS primary disk is controlled
442  by the first PCI MultiMaster Host Adapter, in which case MultiMaster Host
443  Adapters will be probed first.
444
445FlashPointFirst
446
447  The "FlashPointFirst" option forces FlashPoint Host Adapters to be probed
448  before MultiMaster Host Adapters.
449
450The BusLogic Driver Tagged Queuing Options allow for explicitly specifying
451the Queue Depth and whether Tagged Queuing is permitted for each Target
452Device (assuming that the Target Device supports Tagged Queuing).  The Queue
453Depth is the number of SCSI Commands that are allowed to be concurrently
454presented for execution (either to the Host Adapter or Target Device).  Note
455that explicitly enabling Tagged Queuing may lead to problems; the option to
456enable or disable Tagged Queuing is provided primarily to allow disabling
457Tagged Queuing on Target Devices that do not implement it correctly.  The
458following options are available:
459
460QueueDepth:<integer>
461
462  The "QueueDepth:" or QD:" option specifies the Queue Depth to use for all
463  Target Devices that support Tagged Queuing, as well as the maximum Queue
464  Depth for devices that do not support Tagged Queuing.  If no Queue Depth
465  option is provided, the Queue Depth will be determined automatically based
466  on the Host Adapter's Total Queue Depth and the number, type, speed, and
467  capabilities of the detected Target Devices.  For Host Adapters that
468  require ISA Bounce Buffers, the Queue Depth is automatically set by default
469  to BusLogic_TaggedQueueDepthBB or BusLogic_UntaggedQueueDepthBB to avoid
470  excessive preallocation of DMA Bounce Buffer memory.  Target Devices that
471  do not support Tagged Queuing always have their Queue Depth set to
472  BusLogic_UntaggedQueueDepth or BusLogic_UntaggedQueueDepthBB, unless a
473  lower Queue Depth option is provided.  A Queue Depth of 1 automatically
474  disables Tagged Queuing.
475
476QueueDepth:[<integer>,<integer>...]
477
478  The "QueueDepth:[...]" or "QD:[...]" option specifies the Queue Depth
479  individually for each Target Device.  If an <integer> is omitted, the
480  associated Target Device will have its Queue Depth selected automatically.
481
482TaggedQueuing:Default
483
484  The "TaggedQueuing:Default" or "TQ:Default" option permits Tagged Queuing
485  based on the firmware version of the BusLogic Host Adapter and based on
486  whether the Queue Depth allows queuing multiple commands.
487
488TaggedQueuing:Enable
489
490  The "TaggedQueuing:Enable" or "TQ:Enable" option enables Tagged Queuing for
491  all Target Devices on this Host Adapter, overriding any limitation that
492  would otherwise be imposed based on the Host Adapter firmware version.
493
494TaggedQueuing:Disable
495
496  The "TaggedQueuing:Disable" or "TQ:Disable" option disables Tagged Queuing
497  for all Target Devices on this Host Adapter.
498
499TaggedQueuing:<Target-Spec>
500
501  The "TaggedQueuing:<Target-Spec>" or "TQ:<Target-Spec>" option controls
502  Tagged Queuing individually for each Target Device.  <Target-Spec> is a
503  sequence of "Y", "N", and "X" characters.  "Y" enables Tagged Queuing, "N"
504  disables Tagged Queuing, and "X" accepts the default based on the firmware
505  version.  The first character refers to Target Device 0, the second to
506  Target Device 1, and so on; if the sequence of "Y", "N", and "X" characters
507  does not cover all the Target Devices, unspecified characters are assumed
508  to be "X".
509
510The BusLogic Driver Miscellaneous Options comprise the following:
511
512BusSettleTime:<seconds>
513
514  The "BusSettleTime:" or "BST:" option specifies the Bus Settle Time in
515  seconds.  The Bus Settle Time is the amount of time to wait between a Host
516  Adapter Hard Reset which initiates a SCSI Bus Reset and issuing any SCSI
517  Commands.  If unspecified, it defaults to BusLogic_DefaultBusSettleTime.
518
519InhibitTargetInquiry
520
521  The "InhibitTargetInquiry" option inhibits the execution of an Inquire
522  Target Devices or Inquire Installed Devices command on MultiMaster Host
523  Adapters.  This may be necessary with some older Target Devices that do not
524  respond correctly when Logical Units above 0 are addressed.
525
526The BusLogic Driver Debugging Options comprise the following:
527
528TraceProbe
529
530  The "TraceProbe" option enables tracing of Host Adapter Probing.
531
532TraceHardwareReset
533
534  The "TraceHardwareReset" option enables tracing of Host Adapter Hardware
535  Reset.
536
537TraceConfiguration
538
539  The "TraceConfiguration" option enables tracing of Host Adapter
540  Configuration.
541
542TraceErrors
543
544  The "TraceErrors" option enables tracing of SCSI Commands that return an
545  error from the Target Device.  The CDB and Sense Data will be printed for
546  each SCSI Command that fails.
547
548Debug
549
550  The "Debug" option enables all debugging options.
551
552The following examples demonstrate setting the Queue Depth for Target Devices
5531 and 2 on the first host adapter to 7 and 15, the Queue Depth for all Target
554Devices on the second host adapter to 31, and the Bus Settle Time on the
555second host adapter to 30 seconds.
556
557Linux Kernel Command Line::
558
559  linux BusLogic=QueueDepth:[,7,15];QueueDepth:31,BusSettleTime:30
560
561LILO Linux Boot Loader (in /etc/lilo.conf)::
562
563  append = "BusLogic=QueueDepth:[,7,15];QueueDepth:31,BusSettleTime:30"
564
565INSMOD Loadable Kernel Module Installation Facility::
566
567  insmod BusLogic.o \
568      'BusLogic="QueueDepth:[,7,15];QueueDepth:31,BusSettleTime:30"'
569
570
571.. Note::
572
573      Module Utilities 2.1.71 or later is required for correct parsing
574      of driver options containing commas.
575
576
577Driver Installation
578===================
579
580This distribution was prepared for Linux kernel version 2.0.35, but should be
581compatible with 2.0.4 or any later 2.0 series kernel.
582
583To install the new BusLogic SCSI driver, you may use the following commands,
584replacing "/usr/src" with wherever you keep your Linux kernel source tree::
585
586  cd /usr/src
587  tar -xvzf BusLogic-2.0.15.tar.gz
588  mv README.* LICENSE.* BusLogic.[ch] FlashPoint.c linux/drivers/scsi
589  patch -p0 < BusLogic.patch (only for 2.0.33 and below)
590  cd linux
591  make config
592  make zImage
593
594Then install "arch/x86/boot/zImage" as your standard kernel, run lilo if
595appropriate, and reboot.
596
597
598BusLogic Announcements Mailing List
599===================================
600
601The BusLogic Announcements Mailing List provides a forum for informing Linux
602users of new driver releases and other announcements regarding Linux support
603for BusLogic SCSI Host Adapters.  To join the mailing list, send a message to
604"buslogic-announce-request@dandelion.com" with the line "subscribe" in the
605message body.
606