M2488 PRODUCT GUIDE TAPE UNIT SCSI COMMANDS
April 1997 CG00000-011503 REV. A 4-147
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, t he 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 INVALI D 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 B uffer 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 INVALI D 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 R EQUEST 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.