ESP(4) BSD Programmer's Manual (SPARC Architecture) ESP(4)NAMEesp - Emulex/QLogic ESP/FAS-series SCSI host adapter driver
SYNOPSIS
dma* at sbus? slot ? offset ?
esp* at sbus? slot ? offset ?
esp* at dma?
espdma* at sbus? slot ? offset ?
esp* at espdma?
DESCRIPTION
The esp driver is a software interface to the QLogic ESP and FAS series
host adapters for the Small Computer Systems Interface (X3.131-1992) bus.
Note that this includes the ``hme fas'' (FAS366) SCSI host adapter (which
uses a separate driver on other systems).
The esp driver is designed to be used as a machine-dependent back end for
machine-independent SCSI pseudo-devices (see sd(4), sg(4), st(4)).
CONFIGURATION
The ESP-series SCSI host adapter works in tandem with a DMA assistance
chip. The details of the DMA and ESP configuration and pairing vary from
one system or add-on SCSI card to the next; the configuration quoted
above suffices to find both devices in all known configurations. When
the ESP and DMA device both appear to be located directly on the Sbus,
the two are matched by Sbus slot number. The remaining cases make the
ESP device subsidiary to a DMA or ESPDMA device.
The wide SCSI FAS366 adapter includes the DMA chip within the ESP config-
uration, rather than separating it out. For this particular case, all of
the "dma" configuration lines can in fact be omitted. There is little
advantage to doing so, however; the "dma" lines merely allow the ESP
driver to locate the DMA chip in other configurations.
BOOT PARAMETERS
There are a number of parameters that are configurable from boot(8) with
the -parm command. Typically these commands should be added to boot.de-
fault(5) though they can be set at the ``boot:'' prompt.
Many of the parameters take as an argument one or more target ids. The
following are permissible arguments to these parameters:
t0 target 0
target0 target 0
t1 target 1
target1 target 1
t2 target 2
target2 target 2
...
t6 target 6
target6 target 6
t7 target 7
target7 target 7
all targets 0 through 7
none no targets
The following parameters take a list of target specifiers as an argu-
ment(s):
disconnect
These targets are allowed to disconnect. Examples:
-parm esp* disconnect=all #default
-parm esp0 disconnect=all-t1 #all but target 1
fast Fast SCSI. Up to 10MB/s sync rate will be negotiated for
these targets, provided the ESP adapter supports this
(i.e., FAS chips only). Examples:
-parm esp* fast=all #default for FAS chips
-parm esp* fast=none #default for ESP chips
-parm esp0 fast=t1,t2 #targets 1 and 2.
id_message
Send id message after selecting these targets. It may be
necessary to disable sending the id message on a few very
old targets. Examples:
-parm esp* id_message=all #default
-parm esp0 id_message=all-target1 #all but target 1
single_lun
For these targets only look at lun 0.
-parm esp* single_lun=none #default
-parm esp* single_lun=all
skip_targets
These targets will not be probed at boot. Examples:
-parm esp* skip_targets=none #default
-parm esp0 skip_targets=target5 #Don't probe target 5
sync Sync transfer will be negotiated for these targets. En-
abling sync on the ESP100 will be ignored due to chip bugs.
Examples:
-parm esp* sync=all #default for all but ESP100
-parm esp* sync=none #default for ESP100
-parm esp0 sync=all-t1-t2 #all but target 1 and 2
tags These targets will use tag queueing, provided it is sup-
ported by both the target and the ESP adapter. (The ESP100
and ESP100A do not support tags.) See sd(4) for caveats on
tag queueing. Examples:
-parm esp* tags=none #default
-parm esp1 tags=all-t1 #all but target 1
wide These targets will use wide mode, provided it is supported
by both the target and the ESP adapter. Only the FAS366
controller supports wide mode. Examples:
-parm esp* wide=all #default on fas366
-parm esp* wide=none #default on everything else
-parm esp* wide=all-t3 #all but target 3
The following parameter takes a yes or no as an argument:
slowcable
Sets the ``slow cable'' bit in the ESP adapter. This slows
down the asynchronous transfer rate in order to accommodate
SCSI timing violations that can occur with some external
cables. Examples:
-parm esp* slow_cable=no #default
-parm esp0 slow_cable=yes
The following parameter takes a numeric value as an argument:
reset_delay
This is used to control the number of seconds of delay
which is inserted after the SCSI bus is reset at boot time.
-parm esp* reset_delay=5 #default
-parm esp* reset_delay=1 #1 second reset delay
-parm esp* reset_delay=0 #no delay after reset
SEE ALSOsd(4), sg(4), st(4)BUGS
The ESP100 sync bug could probably be worked around in software.
BSDI BSD/OS August 8, 1997 3