ESP(4) MidnightBSD Kernel Interfaces Manual ESP(4)

NAME

esp — Qlogic FEPS and FAS366 SCSI driver

SYNOPSIS

device scbus
device esp

HARDWARE

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.

IMPLEMENTATION NOTES

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 second config register must be loaded to inquire the chip revision, otherwise 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 controller; 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.

DIAGNOSTICS

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.

SEE ALSO

amd(4), isp(4), scbus(4), camcontrol(8)

http://www.qlc.com/
http://www.sun.com/

HISTORY

The esp driver was written for NetBSD by Eric S. Hvozda. The esp driver was then ported to FreeBSD 5.3 by Scott Long 〈scottl@FreeBSD.org〉.

AUTHORS

This manual page was written by Tom Rhodes 〈trhodes@FreeBSD.org〉 instead of porting the original from NetBSD.

BUGS

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.

MidnightBSD 0.3 September 18, 2005 MidnightBSD 0.3