^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.