User guide

SC3500 User Guide Ver 1.3 March 8, 2005 Page 8 of 28
3.3.3 Request Sense Command – 03h
Request Sense CDB
The REQUEST SENSE command requests that the SC3500 transfer sense data to the
initiator. If the SC3500 has no sense data available to return, it will return a sense key
of NO SENSE and an additional sense code of NO ADDITIONAL SENSE
INFORMATION. The sense data shall be preserved by the target for the initiator until
retrieved by a REQUEST SENSE command or until the receipt of any other I/O process
for the same I_T_x nexus. Sense data shall be cleared upon receipt of any subsequent
I/O process (including REQUEST SENSE) to the same I_T_x nexus.
The target shall return CHECK CONDITION status for a REQUEST SENSE command
only to report exception conditions specific to the command itself. For example:
a) A non-zero reserved bit is detected in the command descriptor block;
b) An unrecovered parity error is detected on the data bus;
c) A target malfunction prevents return of the sense data.
If a recovered error occurs during the execution of the REQUEST SENSE command,
the target shall return the sense data with GOOD status. If a target returns CHECK
CONDITION status for a REQUEST SENSE command, the sense data may be invalid.
The SC3500 is capable of returning eighteen bytes of data in response to a REQUEST
SENSE command. If the allocation length is eighteen or greater, and the SC3500
returns less than eighteen bytes of data, the initiator should assume that the bytes not
transferred would have been zeros had the target returned those bytes. Initiators can
determine how much sense data was returned by examining the allocation length
parameter in the command descriptor block and the additional sense length in the sense
data.
The sense data format for error codes 70h (current errors) and 71h (deferred errors) are
defined below. For further details on the Request Sense command, please refer to the
SCSI specification.