beautypg.com

Write buffer command (3bh) (continued) – Quantum 10K II User Manual

Page 289

background image

SCSI Description

5–222

Quantum Atlas 10K II Ultra160/m SCSI Hard Disk Drives

WRITE BUFFER Command (3Bh) (continued)

Table 5–103 WRITE BUFFER Command — Field Descriptions

Field

Description

Mode

Four modes are supported by the drive; Combined Header and Data, Data Only,
Download Microcode and Save, and Write Data from Echo Buffer. The permissible
values for Buffer ID, Buffer Offset are as follows:

0000b

Combined Header and Data. – In this mode, the data to be transferred is preceded
by a 4-byte header that contains reserved bytes that must be set to 0. The resulting
descriptor and data are fetched from the initiator during the command's data-out
buffer transfer and, after the descriptor has been validated, only the data is written to
the controller's memory.
Buffer ID must be 0
Buffer Offset must be 0
Parameter List Length must be set to between 0 and 516 (4 bytes of header and up
to 512 bytes of data).

0010b

Data Only.– In this mode, the data-out buffer transfer contains buffer data. Data is
written to the drive's buffer starting at the location specified by the Buffer ID and Buffer
Offset.
Buffer ID. When non-zero, the value specifies a specific track line in the controller’s
cache. If Buffer ID of zero is specified, the buffer referenced is the same as if Buffer ID of
one were specified.
Buffer Offset. When non-zero, the value can range from 0 to one less than the
number of sectors/track multiplied by 512. This value must be either a zero or a
multiple of 512.
Parameter List Length. This value must be a multiple of 512. The maximum value for
this field is one more than the number of sectors/track times 512. The minimum value
is 0.

0101b

Download Microcode and Save In this mode, a 256 KB microcode image is
transferred to the drive and, if valid, is saved in the controller's non-volatile memory.
This image can be transferred all at once in one 256K buffer, or it can be transferred in
32 separate 8K buffers. The command's status phase indicates the success or failure of
the code load operation: GOOD status means the new microcode has been loaded and
saved; CHECK CONDITION status means that the original microcode is still in force.
CHECK CONDITION status is returned if the supplied microcode image is invalid. Sense
data reporting the reason for the failure is not preserved.
The controller does a hard reset on command completion. In Download Microcode and
Save mode, the other Command Descriptor Blocks are supported as follows:
Buffer ID – Undefined and ignored.
Buffer Offset – Undefined and ignored for 256 KB transfer. For a transfer of 32
separate 8K buffers, Buffer Offset represents the offset of the buffer being transferred
(0, 8192, 16384, …).
Parameter List Length – Must be 8192 or 262144.

1010b

Write Data from Echo Buffer
In this mode, the host transfers data and stores it in an echo buffer. The data will be
preserved in the echo buffer unless there is an intervening command.
Buffer ID Ignored.
Buffer Offset Ignored.