User’s Guide 21020285 D
Chapter 8 Details of Usage
Target Mode Usage and SCSI Protocol Handling Page 8 - 11
Target Mode
Usage and
SCSI Protocol
Handling
Writing a driver for Target Mode requires a strong familiarity with the SCSI
protocol. This section explains what you can expect from the adapter under
certain SCSI conditions. This section addresses the following issues:
• Selection Queue
• SCSI Bus Reset Handling
• Target Mode Disable Command Handling
• Abort Command Handling
• Synchronous Data Transfer Requests
• Wide Data Transfer Requests
• Unexpected Messages Received from the Initiator
• Automatic Adapter Responses
• Disconnects
• Message Handling
Selection
Queue
In order to buffer SCSI bus activities from Host events, selection information
(from initiators on the SCSI bus), destined for the Target Selection Data
Structure, is queued on the adapter. Information from about sixty initiator
selections can be stored in the Selection Queue. This means that at the time of
a SCSI bus reset, or a Target Mode Disable or Abort command, the queue may
have initiator selection information that has not yet been processed by the Host.
SCSI Bus
Reset
Handling
To avoid a timing window with the host, Target Mode will be terminated upon
receipt of a SCSI bus reset. The host may then re-enable the Target Mode when
it is ready to continue receiving commands from other initiators. During the
time between a bus reset and being re-enabled, the adapter will respond to
selection attempts with Busy status.
Upon reset of the SCSI bus, all targets must terminate all commands in process.
The RF3880 will do the following:
• Clear the Selection Queue.
• Set the current Target Selection Data Structure Error field to 27H, and
clear the TME bit in the Flags field.
• Return Status Blocks for all outstanding Target Mode Response
commands with an Error Code of 27H.
At this time the Host should do the following:
• Discard all outstanding initiator selections.
• Process and discard Status Blocks from Target Mode Response
commands.
• Re-enable Target Mode when all processes are cleared.