Devices isp(7D)
NAME
isp - ISP SCSI Host Bus Adapter Driver
SYNOPSIS
SbusQLGC,isp@sbus-slot,10000
PCISUNW,isptwo@pci-slot
DESCRIPTION
The ISP Host Bus Adapter is a SCSA compliant nexus driver that supports the Qlogic ISP1000 SCSI and the ISP1040B SCSI chips. The ISP1000 chip works on SBus and the ISP1040B chip works on PCI bus. The ISP is an intelligent SCSI Host Bus Adapter chip that reduces the amount of CPU overhead used in a SCSI transfer.The isp driver supports the standard functions provided by
the SCSA interface. The driver supports tagged and untagged queuing, fast and wide SCSI, and auto request sense, but does not support linked commands. The PCI version ISP Hostbus adapter based on ISP1040B also supports Fast-20 scsi
devices. CONFIGURATIONThe isp driver can be configured by defining properties in
isp.conf which override the global SCSI settings. Supported
properties are scsi-options, target
-scsi-options, scsi- reset-delay, scsi-watchdog-tick, scsi-tag-age-limit, scsi-
initiator-id, and scsi-selection-timeout.
target
value for target-scsi-options overrides the scsi-options property . is a hex value that can vary from 0 to f. Refer to scsi_hba_attach(9F) for details.
Both the ISP1000 and ISP1040B support only certain SCSI selection timeout values. The valid values are 25, 50, 75, 100, 250, 500, 750 and 1000. These properties are in units of milliseconds.EXAMPLES
Example 1 SCSI OptionsCreate a file called /kernel/drv/isp.conf and add this
line:SunOS 5.11 Last change: 12 Jan 1998 1
Devices isp(7D)
scsi-options=0x78;
This will disable tagged queuing, fast SCSI, and Wide modefor all isp instances. The following will disable an option
for one specific ISP (refer to driver.conf(4)):name="isp" parent="/iommu@f,e0000000/sbus@f,e0001000"
reg=1,0x10000,0x450target1-scsi-options=0x58
scsi-options=0x178 scsi-initiator-id=6;
Note that the default initiator ID in OBP is 7 and that thechange to ID 6 will occur at attach time. It may be prefer-
able to change the initiator ID in OBP.The above would set scsi-options for target 1 to 0x58 and
for all other targets on this SCSI bus to 0x178. The physical pathname of the parent can be determined usingthe /devices tree or following the link of the logical dev-
ice name:example# ls -l /dev/rdsk/c2t0d0s0
lrwxrwxrwx 1 root root 76 Aug 22 13:29 /dev/rdsk/c2t0d0s0 ->
../../devices/iommu@f,e0000000/sbus@f,e0001000/QLGC,isp@1,10000/sd@0,0:a,raw
Determine the register property values using the output ofprtconf(1M) with the -v option:
QLGC,isp, instance #0
... Register Specifications: Bus Type=0x1, Address=0x10000, Size=450 Example 2 ISP PropertiesSunOS 5.11 Last change: 12 Jan 1998 2
Devices isp(7D)
The isp driver exports properties indicating per target the
negotiated transfer speed (target
-sync-speed), whether tagged queuing has been enabled (target
-TQ), and whether the wide data transfer has been negotiated (target
-wide). The sync-speed property value is the data transfer rate in
KB/sec. The target-TQ and target-wide properties have no
value. The existence of these properties indicate that tagged queuing or wide transfer has been enabled. Refer toprtconf(1M) (verbose option) for viewing the isp properties.
QLGC,isp, instance #2
Driver software properties:name
length <0> -- . name
length <0> -- . name
value <0x000028f5>.length <4> name
value <0x000003f8>.length <4> name
value <0x0000000a>.length <4> name
value <0x00000008>.length <4> name
value <0x00000bb8>. Example 3 PCI Buslength <4> To achieve the same setting of SCSI-options as in instance
#0 above on a PCI machine, create a file called
/kernel/drv/isp.conf and add the following entries.
name="isp" parent="/pci@1f,2000/pci@1"
unit-address="4"
scsi-options=0x178
target3-scsi-options=0x58 scsi-initiator-id=6;
The physical pathname of the parent can be determined usingthe /devices tree or following the link of the logical dev-
ice name:To set scsi-options more specifically per device type, add
the following line in the /kernel/drv/isp.conf file:
SunOS 5.11 Last change: 12 Jan 1998 3
Devices isp(7D)
device-type-scsi-options-list =
"SEAGATE ST32550W", "seagate-scsi-options" ;
seagate-scsi-options = 0x58;
All device which are of this specific disk type will havescsi-options set to 0x58.
scsi-options specified per target ID has the highest pre-
cedence, followed by scsi-options per device type. Global
(for all isp instances) scsi-options per bus has the lowest
precedence.The system needs to be rebooted before the specified scsi-
options take effect. Example 4 Driver CapabilitiesThe target driver needs to set capabilities in the isp
driver in order to enable some driver features. The targetdriver can query and modify these capabilities: synchro-
nous, tagged-qing, wide-xfer, auto-rqsense, qfull-retries,
qfull-retry-interval. All other capabilities can only be
queried.By default, tagged-qing, auto-rqsense, and wide-xfer capa-
bilities are disabled, while disconnect, synchronous, anduntagged-qing are enabled. These capabilities can only have
binary values (0 or 1). The default values for qfull-retries
and qfull-retry-interval are both 10. The qfull-retries
capability is a uchar_t (0 to 255) while qfull-retry-
interval is a ushort_t (0 to 65535).
The target driver needs to enable tagged-qing and wide-xfer
explicitly. The untagged-qing capability is always enabled
and its value cannot be modified, because isp can queue
commands even when tagged-qing is disabled.
SunOS 5.11 Last change: 12 Jan 1998 4
Devices isp(7D)
Whenever there is a conflict between the value of scsi-
options and a capability, the value set in scsi-options pre-
vails. Only whom != 0 is supported in the scsi_ifsetcap(9F)
call.Refer to scsi_ifsetcap(9F) and scsi_ifgetcap(9F) for
details. FILES/kernel/drv/isp ELF Kernel Module
/kernel/drv/isp.conf Configuration file
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Architecture | SPARC ||_____________________________|_____________________________|
SEE ALSO
prtconf(1M), driver.conf(4), attributes(5), scsi_abort(9F),
scsi_hba_attach(9F), scsi_ifgetcap(9F), scsi_reset(9F),
scsi_transport(9F), scsi_device(9S),
scsi_extended_sense(9S), scsi_inquiry(9S), scsi_pkt(9S)
Writing Device DriversANSI Small Computer System Interface-2 (SCSI-2)
QLogic Corporation, ISP1000 Firmware Interface Specification QLogic Corporation, ISP1020 Firmware Interface Specification QLogic Corporation, ISP1000 Technical ManualSunOS 5.11 Last change: 12 Jan 1998 5
Devices isp(7D)
QLogic Corporation, ISP1020a/1040a Technical Manual QLogic Corporation, Differences between the ISP1020a/1040aand the ISP1020B/1040B - Application Note
DIAGNOSTICSThe messages described below may appear on the system con-
sole as well as being logged.The first set of messages may be displayed while the isp
driver is first trying to attach. All of these messagesmean that the isp driver was unable to attach. These mes-
sages are preceded by "isp
the instance number of the ISP Host Bus Adapter.", where " " is Device in slave-only slot, unused
The SBus device has been placed in a slave-only slot and
will not be accessible; move to non-slave-only SBus
slot. Device is using a hilevel intr, unused The device was configured with an interrupt level thatcannot be used with this isp driver. Check the device.
Failed to alloc soft state Driver was unable to allocate space for the internal state structure. Driver did not attach to device; SCSI devices will be inaccessible. Bad soft state Driver requested an invalid internal state structure. Driver did not attach to device; SCSI devices will be inaccessible. Unable to map registers Driver was unable to map device registers; check for bad hardware. Driver did not attach to device; SCSI devices will be inaccessible.SunOS 5.11 Last change: 12 Jan 1998 6
Devices isp(7D)
Cannot add intr Driver was not able to add the interrupt routine to the kernel. Driver did not attach to device; SCSI devices will be inaccessible. Unable to attach Driver was unable to attach to the hardware for some reason that may be printed. Driver did not attach to device; SCSI devices will be inaccessible.The next set of messages can be displayed at any time. They
will be printed with the full device pathname followed by the shorter form described above. Firmware should be < 0xbytes Firmware size exceeded allocated space and will not download firmware. This could mean that the firmware was corrupted somehow. Check the isp driver.
Firmware checksum incorrectFirmware has an invalid checksum and will not be down-
loaded. Chip reset timeout ISP chip failed to reset in the time allocated; may be bad hardware. Stop firmware failed Stopping the firmware failed; may be bad hardware. Load ram failed Unable to download new firmware into the ISP chip. DMA setup failed The DMA setup failed in the host adapter driver on ascsi_pkt. This will return TRAN_BADPKT to a SCSA target
SunOS 5.11 Last change: 12 Jan 1998 7
Devices isp(7D)
driver. Bad request pkt The ISP Firmware rejected the packet as being set upincorrectly. This will cause the isp driver to call the
target completion routine with the reason ofCMD_TRAN_ERR set in the scsi_pkt. Check the target
driver for correctly setting up the packet. Bad request pkt header The ISP Firmware rejected the packet as being set upincorrectly. This will cause the isp driver to call the
target completion routine with the reason ofCMD_TRAN_ERR set in the scsi_pkt. Check the target
driver for correctly setting up the packet. Polled command timeout on. A polled command experienced a timeout. The target dev-
ice, as noted by the target lun (. ) information, may not be responding correctly to the command, or the ISP chip may be hung. This will cause an error recovery to be initiated in the isp driver.
This could mean a bad device or cabling.SCSI Cable/Connection problem
Hardware/Firmware error The ISP chip encountered a firmware error of some kind. The problem is probably due to a faulty scsi cable or improper cable connection. This error will cause the
isp driver to do error recovery by resetting the chip.
Received unexpected SCSI Reset The ISP chip received an unexpected SCSI Reset and has initiated its own internal error recovery, which willreturn all the scsi_pkt with reason set to CMD_RESET.
SunOS 5.11 Last change: 12 Jan 1998 8
Devices isp(7D)
Fatal timeout on target. The isp driver found a command that had not completed
in the correct amount of time; this will cause errorrecovery by the isp driver. The device that experienced
the timeout was at target lun (. ). Fatal error, resetting interface This is an indication that the isp driver is doing
error recovery. This will cause all outstanding com-
mands that have been transported to the isp driver to
be completed via the scsi_pkt completion routine in the
target driver with reason of CMD_RESET and status of
STAT_BUS_RESET set in the scsi_pkt.
SunOS 5.11 Last change: 12 Jan 1998 9