ESP(4) BSD Kernel Interfaces Manual ESP(4)
esp -- Qlogic FEPS and FAS366 SCSI driver
The esp driver provides support for the Qlogic FAS216 and FAS408 SCSI
controller chips found in a wide variety of systems and peripheral
boards. This includes the Qlogic SCSI cards found in most Sun Ultra 1e
and Ultra 2 machines.
For Qlogic PCI SCSI host adapters, the isp(4) driver should be used in
place of the esp driver.
During the boot sequence, the esp driver searches the linked list for LUN
info by LUN ID. At this point the driver will attach on that instance,
and then attempt to attach every sub-device.
There are at least 4 variations of the configuration 3 register. A sec-
ond config register must be loaded to inquire the chip revision, other-
wise the ncr53c9x_reset() function will not set the defaults correctly.
The drive attach routine attempts to set the appropriate bit to put the
chip into Fast SCSI mode so that it does not have to be figured out each
time. This will then be stored in the NCR registers for later use.
The esp driver makes use of the LSI 64854 DMA engine which contains three
independent channels designed to interface with an NCR539X SCSI con-
troller; an AM7990 Ethernet controller; and certain types of parallel
port hardware. As such this driver may eventually replace the amd(4)
driver for network hardware.
The following driver specific error messages may be reported:
esp: cannot map %d segments The device was unable to map segments while
mapping the SCSI devices in DMA mode.
unknown variant %d, devices not attached An unknown version of the card
was found and devices will not be attached.
Unhandled function code %d The device returned a function code which the
driver is unable to handle, most likely during negotiation.
esp:%d:%d: selection failed %d left in FIFO The target left the command
phase prematurely. If a command did not reach the device then it will be
reported as shown above.
invalid state: %d The device has reached an invalid state.
amd(4), isp(4), scbus(4), camcontrol(8)
The esp driver was written for NetBSD by Eric S. Hvozda. The esp driver
was then ported to FreeBSD 5.3 by Scott Long <scottlATFreeBSD.org>.
This manual page was written by Tom Rhodes <trhodesATFreeBSD.org> instead
of porting the original from NetBSD.
The esp driver includes the sbus front-end but lacks the PCI front-end.
Thus it can only support the FEPS/FAS366 SCSI found in Sun Ultra 1e and
Ultra 2 machines at this time.
This driver should eventually replace the amd(4) driver, but that
requires porting the PCI front-end mentioned above.
BSD July 28, 2004 BSD