M2488 PRODUCT GUIDE

TAPE UNIT SCSI COMMANDS

Download Microcode and Save Mode (101b) Description. In this mode, vendor-specific micro- code is transferred to the target and, if the WRITE BUFFER command is completed successfully, is saved into a non-volatile memory (i.e. flash memory). The downloaded code shall then be effec- tive after each power-cycle and reset until another download microcode and save operation is per- formed. When the download microcode and save command has completed successfully, the target shall generate a unit attention condition for all initiators except the one that issued the WRITE BUFFER command. When reporting the unit attention condition, the target shall set the additional sense code to MICROCODE HAS BEEN CHANGED.

NOTE: The saved microcode does not become the active code load until a power on reset is per- formed.

In the download microcode and save mode, Buffer ID 0 is the only Buffer ID supported. If any other Buffer ID value is selected, the target returns CHECK CONDITION status and sets the sense key to ILLEGAL REQUEST with an additional sense code of INVALID FIELD IN CDB.

NOTES:

1.Following a successful microcode download and save operation, the target does not do an auto- matic reset and will continue running off of the old microcode. In order to run off of the new microcode which has been downloaded and saved, a power-cycle is required.

2.When a WRITE BUFFER command, with a mode of Download Microcode and Save is pro- cessed, the length of the microcode saved into flash will be calculated based on the buffer posi- tion of the last byte written into the buffer relative to buffer offset 0, byte 0. This requires that the microcode being downloaded always be written into the buffer starting at byte 0 (i.e. the first WRITE BUFFER command must have a Buffer Offset of zero).

3.The microcode image that is downloaded via the WRITE BUFFER command includes the con- troller and servo microcode. In the Download Microcode and Save mode, both the controller microcode and servo microcode are saved into flash following a successful download.

Download Microcode With Offsets Mode (110b) Description. In this mode, the transfer of ven- dor-specific microcode from the initiator to the target may be split over two or more Write Buffer commands. After the complete vendor-specific microcode image has been transferred from the ini- tiator into the data buffer, the checksum is then verified and the microcode transferred to the con- trol store memory of the target. After the transfer of the microcode into the control store memory is complete, an automatic reset is performed causing the target to run from the new microcode. The downloaded microcode is not saved into non-volatile memory (i.e. flash memory), therefore; after a power-cycle, the target reverts to the previous version of microcode. After SCSI bus or Bus Device resets, the target continues to run from the downloaded code.

In the download microcode with offsets mode, Buffer ID 0 is the only Buffer ID supported. If any other Buffer ID value is selected, the target returns CHECK CONDITION status and sets the sense key to ILLEGAL REQUEST with an additional sense code of INVALID FIELD IN CDB.

The microcode is written into the data buffer starting at the location specified by the Buffer Offset. The first Write Buffer command initiating a download microcode with offsets mode operation must contain a Buffer Offset of zero. If this Buffer Offset is not zero, the target returns CHECK CONDITION status and sets the sense key to ILLEGAL REQUEST with an additional sense code of INVALID FIELD IN CDB. Subsequent Write Buffer commands must contain a Buffer Offset such that the microcode is being downloaded contiguously (i.e. microcode bytes are being down- loaded in sequential order with no gaps). If this Buffer Offset is incorrect, the target returns CHECK CONDITION status and sets the sense key to ILLEGAL REQUEST with an additional sense code of INVALID FIELD IN CDB.

April 1997

CG00000-011503 REV. A

4-147

Page 229
Image 229
Fujitsu manual M2488 Product Guide Tape Unit Scsi Commands