Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

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