Emerson MVME147 Computer Hardware User Manual


 
WRITING A DRIVER
5-4
5
Command status processing is the result of a firmware return to the vector
specified in the command packet. If this decoupling exists, the command
entry execution can only occur if the processor is not tied up performing SCSI
firmware functions or performing command status functions. That is, for the
processor to execute the command entry functions, it cannot be at the same
time executing command status functions. At the time the command is passed
to the driver/server, the command entry code may go ahead and send the
command to the firmware without hesitation.
The following is a list of intermediate status return codes provided by the
firmware (intermediate status codes have bit 15 set):
$xx02: The SCSI firmware returns this code if a disconnect occurred
on the bus or if firmware is waiting for SCSI controller chip to
interrupt. Again, no action is required for this status other
than servicing the RTE (13) bit.
$xx04: A message was received by the firmware that was either
uninterpretable or was received in TARGET role. You are
responsible for the interpretation of extended messages in
initiator and TARGET roles. The MVME147 is still threaded
on the bus when this status is passed to the user. The user
routine is responsible for interpreting the message and for the
proper return point. If bit 13 of the returned status is set, the
return is to the reactivation entry ($FFFE0782), and if bit 13 of
the returned status is clear, the return is to the RTE entry
($FFFE079A) and register A3 must remain intact. For this
status, an RTE is only "remembered for the next exit". If the
RTE bit is 0 with this status, an RTE is required. If this
condition occurs, address register A3 is pointing to a register
list.
$xx06: In TARGET role, a command has been received and the SCSI
firmware stored in the command table. The firmware returns
this intermediate status to alert you to service the command
and to return to either the reactivation entry ($FFFE0782) no
Rule 2: INTERMEDIATE RETURNS MUST
REENTER AT
REACTIVATION OR RTE ENTRY.