blc is the
boot-time loadable driver (BTLD) for
BusLogic MultiMaster SCSI host adapter cards.
The MultiMaster product line consists of
the following models:
Model
Description
BT-445
VESA Fast SCSI
BT-54x
ISA Fast SCSI
BT-64x
MicroChannel Fast SCSI
BT-74x
EISA Fast SCSI
BT-75x
EISA Fast & Wide SCSI
BT-946
PCI Fast SCSI
BT-948
PCI Ultra SCSI
BT-956
PCI Fast & Wide SCSI
BT-956D
PCI Fast & Wide Differential SCSI
BT-958
PCI Ultra & Wide SCSI
BT-958D
PCI Ultra & Wide Differential SCSI
The blc driver works with
up to four adapters.
Note that this driver does not support the
BusLogic FlashPoint SCSI host adapter product line.
The intallation setup requirements are as follows:
Card type
Port address
IRQ
DMA
ISA , VESA x
Selectable at installation
Any
5
EISA, MicroChan
Selectable at installation
Any
Any
PCI
Any
Any
Any
You should disable the
ad(HW)
driver, as it conflicts
with the blc driver.
The blc driver should drive
the ad card if you have one.
For a proper BTLD installation,
you need to to enter disable=ad on
the boot line.
Please refer to the
Compatible Hardware Web Pages.
to determine the support status of your host adapter, or
contact your system supplier.
Configuring the blc driver
You can configure the blc driver using entries in
/etc/conf/cf.d/mdevice and /etc/conf/sdevice.d/blc.
See
mdevice(F)
and
sdevice(F).
Changes to these files
take effect once you relink the kernel using
link_unix(ADM)
and reboot the system.
Configure blc driver-specific characteristics
by editing the /etc/conf/pack.d/blc/space.c file,
which controls parameters such as
tagged command queuing option,
command timeout handling,
boot-time reset option,
and reset delay.
Tag Queuing
The Tag Queuing option allows multiple requests
to be sent to SCSI devices that support this feature
(normally hard disks or RAID subsystems)
to be sorted and processed by these devices
for optimum performance.
To enable this option,
set blc_do_tag to 1 and relink the kernel:
int blc_do_tag =0; /* 1 = do command queuing */
Command timeout handling
The blc driver has a built-in mechanism
to handle recoverable SCSI bus hangs
that may be caused by ill-behaved devices.
The driver provides several options
to modify the default parameters used in handling timeouts:
blc_timeout
Enables timeout handling when set to 1.
Otherwise set to 0.
blc_timeout_period
Number of seconds to wait for I/O request
before timing out.
blc_retry_max
Number of times to retry request
before resetting the controller.
NOTE:
If the I/O request is started
just after the timer is called,
the actual timeout period can be
up to twice the time that is specified
for blc_timeout_period.
As an example, the following settings
establish timeout handling.
The driver will wait 15 seconds for the I/O request
before timing out,
and will retry the request twice before
resetting the controller:
int blc_timeout =1;
int blc_timeout_period =15;
int blc_retry_max =2;
Boot-time hard reset
By default, the driver does not perform
Hard/SCSI reset at boot time.
If your environment requires a reset at boot time,
set blc_inittime_hard_reset to 1:
int blc_inittime_hard_reset =0;
Reset delay
The driver posts a three-second delay
after a hard reset is generated
at boot-time or during the final error recovery attempt
of the command timeout feature.
Certain SCSI devices that require
a longer delay can be accomodated
by modifying the blc_reset_delay parameter:
int blc_reset_delay =3;
Boot time configuration of SCSI
Use the
bootstring(HW)
parameters to override
the default hardware configuration information.
Of special interest are the adapter= parameter
that specifies information for
the host adapter card
that plugs into or is part of the motherboard,
and the periph= parameter
that specifies information about the host adapter
being used by one of the generic peripheral interfaces
(Sdsk, Srom, or Stp).
ioctl commands
The blc driver
supports all standard SCSI ioctls
that are defined in the <sys/scsicmd.h> header file
and documented on the
scsi(HW)
manual page.
Diagnostics
These error messages associated with blc may display on the console.
See
messages(M)
for general information about kernel error messages,
including a list of generic device driver errors.
WARNING: BusLogic: H/W Failed (ha=1, lun=0)
Maximum attempt at recovering from a SCSI bus hang
had been made to this adapter.
This adapter is no longer accepting requests.
WARNING: blc_MM_ResetCard: BusLogic ctlr did not come up ready after hard reset.
During a command-timeout recovery,
the adapter did not respond back
from a hard reset.
WARNING: blc_MM_Start: adapter busy
A request to the adapter could not be sent
because the adapter is busy
or the SCSI bus is hung.