1 .. SPDX-License-Identifier: GPL-2.0 2 3 ============================================== 4 BusLogic MultiMaster and FlashPoint SCSI Drive 5 ============================================== 6 7 Version 2.0.15 for Li 8 9 Version 2.1.15 for Li 10 11 PRODUCTION RELEA 12 13 17 August 1998 14 15 Leonard N. Zubk 16 17 Dandelion Digit 18 19 lnz@dandelion.c 20 21 Copyright 1995-1998 by Leonard N. Zub< 22 23 24 Introduction 25 ============ 26 27 BusLogic, Inc. designed and manufactured a var 28 host adapters which share a common programming 29 collection of bus architectures by virtue of t 30 BusLogic was acquired by Mylex Corporation in 31 supported by this driver originated under the 32 retained in the source code and documentation. 33 34 This driver supports all present BusLogic Mult 35 support any future MultiMaster designs with li 36 recently, BusLogic introduced the FlashPoint H 37 costly and rely on the host CPU, rather than i 38 Despite not having an onboard CPU, the FlashPo 39 well and have very low command latency. BusLo 40 the FlashPoint Driver Developer's Kit, which c 41 redistributable source code for the FlashPoint 42 is the library of code that runs on the host C 43 analogous to the firmware on the MultiMaster H 44 having provided the SCCB Manager, this driver 45 Adapters as well. 46 47 My primary goals in writing this completely ne 48 to achieve the full performance that BusLogic 49 SCSI peripherals are capable of, and to provid 50 be depended upon for high performance mission 51 the major performance features can be configur 52 line or at module initialization time, allowin 53 tune driver performance and error recovery to 54 55 The latest information on Linux support for Bu 56 well as the most recent release of this driver 57 BT-948/958/958D, will always be available from 58 "http://sourceforge.net/projects/dandelion/". 59 60 Bug reports should be sent via electronic mail 61 include with the bug report the complete confi 62 driver and SCSI subsystem at startup, along wi 63 relevant to SCSI operations, and a detailed de 64 hardware configuration. 65 66 Mylex has been an excellent company to work wi 67 products to the Linux community. In November 68 opportunity to become a beta test site for the 69 the BT-948 PCI Ultra SCSI Host Adapter, and th 70 Ultra SCSI Host Adapter in January 1996. This 71 Mylex received a degree and kind of testing th 72 readily achieve, and the Linux community has a 73 adapters that have been well tested with Linux 74 market. This relationship has also given me t 75 directly with their technical staff, to unders 76 workings of their products, and in turn to edu 77 potential of the Linux community. 78 79 More recently, Mylex has reaffirmed the compan 80 Linux community, and I am now working on a Lin 81 Controllers. Mylex's interest and support is 82 83 Unlike some other vendors, if you contact Myle 84 problem and are running Linux, they will not t 85 products is unsupported. Their latest product 86 "Mylex SCSI host adapters are compatible with 87 including: ... Linux ...". 88 89 Mylex Corporation is located at 34551 Ardenwoo 90 94555, USA and can be reached at 510/796-6100 91 http://www.mylex.com. Mylex HBA Technical Sup 92 mail at techsup@mylex.com, by Voice at 510/608 93 Contact information for offices in Europe and 94 site. 95 96 97 Driver Features 98 =============== 99 100 Configuration Reporting and Testing 101 ----------------------------------- 102 103 During system initialization, the driver rep 104 adapter hardware configuration, including th 105 requested and negotiated with each target de 106 Synchronous Negotiation, Wide Negotiation, a 107 reported for each target device, as well as 108 If the same setting is in effect for all tar 109 or phrase is used; otherwise, a letter is pr 110 indicate the individual status. The followi 111 should clarify this reporting format: 112 113 Synchronous Negotiation: Ultra 114 115 Synchronous negotiation is enabled for a 116 adapter will attempt to negotiate for 20 117 118 Synchronous Negotiation: Fast 119 120 Synchronous negotiation is enabled for a 121 adapter will attempt to negotiate for 10 122 123 Synchronous Negotiation: Slow 124 125 Synchronous negotiation is enabled for a 126 adapter will attempt to negotiate for 5. 127 128 Synchronous Negotiation: Disabled 129 130 Synchronous negotiation is disabled and 131 asynchronous operation. 132 133 Synchronous Negotiation: UFSNUUU#UUUUUUUU 134 135 Synchronous negotiation to Ultra speed i 136 and 4 through 15, to Fast speed for targ 137 target device 2, and is not permitted to 138 adapter's SCSI ID is represented by the 139 140 The status of Wide Negotiation, Disconnect 141 are reported as "Enabled", Disabled", or a 142 143 Performance Features 144 -------------------- 145 146 BusLogic SCSI Host Adapters directly impleme 147 support has been included in the driver to u 148 target devices that report having the tagged 149 queuing allows for multiple outstanding comm 150 device or logical unit, and can improve I/O 151 addition, BusLogic's Strict Round Robin Mode 152 performance, and scatter/gather I/O can supp 153 effectively utilized by the Linux I/O subsys 154 tagged queuing for each target device as wel 155 tagged queue depth is available through driv 156 command line or at module initialization tim 157 is determined automatically based on the hos 158 the number, type, speed, and capabilities of 159 addition, tagged queuing is automatically di 160 firmware version is known not to implement i 161 queue depth of 1 is selected. Tagged queuin 162 target devices if disconnect/reconnect is di 163 164 Robustness Features 165 ------------------- 166 167 The driver implements extensive error recove 168 level parts of the SCSI subsystem request th 169 a selection is made between a full host adap 170 versus sending a bus device reset message to 171 based on the recommendation of the SCSI subs 172 are selectable through driver options indivi 173 and also include sending a bus device reset 174 associated with the command being reset, as 175 recovery entirely to avoid perturbing an imp 176 the bus device reset error recovery strategy 177 device reset does not restore correct operat 178 reset will force a full host adapter hard re 179 resets caused by other devices and detected 180 handled by issuing a soft reset to the host 181 Finally, if tagged queuing is active and mor 182 in a 10 minute interval, or if a command res 183 minutes of operation, then tagged queuing wi 184 device. These error recovery options improv 185 preventing individual errant devices from ca 186 lock up or crash, and thereby allowing a cle 187 offending component is removed. 188 189 PCI Configuration Support 190 ------------------------- 191 192 On PCI systems running kernels compiled with 193 driver will interrogate the PCI configuratio 194 addresses assigned by the system BIOS, rathe 195 port addresses. The ISA compatible I/O port 196 driver. On PCI systems it is also recommend 197 used to disable the ISA compatible I/O port 198 The ISA compatible I/O port is disabled by d 199 200 /proc File System Support 201 ------------------------- 202 203 Copies of the host adapter configuration inf 204 data transfer and error recovery statistics 205 /proc/scsi/BusLogic/<N> interface. 206 207 Shared Interrupts Support 208 ------------------------- 209 210 On systems that support shared interrupts, a 211 Adapters may share the same interrupt reques 212 213 214 Supported Host Adapters 215 ======================= 216 217 The following list comprises the supported Bus 218 the date of this document. It is recommended 219 Host Adapter not in the following table contac 220 that it is or will be supported. 221 222 FlashPoint Series PCI Host Adapters: 223 224 ======================= ====================== 225 FlashPoint LT (BT-930) Ultra SCSI-3 226 FlashPoint LT (BT-930R) Ultra SCSI-3 with RAID 227 FlashPoint LT (BT-920) Ultra SCSI-3 (BT-930 w 228 FlashPoint DL (BT-932) Dual Channel Ultra SCS 229 FlashPoint DL (BT-932R) Dual Channel Ultra SCS 230 FlashPoint LW (BT-950) Wide Ultra SCSI-3 231 FlashPoint LW (BT-950R) Wide Ultra SCSI-3 with 232 FlashPoint DW (BT-952) Dual Channel Wide Ultr 233 FlashPoint DW (BT-952R) Dual Channel Wide Ultr 234 ======================= ====================== 235 236 MultiMaster "W" Series Host Adapters: 237 238 ======= === ====================== 239 BT-948 PCI Ultra SCSI-3 240 BT-958 PCI Wide Ultra SCSI-3 241 BT-958D PCI Wide Differential Ultr 242 ======= === ====================== 243 244 MultiMaster "C" Series Host Adapters: 245 246 ======== ==== ====================== 247 BT-946C PCI Fast SCSI-2 248 BT-956C PCI Wide Fast SCSI-2 249 BT-956CD PCI Wide Differential Fast 250 BT-445C VLB Fast SCSI-2 251 BT-747C EISA Fast SCSI-2 252 BT-757C EISA Wide Fast SCSI-2 253 BT-757CD EISA Wide Differential Fast 254 ======== ==== ====================== 255 256 MultiMaster "S" Series Host Adapters: 257 258 ======= ==== ====================== 259 BT-445S VLB Fast SCSI-2 260 BT-747S EISA Fast SCSI-2 261 BT-747D EISA Differential Fast SCSI 262 BT-757S EISA Wide Fast SCSI-2 263 BT-757D EISA Wide Differential Fast 264 BT-742A EISA SCSI-2 (742A revision 265 ======= ==== ====================== 266 267 MultiMaster "A" Series Host Adapters: 268 269 ======= ==== ====================== 270 BT-742A EISA SCSI-2 (742A revisions 271 ======= ==== ====================== 272 273 AMI FastDisk Host Adapters that are true BusLo 274 supported by this driver. 275 276 BusLogic SCSI Host Adapters are available pack 277 retail kits. The BT- model numbers above refe 278 The retail kit model numbers are found by repl 279 list. The retail kit includes the bare board 280 driver media and documentation that are not pr 281 282 283 FlashPoint Installation Notes 284 ============================= 285 286 RAIDPlus Support 287 ---------------- 288 289 FlashPoint Host Adapters now include RAIDPlu 290 RAID. RAIDPlus is not supported on Linux, a 291 it. The MD driver in Linux 2.0 provides for 292 striping (RAID-0), and support for mirroring 293 and distributed parity (RAID-5) is available 294 RAID support is generally more flexible and 295 than RAIDPlus, so there is little impetus to 296 BusLogic driver. 297 298 Enabling UltraSCSI Transfers 299 ---------------------------- 300 301 FlashPoint Host Adapters ship with their con 302 Default" settings that are conservative and 303 to be negotiated. This results in fewer pro 304 are installed in systems with cabling or ter 305 for UltraSCSI operation, or where existing S 306 respond to synchronous transfer negotiation 307 may be used to load "Optimum Performance" se 308 speed to be negotiated with all devices, or 309 an individual basis. It is recommended that 310 the "Optimum Performance" settings are loade 311 312 313 BT-948/958/958D Installation Notes 314 ================================== 315 316 The BT-948/958/958D PCI Ultra SCSI Host Adapte 317 require attention in some circumstances when i 318 319 PCI I/O Port Assignments 320 ------------------------ 321 322 When configured to factory default settings, 323 recognize the PCI I/O port assignments made 324 The BT-948/958/958D will not respond to any 325 that previous BusLogic SCSI Host Adapters re 326 the PCI I/O port assignments, so this is the 327 However, if the obsolete BusLogic driver mus 328 a Linux distribution that does not yet use t 329 BusLogic has provided an AutoSCSI configurat 330 compatible I/O port. 331 332 To enable this backward compatibility option 333 Ctrl-B at system startup and select "Adapter 334 Configuration", and then change the "ISA Com 335 "Disable" to "Primary" or "Alternate". Once 336 the "ISA Compatible Port" option should be s 337 possible future I/O port conflicts. The old 338 this configuration option, but the factory d 339 340 PCI Slot Scanning Order 341 ----------------------- 342 343 In systems with multiple BusLogic PCI Host A 344 PCI slots are scanned may appear reversed wi 345 compared to the BT-946C/956C/956CD. For boo 346 correctly, it is necessary that the host ada 347 on which disk is the boot device, which requ 348 host adapters in the same order. The mother 349 standard way of enumerating the PCI host ada 350 kernel. Some PCI BIOS implementations enume 351 increasing bus number and device number, whi 352 direction. 353 354 Unfortunately, Microsoft decided that Window 355 PCI slots in order of increasing bus number 356 the PCI BIOS enumeration, and requires that 357 host adapter's BIOS to receive Windows 95 ce 358 factory default settings of the BT-948/958/9 359 by increasing bus number and device number. 360 the AutoSCSI utility via Ctrl-B at system st 361 Configuration", "View/Modify Configuration", 362 the "Use Bus And Device # For PCI Scanning S 363 364 This driver will interrogate the setting of 365 so as to recognize the host adapters in the 366 by the host adapter's BIOS. 367 368 Enabling UltraSCSI Transfers 369 ---------------------------- 370 371 The BT-948/958/958D ship with their configur 372 settings that are conservative and do not al 373 negotiated. This results in fewer problems 374 installed in systems with cabling or termina 375 UltraSCSI operation, or where existing SCSI 376 to synchronous transfer negotiation for Ultr 377 used to load "Optimum Performance" settings 378 negotiated with all devices, or UltraSCSI sp 379 individual basis. It is recommended that SC 380 "Optimum Performance" settings are loaded. 381 382 383 Driver Options 384 ============== 385 386 BusLogic Driver Options may be specified eithe 387 Line or via the Loadable Kernel Module Install 388 for multiple host adapters may be specified ei 389 strings by a semicolon, or by specifying multi 390 command line. Individual option specification 391 separated by commas. The Probing and Debuggin 392 adapters whereas the remaining options apply i 393 selected host adapter. 394 395 The BusLogic Driver Probing Options comprise t 396 397 NoProbe 398 399 The "NoProbe" option disables all probing an 400 Adapters will be detected. 401 402 NoProbePCI 403 404 The "NoProbePCI" options disables the interr 405 Space and therefore only ISA Multimaster Hos 406 well as PCI Multimaster Host Adapters that h 407 Port set to "Primary" or "Alternate". 408 409 NoSortPCI 410 411 The "NoSortPCI" option forces PCI MultiMaste 412 enumerated in the order provided by the PCI 413 the AutoSCSI "Use Bus And Device # For PCI S 414 415 MultiMasterFirst 416 417 The "MultiMasterFirst" option forces MultiMa 418 before FlashPoint Host Adapters. By default 419 MultiMaster Host Adapters are present, this 420 FlashPoint Host Adapters first unless the BI 421 by the first PCI MultiMaster Host Adapter, i 422 Adapters will be probed first. 423 424 FlashPointFirst 425 426 The "FlashPointFirst" option forces FlashPoi 427 before MultiMaster Host Adapters. 428 429 The BusLogic Driver Tagged Queuing Options all 430 the Queue Depth and whether Tagged Queuing is 431 Device (assuming that the Target Device suppor 432 Depth is the number of SCSI Commands that are 433 presented for execution (either to the Host Ad 434 that explicitly enabling Tagged Queuing may le 435 enable or disable Tagged Queuing is provided p 436 Tagged Queuing on Target Devices that do not i 437 following options are available: 438 439 QueueDepth:<integer> 440 441 The "QueueDepth:" or QD:" option specifies t 442 Target Devices that support Tagged Queuing, 443 Depth for devices that do not support Tagged 444 option is provided, the Queue Depth will be 445 on the Host Adapter's Total Queue Depth and 446 capabilities of the detected Target Devices. 447 do not support Tagged Queuing always have th 448 BusLogic_UntaggedQueueDepth or BusLogic_Unta 449 lower Queue Depth option is provided. A Que 450 disables Tagged Queuing. 451 452 QueueDepth:[<integer>,<integer>...] 453 454 The "QueueDepth:[...]" or "QD:[...]" option 455 individually for each Target Device. If an 456 associated Target Device will have its Queue 457 458 TaggedQueuing:Default 459 460 The "TaggedQueuing:Default" or "TQ:Default" 461 based on the firmware version of the BusLogi 462 whether the Queue Depth allows queuing multi 463 464 TaggedQueuing:Enable 465 466 The "TaggedQueuing:Enable" or "TQ:Enable" op 467 all Target Devices on this Host Adapter, ove 468 would otherwise be imposed based on the Host 469 470 TaggedQueuing:Disable 471 472 The "TaggedQueuing:Disable" or "TQ:Disable" 473 for all Target Devices on this Host Adapter. 474 475 TaggedQueuing:<Target-Spec> 476 477 The "TaggedQueuing:<Target-Spec>" or "TQ:<Ta 478 Tagged Queuing individually for each Target 479 sequence of "Y", "N", and "X" characters. " 480 disables Tagged Queuing, and "X" accepts the 481 version. The first character refers to Targ 482 Target Device 1, and so on; if the sequence 483 does not cover all the Target Devices, unspe 484 to be "X". 485 486 The BusLogic Driver Miscellaneous Options comp 487 488 BusSettleTime:<seconds> 489 490 The "BusSettleTime:" or "BST:" option specif 491 seconds. The Bus Settle Time is the amount 492 Adapter Hard Reset which initiates a SCSI Bu 493 Commands. If unspecified, it defaults to Bu 494 495 InhibitTargetInquiry 496 497 The "InhibitTargetInquiry" option inhibits t 498 Target Devices or Inquire Installed Devices 499 Adapters. This may be necessary with some o 500 respond correctly when Logical Units above 0 501 502 The BusLogic Driver Debugging Options comprise 503 504 TraceProbe 505 506 The "TraceProbe" option enables tracing of H 507 508 TraceHardwareReset 509 510 The "TraceHardwareReset" option enables trac 511 Reset. 512 513 TraceConfiguration 514 515 The "TraceConfiguration" option enables trac 516 Configuration. 517 518 TraceErrors 519 520 The "TraceErrors" option enables tracing of 521 error from the Target Device. The CDB and S 522 each SCSI Command that fails. 523 524 Debug 525 526 The "Debug" option enables all debugging opt 527 528 The following examples demonstrate setting the 529 1 and 2 on the first host adapter to 7 and 15, 530 Devices on the second host adapter to 31, and 531 second host adapter to 30 seconds. 532 533 Linux Kernel Command Line:: 534 535 linux BusLogic=QueueDepth:[,7,15];QueueDepth 536 537 LILO Linux Boot Loader (in /etc/lilo.conf):: 538 539 append = "BusLogic=QueueDepth:[,7,15];QueueD 540 541 INSMOD Loadable Kernel Module Installation Fac 542 543 insmod BusLogic.o \ 544 'BusLogic="QueueDepth:[,7,15];QueueDepth 545 546 547 .. Note:: 548 549 Module Utilities 2.1.71 or later is requ 550 of driver options containing commas. 551 552 553 Driver Installation 554 =================== 555 556 This distribution was prepared for Linux kerne 557 compatible with 2.0.4 or any later 2.0 series 558 559 To install the new BusLogic SCSI driver, you m 560 replacing "/usr/src" with wherever you keep yo 561 562 cd /usr/src 563 tar -xvzf BusLogic-2.0.15.tar.gz 564 mv README.* LICENSE.* BusLogic.[ch] FlashPoi 565 patch -p0 < BusLogic.patch (only for 2.0.33 566 cd linux 567 make config 568 make zImage 569 570 Then install "arch/x86/boot/zImage" as your st 571 appropriate, and reboot. 572 573 574 BusLogic Announcements Mailing List 575 =================================== 576 577 The BusLogic Announcements Mailing List provid 578 users of new driver releases and other announc 579 for BusLogic SCSI Host Adapters. To join the 580 "buslogic-announce-request@dandelion.com" with 581 message body.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.