Specifications
System Macros Invoked by Drivers
SPI$QUEUE_COMMAND
Table 2–8 (Cont.) Inputs to the SPI$QUEUE_COMMAND Macro
Location Contents
SCDRP$L_SVA_USER System virtual address of the
process buffer as mapped in
system space (S0 space).
SCDRP$L_STS_PTR Address of the status longword.
The port driver copies the SCSI
status byte it receives in the bus
STATUS phase into the low-order
byte of this buffer.
SCDRP$W_FUNC Read or write operation.
SCDRP$L_SCDT Address of the SCDT.
The port driver returns the values listed in Table 2–9 to the class driver,
preserving R3, R4, and R5.
Table 2–9 SPI$QUEUE_COMMAND Macro Return Values
Location Contents
R0 Port status. The port driver returns one of the following status
values:
SS$_BADPARAM Bad parameter specified by the class
driver.
SS$_CTRLERR Controller error or port hardware
failure.
SS$_DEVACTIVE Command outstanding on this
connection.
SS$_DEVREQERR SCSI message reject.
SS$_IVSTSFLG All required phases are not entered.
SS$_LINKABORT Connection no longer exists.
SS$_NORMAL Normal, successful completion.
SS$_TIMEOUT Failed during selection or arbitration.
SS$_PARITY Nonrecoverable parity error detected.
R5 Address of the SCDRP. The port driver provides information in
the following fields:
SCDRP$L_STS_PTR Address of the status longword. The
port driver copies the SCSI status
byte it receives in the bus STATUS
phase into the low-order byte of this
buffer.
SCDRP$L_TRANS_
CNT
Actual number of bytes sent or
received by the port driver during
the data phase.
2–82