README.BusLogic
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:28k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

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