the SCSI interface hp ultrium drives technical reference manual generation 2 SCSI and FC drives volume 3: the SCSI interface Part Number: C7379–90900 Volume 3 Edition 4, February 2003
Notice The information contained in this document is subject to change without notice. Hewlett-Packard makes no warranty of any kind with regard to this material, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Hewlett-Packard shall not be liable for errors contained herein or direct, indirect, special, incidental or consequential damages in connection with the furnishing, performance, or use of this document.
The Purpose of this Manual This is one of five volumes that document HP Ultrium drives. This volume provides background information for driver and application developers. The following products are covered. Capacities are when the drive is using data compression with a compression ratio of 2:1, where applicable: ■ HP Ultrium Generation 2 Full-Height SCSI Internal Drive ■ HP Ultrium Generation 2 Full Height FC Internal Drive Note Throughout this manual frequent reference is made to SCSI commands.
Documentation Map The following will help you locate information in the 6-volume Technical Reference Manual: Drives—general SCSI Drives Connectors Controller architecture Front Panel LEDs Mechanism and hardware Specifications FC Drives 1 HW Integration: ch. 7 1 HW Integration: ch. 4 6 Background: ch. 4 1 HW Integration: ch. 6 1 HW Integration: ch. 3 6 Background: ch. 3 4 Specs Installation and Configuration SCSI Drives FC Drives 1 HW Integration: ch. 7 1 HW Integration: ch. 4 2 SW Integration: ch.
Cartridges SCSI Drives Cartridge Memory (LTO-CM) Cartridges Features Managing the use of cartridges Use of cartridges FC Drives 2 SW Integration: ch. 5 6 HW Integration: ch. 5 1 HW Integration: ch. 9 1 HW Integration: ch. 5 6 HW Integration: ch. 5 2 SW Integration: ch. 1 2 SW Integration: ch. 3 Interface SCSI Drives FC Drives SCSI Guide 3 SCSI Commands 3 SCSI: ch. 4 1 HW Integration: ch. 10 1 HW Integration: ch. 6 3 SCSI: ch. 1 2 SW Integration: ch. 3 3 SCSI: ch. 2 3 SCSI: ch.
Dealing with Errors SCSI Drives FC Drives 1 HW Integration: ch. 10 1 HW Integration: ch. 6 2 SW Integration: ch. 5 How error correction works 6 Background: ch. 4 3 SCSI: ch. 4 Logs—see the LOG SENSE command Recovering from write and read errors 2 SW Integration: ch. 7 Software response to error correction 2 SW Integration: ch. 3 2 SW Integration: ch. 3 Software response to logs TapeAlert log 2 SW Integration: ch.
General Documents and Standardization ■ Small Computer System Interface (SCSI-1), ANSI X3.131-1986. This is the ANSI authorized standard for SCSI implementation, available through ANSI ■ Enhanced Small Computer System Interface (SCSI-2), ANSI X3T9.2-1993 Rev.
contents Contents The Purpose of this Manual 3 Related Documents 3 Documents Specific to HP Ultrium Drives 3 Documentation Map 4 General Documents and Standardization 7 1 Interface Implementation 13 The SCSI Interface 13 Supported Messages 14 Supported Commands 14 SCSI Features 15 Design Approach 15 Power-On 15 Reset Strategy 15 Abort Handling 16 Bus Parity Errors (Parallel SCSI only) 18 Disconnect Strategy (Parallel SCSI only) 19 Multi-Initiator Support 19 Fibre Channel Operation 20 Fibre Channel Addr
2 Messages 25 Message Out Support (Parallel SCSI only) 25 Message In Support (Parallel SCSI only) 26 Extended Message Support 27 Status 29 3 Commands—Introduction 31 Summary 31 Command Details 32 Pre-Execution Checks 32 Bad LUN Check 32 Deferred Error Check 33 Diagnostic Status Check 33 Fixed Bit Check 34 Flag Link Check 34 Illegal Command Check 34 Illegal Field/Request Check 34 Media Access Check 35 Media Information Check 36 Media Write Check 37 Parameter List Check 37 Reservation Check 37 Unit Atten
Contents LOCATE 2Bh 58 LOG SELECT 4Ch 60 LOG SENSE 4Dh 62 Log Page Format 63 Supported Log Pages Page 64 Write Error Counters Log Page 65 Read Error Counters Log Page 66 Sequential Access Device Log Page 66 TapeAlert Log Page 67 Tape Usage Log Page 69 Tape Capacity Log Page 69 Data Compression Log Page 70 Performance Data Log Page 70 MODE SELECT 15h/55h 72 Mode Parameter Pages 74 Mode Page Representation 74 Mode Data Format 74 Mode Block Descriptor 77 Read-Write Error Recovery Mode Page 78 Disconnect-Recon
Host Common Attributes 107 READ BLOCK LIMITS 05h 110 READ BUFFER 3Ch 111 READ POSITION 34h 115 RECEIVE DIAGNOSTICS RESULTS 1Ch 119 RELEASE UNIT 17h/57h 121 REPORT DENSITY SUPPORT 44h 123 REPORT LUNS A0h 126 REQUEST SENSE 03h 128 Request Sense Data 129 Sense Data Management 131 Current Sense 132 UNIT ATTENTION Sense 132 DEFERRED ERROR Sense 133 Sense Keys 135 Additional Sense Codes 136 Error Codes 140 RESERVE UNIT 16h/56h 141 REWIND 01h 144 SEND DIAGNOSTIC 1Dh 145 Standard Self-Test 147 SPACE 11h 148 TEST UN
Interface Implementation 1 HP Ultrium drives use SCSI-3 as the interface to connect to the host system. This chapter gives an overview of how the interface operates. Full details of the messages are given in Chapter 2 and of commands in Chapter 3 and Chapter 4. The SCSI Interface The Small Computer System Interface (SCSI) is an industry standard, approved by the American National Standards Institute (ANSI). You are recommended to read the ANSI standard document in conjunction with this manual.
Supported Messages The following messages are supported by the drives: ■ ABORT ■ BUS DEVICE RESET ■ COMMAND COMPLETE ■ DISCONNECT ■ IDENTIFY ■ IGNORE WIDE RESIDUE ■ INITIATOR DETECTED ERROR ■ MESSAGE PARITY ERROR ■ MESSAGE REJECT ■ NO-OP (no operation) ■ RESTORE POINTERS ■ SAVE DATA POINTER ■ Extended Message: PARALLEL PROTOCOL REQUEST ■ Extended Message: SYNCHRONOUS DATA TRANSFER REQUEST ■ Extended Message: WIDE DATA TRANSFER REQUEST For implementation details on these messages, see Chapter 2, “Messages”
3Ch 34h 1Ch READ BUFFER READ POSITION RECEIVE DIAGNOSTIC RESULTS 3Bh 10h WRITE BUFFER WRITE FILEMARKS For implementation details on these commands, see Chapter 3, “Commands— Introduction” and Chapter 4, “Commands”. SCSI Features The features supported by the drive are based on standards, both official and de facto. The drive is fully compliant with the SCSI-3 specification and supports all features required by that standard.
default setting. The known base state is defined in the SCSI-3 specification and includes the following: ■ The current I/O process is aborted. ■ Any queued I/O processes from other initiators are removed. ■ All reservations are cleared. ■ All mode values are reset to their defaults. ■ Synchronous/Wide negotiations are cleared (SCSI drives only). ■ A UNIT ATTENTION condition is set. ■ Any buffered writes are flushed to tape. ■ The logical position is undefined.
GOOD status immediately. A REQUEST SENSE command will give NO SENSE. An INQUIRY command will return the required data and give GOOD status. Command Abort Processing Long erase is aborted as quickly as possible without corrupting tape format. Short erase completes. INQUIRY None LOAD/UNLOAD Load completes and logically positions tape at BOT. Unload is aborted leaving logical position at BOT unless operation is past the “point of no return” in which case the tape is ejected.
Command Abort Processing RESERVE UNIT The command completes. REWIND The command completes. SEND DIAGNOSTIC Vendor Unique SPACE The logical position is set back to that at the start of the operation unless the operation has passed its “point of no return”, in which case the operation completes. TEST UNIT READY None WRITE The data up to first record boundary in the current burst is written to tape. Any subsequent data is discarded.
to ABORTED COMMAND with additional sense of 4800h (Initiator Detected Error). If the subsequent message is rejected with an Message Parity Error, then the drive goes to Status phase and sends CHECK CONDITION status. The sense key is set to ABORTED COMMAND with additional sense of 4300h (message error). On detecting a bus parity error during a Message Out phase, the drive will handshake in all message bytes until ATN is deasserted.
the initiator that least recently connected before processing the command for the new initiator. See “Sense Data Management” on page 131 for more details. Fibre Channel Operation Note This applies only to Fibre Channel drives.
Addresses Each Fibre Channel port also has a Port Address which is assigned during loop initialization and/or Fabric Login. This is a 24-bit value in the following format: The AL_PA is the Arbitrated Loop Physical Address. This is normally assigned dynamically during loop initialization. Together, the three bytes provide a unique address on the Fibre Channel fabric that is used for frame addressing. It forms the equivalent of the Target ID or Initiator ID in SCSI.
The values of the names can be obtained using the Device Identification Vital Product Information Page (part of the INQUIRY command). Implications for Libraries ■ Normally a standalone drive will operate using its own ‘hard’ names. ■ The drive knows it is in a library or other ‘managed’ environment since one of the signal lines on the ACI (Automation Control Interface) will be tied down. In this case, the drive will not go on the FC loop until it is told to.
still tied low, so in this case it will use the soft name last downloaded. This will allow drive access without confusing the host. Field Replaceable Units An FRU code identifies which part of the hardware is considered to have failed. These codes turn up in sense data byte 14 and as the sense code qualifier for sense codes 4400h (internal target failure) and 40XX (diagnostic failure).
Signal Name Driven by Description True (low) Input to the initiator False (high) Output from the initiator -MSG Message Target Indicates a Message phase on the bus. True (low) Message phase False (high) Command, Data or Status phases Target Indicates a request for a REQ/ACK data transfer handshake. Acknowledge Initiator Indicates an acknowledgment for a REQ/ACK data transfer handshake. -ATN Attention Initiator Indicates that the initiator has a message to send to the target.
2 Messages This chapter includes all SCSI messages, both supported and unsupported. Parts of this chapter come from Section 5, Logical Characteristics, of the SCSI standards (see page 13). The message system provides an initiator and a target on the SCSI bus with a means of managing communication. The available messages are listed in this chapter. Message Out Support (Parallel SCSI only) Name Code Support Abort 06h An abort condition is generated (see “Abort Handling” on page 16).
Name Message Parity Error Code Support 09h The initiator has detected a parity error in a message. The drive will retry the message. (See ““Message In Support (Parallel SCSI only)” below for details). If the message is received immediately after an Identify message or after the Command Complete message has been sent, the drive will go Bus Free. Message Reject 07h This message is sent when the initiator does not support a message sent by the drive or that the message is inappropriate.
Name Code Support Ignore Wide Residue 23h This message is sent by the drive to the host to indicate that a byte on a wide bus is not valid. This is supported whenever a wide transfer is active. It should be sent at the end of the data phase. The standard action of the drive is to send this message between the data phase and the status phase with no disconnect. Message Reject 07h This message is sent to the initiator when the message received by the drive is unsupported or inappropriate.
Name Code 04h Parallel Protocol Request Support The drive will never initiate a Parallel Protocol Request transfer negotiation but will expect the initiator to do so. If the message is received after selection and before the command phase, it will then go to message-in phase and respond with a valid response to complete the negotiation.
7 6 5 4 3 5 Req/Ack Offset 6 Transfer Width Exponent 7 Reserved (0) 2 1 0 QAS_Req DT_Req IU_Req Fields: Transfer Period Factor 09h Transfer period of 12.5s (FAST-80). Only valid when DT transfers have been requested 0Ch Transfer period of 50s (FAST-20) — LVD/SE drives only 19h Transfer period of 100s (FAST-10) 32h Transfer period of 200s (FAST-5) Req/Ack Offset This has a maximum value of 255. Transfer Width Exponent For ST transfers, this can be either 0 (Narrow) or 1 (Wide).
08h BUSY: The drive is unable to execute the command at this time. Try again later. The drive tries to avoid using this status code during normal operation. It can sometimes be used after commands have been aborted, during power-on and if there are multiple selecting initiators. 10h INTERMEDIATE: This status will never be returned by an HP Ultrium tape drive. 14h INTERMEDIATE CND: This status will never be returned by an HP Ultrium tape drive.
3 Commands—Introduction This chapter contains general notes relating to the SCSI commands listed in Chapter 4.
Command Details The command descriptions in this section are listed in alphabetical order of command name. Each command is described briefly. This is followed by a list of pre-execution checks which are described below. The Command Descriptor Block (CDB) is then given, with details of the various parameter bits and fields.
■ If no IDENTIFY message is supplied, the LUN is taken from the host’s Command Descriptor Block. ■ If an IDENTIFY message is supplied, the LUN in the host’s Command Descriptor Block is ignored ■ If the LUN is unsupported, and the host command is not REQUEST SENSE, CHECK CONDITION is reported to the host with a sense key of ILLEGAL REQUEST, and additional sense of 2500h (logical unit not supported).
Fixed Bit Check For the READ, VERIFY and WRITE commands, a Fixed bit set to 1 indicates that the length parameter of the command is for fixed block mode. If fixed block mode is selected then the block size in the Mode Select block descriptor must not be zero. Otherwise CHECK CONDITION is reported and the sense data is set as described for the ILLEGAL FIELD check.
■ The sense key specific bit is set and the sense key specific bytes will be a field pointer. ■ The command/data bit is set, indicating that the illegal parameter was in the command. Note Command descriptor blocks are scanned from left (bit 7) to right (bit 0), and down (from byte 0 to byte n). The field pointer will be set to point to the first bit of the first illegal field encountered using this scanning route.
Media Information Check During power-on and following a SCSI reset, knowledge of the whereabouts of the cartridge is unavailable. It is not possible to execute commands which assume that this knowledge is available until the drive has recovered from the power-on or reset. The test checks whether the drive knows if a cartridge is physically present in the drive.
Media Write Check This checks whether the media is write-protected. If it is, CHECK CONDITION is reported with a sense key of DATA PROTECT and additional sense of 2700h (write-protected). Parameter List Check For LOG SELECT, MODE SELECT and some diagnostic commands, the associated data sent to the drive is in the form of parameter lists. These are described under the command names in the next chapter. Checks are performed to test the following: ■ Fixed and reserved fields have not been modified.
Unit Attention Check This checks if a UNIT ATTENTION condition exists for the host which sent the command. If it does, the drive reports CHECK CONDITION status with a sense key of UNIT ATTENTION. The remaining sense data will be set according to the unit attention condition which exists. See Unit Attention Sense in the description of the REQUEST SENSE command on page 132.
Reserved A reserved field should always be set to zero. The drive checks reserved fields, and if one is non-zero then it will reject the command with CHECK CONDITION. Multi-Byte Parameter A multi-byte parameter field in a command is “big-endian”, that is, bit 7 of the first byte of this field is the most significant. Control The control field is mainly concerned with the use of linked commands.
Commands—Introduction
Commands 4 This chapter describes all SCSI commands. Parts of the chapter are based on sections of the SCSI specification (see page 13). For general notes on the command descriptions, see Chapter 3.
ERASE 19h The ERASE command is used to erase data on tape from the current logical position. The Long bit is used to decide whether the ‘old’ data is physically overwritten or not.
Warning EOM (drive error code 2C98h) will only be given if the tape was logically positioned past EOT immediately prior to this command.
INQUIRY 12h INQUIRY tells the drive to return information about the basic operating parameters to the host. These parameters cannot be changed. The drive returns Inquiry data to the host in a data-in phase. This command is immune from most of the pre-execution checks that other commands must pass (for example, it can be executed while the unit is reserved for another host). Unit attention and deferred error conditions are preserved and reported on subsequent commands.
Page Code If the EVPD bit is zero the Page Code field must be zero.
7 6 5 5 4 3 2 1 0 Reserved (0) 6 BQue(0) EncSvr(0) VS(0) MultiP MChngr Obsolete Obsolete Adr16 7 RelAdr(0) Obsolete WBus16 Sync Linked(0) TranDis(0) CmdQue(0) VS(0) 8 (MSB) Vendor Identification (“HP “) 15 16 (MSB) Product Identification 31 32 (MSB) (MSB) Reserved (0) 57 58 (LSB) Reserved (0) 55 56 (LSB) Product Revision Level 35 36 (LSB) Clocking (LSB) QAS (0) IUS (0) Reserved (0) (MSB) 59 Version Descriptor 1 (LSB) -------72 (MSB) 73 74 95 (MSB) Versi
Inquiry Data Fields Peripheral Qualifier Commands Peripheral Device Type 000b There is a device on the logical unit selected, so the LUN field in the identify message was 0. 011b The LUN field in the identify message has specified an unsupported logical unit. This means any LUN other than 0. 01h Sequential Access Device 08h Medium Changer Device 1Fh No Device (the Peripheral Qualifier will be 011b in this case) RMB 1 The Removable Medium bit is one, indicating that the tape can be removed.
WBus16 The Wide Bus 16 flag is set according to whether the hardware supports this bus feature. The flag is only valid for parallel SCSI and is clear for all other low level interfaces. 0 Synchronous data transfer is not supported. The flag should be zero for all lowlevel interfaces apart from parallel SCSI. 1 Synchronous data transfer is supported. The flag is only valid for parallel SCSI. Linked 0 The device does not support linked commands. CmdQue 0 The CmdQue flag is always zero.
Version Descriptor Value 1 2 3 4 5–8 0054h 0B1Ch 0227h 021Ch 0000h Standard SAM-2 T10/1157-D rev 23 SPI-3 ANSI NCITS.336:2000 SPC-2 ANSI NCITS.351:2001 SSC ANSI NCITS.335:2000 not used The following are the FC version descriptors: Value 1 2 3 4 5 6 7 8 0054h 0917h 0D7Ch 0DA0h 131Bh 1320h 0277h 021Ch Standard SAM-2 T10/1157-D rev 23 FCP-2 ANSI NCITS.332:1999 FC-AL-2 ANSI NCITS.350:200x FC-FS (no version claimed) FC-Tape T11/1315 revision 1.17 FC-FLA (no version claimed) SPC-2 ANSI NCITS.
This page contains a list of all the VPD page-codes supported by the drive.
Device Identification Page 7 0 6 5 4 3 Peripheral Qualifier (0) 1 0 Peripheral Device Type (1) 1 Page Code (83h) 2 Reserved (0) 3 Page Length (n-3) 4 2 (MSB) Identification Descriptors n (LSB) Identification Descriptors are constructed as follows: 7 5 4 3 2 1 0 Reserved (0) Code Set 1 Reserved (0) Identifier Type 2 Reserved (0) 3 Identifier Length (n-3) 4 (MSB) n Code Set 6 Identifier 0 (LSB) 1 The Identification Descriptor is a binary field.
Device Serial Number (FC and SCSI) 7 6 5 4 3 2 1 0 Reserved (0) Code Set (2) 1 Reserved (0) Identifier Type (1) 2 Reserved (0) 3 Identifier Length (34) 4 (MSB) Vendor ID 11 12 (MSB) 28 (LSB) Product Identification 27 (MSB) (LSB) Serial Number 37 0 (LSB) Port Name (FC only) 7 6 5 4 3 2 1 0 Reserved (0) Code Set (1) 1 Reserved (0) Identifier Type (3) 2 Reserved (0) 3 Identifier Length (8) 4 (MSB) Port Name (IEEE Registered Name) 11 0 (LSB) Device Name (FC
Port Identifier (FC only) 7 6 5 4 3 2 1 Reserved (0) Code Set (1) 1 Reserved (0) Identifier Type (4) 2 Reserved (0) 3 Identifier Length (4) 4 (MSB) Port Identifier 7 Commands 0 0 (LSB) The Port Identifier will be set to 1 if the addressed port is port A, and set to 2 if the addressed port is Port B.
7 30 6 5 4 (MSB) (MSB) 72 73 (MSB) 95 2 1 Version (“RRR.VVV”) 48 49 3 Date (“YYYY/MM/DD hh:mm”) Variant (“XXXXXXXXXXXX”) 0 (LSB) (LSB) (LSB) The Drive Component Revision Levels pages contain details of the revisions of each of the major sub assemblies of the drive. For any given product, if these pages are the same then the drive has been built with the same components and with the same manufacturing process. Each entry is a null-terminated ASCII string.
LOAD/UNLOAD 1Bh Pre-Execution Checks: Illegal Field Unit Attention Reservation Diagnostic Status Deferred Error Media Information If an unload is to be performed, the drive checks if the tape is currently being loaded. If it is, CHECK CONDITION is reported with a sense key of NOT READY and additional sense of 0401h (becoming ready). If a load is to be performed, the drive checks to ensure that a tape cartridge is present.
Hold 0 A normal load/unload will be performed. 1 A load will cause the cartridge to be pulled in and seated in the drive, but the tape will not be threaded. An unload will cause the tape to be unthreaded, but the cartridge will not be ejected. In Hold position, the Cartridge Memory is accessible. ReTen Load This field is ignored. 0 The drive performs an unload operation. 1 The drive performs a load operation.
■ If the Load was issued by some other host (or was an autoload) and completed successfully, CHECK CONDITION is reported, with a sense key of UNIT ATTENTION and additional sense of 2800h (not ready to ready ■ If the Load was issued by the current host and failed, CHECK CONDITION is reported, since a deferred error condition will exist for the current host. ■ If the Load was issued by some other host and failed, the load will be re- attempted on behalf of the current host.
LOCATE 2Bh The LOCATE command moves the current logical position to the position specified by the command. The new position is specified by the offset from start of the media in terms of blocks. The first block (that is, BOT) is block address 0. Any unwritten data is written to tape before the command is executed.
The Block Address specifies the number of blocks and filemarks between BOM and the position to be located. Partition Not supported. Commands Block Address Locate Specific Status: Event EOD encountered EOM encountered Failed to read data—media error or non-fatal drive error Early Warning EOM encountered Data format corrupt Status CHECK CONDN CHECK CONDN CHECK CONDN Key Additional Sense BLANK CHECK 0005h (EOD encountered). MEDIUM ERROR 0002h (EOT encountered). EOM bit set.
LOG SELECT 4Ch The Log Select command causes log data on the drive to be reset to its default value or to be set to an initiator specific value.
SP PC 0 The Save Page (SP) flag is not supported and must be set to 0. The Page Control field defines the type of parameter values to be selected: 01b The drive will clear logs as specified by the parameter data. 11b The drive will clear all of its internal logs. Parameter List Length 0 No data is to be transferred. This is not considered an error. >0 Specifies how many bytes of parameter data are to be sent.
LOG SENSE 4Dh LOG SENSE allows the host to read the drive’s logs. A single log is returned with each invocation of LOG SENSE. Pre-Execution Checks: Illegal Field Deferred Error Unit Attention The Page Code must match one of the supported log page codes. If it does not, then CHECK CONDITION status is reported. Sense data will be as described in the Illegal Field Checks.
11b Default Cumulative Values—any parameters in the log that are counters contain the initial values of those counters (set at power-on, reset, bus device reset and, in the case of media logs, load). Page Code The Page Code field identifies which log page is being requested by the host. See page 64 for the list of valid page codes. Allocation Length The Allocation Length field specifies the maximum number of bytes of data that should be returned to the host.
7 6 5 3 4 4 2 1 0 Parameter Length (n-3) (MSB) Parameter Bytes n Parameter Code 3 (LSB) A two-byte value that uniquely identifies the parameter within the log. DU, TSD, ET and TMC and LP 0 Must be zero. For a full description of these fields refer to the SCSI-2 standard. DS 1 Must be 1, indicating that drive will maintain the saving of data itself. Note that the host must set the SP bit to 1 in a LOG SELECT command, otherwise a CHECK CONDITION will result.
7 2 6 5 4 (MSB) 3 2 Page Length (09h) 0 (LSB) 4 Supported Pages (00h) 5 Write Error Counters (02h) 6 Read Error Counters (03h) 7 Sequential Access Device Log (0Ch) 8 TapeAlert Log (2Eh) 9 Tape Usage Log (30h) 10 Tape Capacity Log (31h) 11 Data Compression Log (32h) 12 Performance Log (34h) Commands 3 1 Write Error Counters Log Page The Write Error Counters log is page 02h. The Page Length is 38h. There are seven parameters, 0 through 6.
Read Error Counters Log Page The Read Error Counters log is page 03h. The Page Length is 38h. There are seven parameters, 0 through 6. Parameters 0 through 2 are not supported and are returned as zero. All fields are four bytes long. All these counters are updated when the data set is physically read. They relate to the current tape and are cleared when the tape is unloaded. Parm.
TapeAlert Log Page The TapeAlert log page is page 2Eh. There are 64 parameters numbered from 1 through 64. Only parameters 1 through 18, 20 through 23 and 29 through 39 have definitions for tape drives without attached loaders. The remaining parameters are always zero. All parameters are one byte long. Each parameter is either zero to indicate the corresponding condition has not occurred or one to indicate that the corresponding condition has occurred. All log parameters are cleared when the log is read.
Parameter 68 Commands Description Type 15 Memory in Cartridge Failure Warning 16 Forced Eject 17 Read-Only Format Warning 18 Tape Directory Corrupted Warning 19 Nearing Media Life Warning 20 Clean Now 21 Clean Periodic 22 Expired Cleaning Media Critical 23 Invalid Cleaning Cartridge Critical 29 Drive Maintenance 30 Hardware A Critical 31 Hardware B Critical 32 Interface 33 Eject Media 34 Download Fault Warning 35 Drive Humidity Warning 36 Drive Temperature Wa
Tape Usage Log Page This data can be neither reset nor written. Parm. Description Length 1 Thread Count 4 2 Total Data Sets Written 8 3 Total Write Retries 4 2 4 Total Unrecovered Write Errors 5 Total Suspended Writes 2 6 Total Fatal Suspended Writes 2 7 Total Data Sets Read 8 8 Total Read Retries 4 9 Total Unrecovered Read Errors 2 Tape Capacity Log Page The Tape Capacity Log Page code is 31h. The Page Length is 20h. There are four parameters, 1 through 4.
Data Compression Log Page The Data Compression Log Page code is 32h and the page length is 4Ch. There are ten parameters, 0 through 9. Parameters 0 and 1 are two bytes long. Parameters 2 through 9 are each 4 bytes long. The supported fields are listed below. Parameters 2 through 9 occur as pairs that represent a large number of bytes transferred. The first four-byte parameter represents the number of whole megabytes transferred, rounded to the nearest megabyte.
Parameter Description Length Updated Maximum data rate 2 After each data set has been logically written 3 Current data rate 2 After each data set has been logically written 4 Native data rate 2 Fixed All the parameters relate to the current tape. They are all cleared when the tape is unloaded, except Parameter 4, which is never cleared. All data will be reset when the log page is reset. The parameters are as follows. Repositions per 100 MB Number of tape direction changes per 100 MB written.
MODE SELECT 15h/55h MODE SELECT is used to send configuration data to the drive. Both 6-byte and 10-byte versions of the command are supported. The Mode Select parameter list is transferred from the host to the drive during the data-out phase. It contains zero or more bytes of information. If any information is sent, it should consist of a Mode Parameter Header followed by zero or more mode select pages. Internal parameters are set according to the values specified in the header and pages.
7 1 6 5 Reserved (0) 4 3 PF 2 1 Reserved (0) Reserved (0) 3 Reserved (0) 4 Parameter List Length 5 Control SP (0) Commands 2 0 10-Byte version 7 6 0 5 4 3 2 1 0 Operation Code (55h) 1 Reserved (0) 2 (MSB) 6 7 (MSB) 8 9 PF Reserved (0) SP (0) Reserved (0) (LSB) Parameter List Length (LSB) Control CDB Fields: PF SP Parameter List Length Page Format 0 The MODE SELECT parameter data is not SCSI-2 mode page compatible.
key is set to UNIT ATTENTION. Additional sense is set to 2A01h (mode parameters changed). Mode Parameter Pages Mode data is recovered from the drive by means of a Mode Sense command. After modification, it is returned to the drive via a Mode Select command. In real-life, many hosts do not use Mode Sense and return whatever Mode Select data suits them into the drive.
7 4 6 5 (MSB) 3 2 1 Mode Block Descriptor (MSB) (LSB) Mode Parameter Pages n 0 Commands 11 12 4 (LSB) Mode Parameter Pages HP Ultrium drives support the following pages: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ “Read-Write Error Recovery Mode Page” on page 78 “Disconnect-Reconnect Page” on page 79 “Control Mode Page” on page 81 “Data Compression Log Page” on page 70 “Device Configuration Page” on page 83 “Medium Partitions Mode Page” on page 85 “Fibre Channel Logical Unit Control Mode Page” on page 86 “Fibre C
10-byte Header The 10-byte Mode Parameter header has the following format: 7 0 6 (MSB) 5 4 3 2 1 Mode Data Length 1 2 0 (LSB) Medium Type [00h] 3 WP Buffered Mode [001b] 4 Speed (0) Reserved (0) 5 6 (MSB) 7 Block Descriptor Length (LSB) Header Fields Mode Data Length MODE SELECT: Mode Data Length field must be zero.
The drive will report GOOD status for WRITE and WRITE FILEMARKS commands as soon as all the data or marks specified in the command have been transferred to the data buffer and all buffered data from different initiators has been successfully written to the tape. This is the maximum value. 0 The Speed field is not used and should be zero. Only the values 0 and 8 are valid. Any value other than 0 or 8, CHECK CONDITION status is reported. See the Parameter List check for details of the sense data generated.
Read-Write Error Recovery Mode Page The Read-Write Error Recovery Mode Page has the following format: 0 7 6 PS (0) Rsvd (0) 1 5 4 3 2 1 0 DTE (0) DCR (0) Page Code {01h} Additional Page Length {0Ah} 2 Reserved (0) TB (0) Res (0) EER (1) 3 Read Retry Count 4–7 Reserved (0) 8 Write Retry Count 9–11 Reserved (0) PER [0] Read-Write Error Recovery Page Fields: Transfer Block TB 0 Always set to 0, meaning that an unrecoverable data block will not be transferred to the host.
The number of times the drive will attempt its recovery algorithm during a read operation before reporting an unrecoverable error. Read Retry Count The drive will not use its recovery algorithm during read operations. The number of times the drive will attempt its recovery algorithm during a write operation before reporting an unrecoverable error. Write Retry Count 0 The drive will not use its recovery algorithm during read operations. 0Ah The value for all Ultrium drives, giving 10 retries.
FC Drives The Disconnect-Reconnect Page has the following format for FC drives: 0 7 6 PS (0) Rsvd (0) 5 4 3 Additional Page Length {0Eh} 2 Buffer Full Ratio (0) 3 Buffer Empty Ratio (0) (MSB) Bus Inactivity Limit (0) 5 6 (MSB) (MSB) (MSB) 13–15 EMDP (0) (LSB) Maximum Burst Size [0] 11 12 (LSB) Connect Time Limit (0) 9 10 FAA [1] 0 (LSB) Disconnect Time Limit [0] 7 8 1 Page Code {02h} 1 4 2 FAB (1) FAC (1) (LSB) Reserved (0) Reserved (0) Disconnect-Reconnect Page Fields
FAA (FC only) This bit, together with FAB and FAC, indicate whether the drive will use fairness arbitration to send frames to the initiator. Commands 0 The drive will not use fairness when arbitrating to send FCP_DATA frames. 1 The drive will use fairness when arbitrating to send FCP_DATA frames. FAB (FC only) 1 The drive will use fairness when arbitrating to send FCP_XFER_RDY frames. FAC (FC only) 1 The drive will use fairness when arbitrating to send an FCP_RSP frame.
Control Mode Page Fields: Autoload Mode 0 If a cartridge is inserted, the drive pulls it in and threads the tape. 1 or When a cartridge is inserted, the drive pulls it in but does not thread the tape. In this 2 position, only the Cartridge Memory is accessible. All other values are invalid.
Data Decompression Enable Read only. It will have the value of 1, indicating that compression is enabled. RED Report Exception on Decompression Read only. It will have the value 0, meaning that the drive returns CHECK CONDITION status when it encounters data that cannot be decompressed. This applies when data has been compressed with an unknown or unsupported compression algorithm.
7 6 5 4 3 2 14 Select Data Compression Algorithm [ 1] 15 Reserved (0) 1 0 Pre-Execution Checks: The only check made when this page is sent in Mode Select data is Parameter List. Changeable Parameters: Write Delay Time This field can be modified by a MODE SELECT command, and this change will be reflected in a subsequent MODE SENSE command. However the actual value used as the delay time will remain as zero, and so the data in the buffer will never be flushed. The default value is zero.
0 The Report Set Marks flag should be clear since this feature is not supported. AVC 0 The Automatic Velocity Control flag should be clear since velocity control is managed by the drive. SOCF 0 The Stop On Consecutive Filemarks flag should be clear since this feature is not supported. RBO 0 The Recover Buffer Order flag should be clear since this feature is not supported. REW 0 The Report Early Warning on read flag should be clear since this feature is not supported.
None of the fields in this mode page are changeable. Maximum Additional Partitions 0 Zero is returned, indicating that no additional partitions are present or supported. Additional Partitions Defined 0 Zero must be returned, indicating that no additional partitions are present or supported. FDP 0 The Fixed Data Partitions bit is not supported and must be set to zero. SDP 0 The Select Data Partitions bit is not supported and must be set to zero.
EPDC 0 The target does not use the precise delivery function and ignores the contents of the CRN field in the Fibre Channel Extended Link Service FCP_CNTL. HP Ultrium drives support this feature by default.
Disable Loop Master. The drive will never attempt to be a loop master. DLM 0 The target may become loop master during the loop initialization process. 1 The target does not become loop master. It only repeats LISM frames it receives. This allows the initiator to be loop master during loop initialization. Require Hard Address RHA 0 The target follows the normal initialization procedure, including the possibility of obtaining a soft address during the loop initialization process.
Information Exceptions Mode Page 0 7 6 PS (0) Rsvd (0) 5 4 Perf (0) 11 Perf DExcpt Reserved (0) DExcpt Reserved (0) (MSB) 7 8 1 0 Rsvd (0) LogErr (0) Page Length {0Ah) 3 4 2 Page Code {1Ch} 1 2 3 (MSB) Test MRIE (3h) Interval Timer (0) Report Count/Test Flag Number (LSB) (LSB) 0 Informational exception operations that cause delays are acceptable. Disable Exception Control. It must be zero when the Test Flag Number is zero.
LogErr 0 Log Errors bit. This bit must be zero, indicating that the logging of informational exception conditions within the drive is vendor-specific. Method of Reporting Informational Exceptions MRIE 3h This field indicates the method used by the target to report informational exception conditions and must be set to 3. The target will report informational exception conditions by returning a CHECK CONDITION status on any command.
MODE SENSE 1Ah/5Ah The mode sense header, block descriptor (optional), and zero or more of the are sent to the host. Mode pages contain drive configuration parameters. Some of these parameters are fixed, others are configurable (through the MODE SELECT command). The host should use MODE SENSE to determine which drive parameters are configurable and what their current values are before using mode select to alter them. See MODE SELECT on page 72 for full descriptions of the Mode Parameters.
7 6 5 4 3 3 Reserved (0) 4 Allocation Length 5 Control 2 1 0 2 1 0 10-Byte Version 7 6 0 5 4 3 Operation Code (5Ah) 1 Reserved (0) 2 DBD PC 3 (MSB) 6 7 (MSB) 8 9 Reserved (0) Page Code Reserved (0) Allocation Length (LSB) (LSB) Control CDB Fields: Disable Block Descriptors flag DBD 0 Allows the drive to return the MODE SELECT block descriptor. 1 Prevents the drive from returning the MODE SELECT block descriptor.
Any mode The drive returns that page. page code Allocation Length The drive returns all mode pages. Specifies the number of bytes that the host has allocated for returned MODE SENSE data. 0 No data transfer will occur. This is not considered an error. n The maximum number of bytes which the drive should return in its data-out phase. Either the entire mode page or allocation length bytes of the page are returned, whichever is least.
PREVENT/ALLOW MEDIUM REMOVAL 1Eh PREVENT/ALLOW MEDIUM REMOVAL tells the drive to enable or disable the removal of the cartridge. When cartridge removal is prevented, the front panel eject button is completely disabled (though a ‘forced eject’ will still work). An Unload command issued by a host will result in CHECK CONDITION. The sense key will be ILLEGAL REQUEST or MEDIUM REMOVAL PREVENTED.
READ 08h Commands READ transfers zero or more data blocks to the host starting at the current logical position. Pre-Execution Checks: Illegal Field Unit Attention Fixed Bit Media Access Reservation Diagnostic Status Deferred Error If both the SILI and Fixed bits are set, CHECK CONDITION status is reported. Sense data is as described in the Illegal Field Checks. The field pointers indicate the Fixed bit field. Transfers of 4 bytes or less are not supported.
If the fixed flag is set and the Transfer Length field is not zero and the Suppress Illegal Length Indicator (SILI) flag is clear, a sequence of blocks of the currently configured block length is to be returned, the number of blocks being indicated in the Transfer Length field. If there is a sequence of blocks of this length on the tape, they are returned to the initiator with GOOD status.
1 the initiator with GOOD status. ■ If a block that is shorter than the configured length is encountered before the sequence is complete, the blocks up to that block are returned followed by all of that block and CHECK CONDITION status (ILI will be reported as described below). The current position is set after the last block that was returned.
Event Failure to read data through media error or non-fatal drive error Corrupt data format Blank media encountered during a read Status Key Notes CHECK MEDIUM Additional sense is set to 1100h (unrecovered read error) or 3B00h COND’N ERROR (sequential positioning error). Residue information is as described below. CHECK COND’N CHECK COND’N MEDIUM Additional sense set to 3002h (can’t read media). ERROR BLANK Caused by an attempt to read an unformatted tape.
READ ATTRIBUTE 8Ch Pre-Execution Checks: Illegal Field Bad LUN Unit Attention Fixed Bit Reservation Media Access Flag Link Deferred Error Diagnostic Status If the MAM is not accessible because there is no tape in the drive, CHECK CONDITION is reported with a sense key of NOT READY and additional sense of 3A00h (medium not present).
7 8 6 (MSB) 4 3 2 First Attribute ID 9 10 5 (MSB) Allocation Length 13 14 Reserved (0) 15 Control 1 0 (LSB) (LSB) CDB Fields: Service Action Service actions are defined as follows. The data returned for each Service Action is described below. Code Name Description 00h Attribute Values Returns the attribute values. 01h Attribute List Returns a list of attribute identifiers available) non-existent. 02h Volume List Returns a list of volume numbers available.
Returned Data for Service Actions: Attribute Values Service Action 7 0 6 5 (MSB) 4 3 2 1 Available Data (n-3) 3 4 Commands This service reads the values of attributes for the specified volume and partition, starting at the First Attribute ID. The attributes are returned in ascending numerical order.
The Available Data field specifies the length in bytes of the following data. If the amount of parameter data sent to the application client is reduced due to insufficient allocation length, the Available Data field shall not be altered. A two-byte Attribute ID is returned for each attribute available on the device server. See “Attribute ID Values” on page 104 for a description of the Attribute ID values.
The Number of Volumes Available indicates the number of partitions available. Since Ultrium drives do not support multiple volumes, this is 1.
Attribute ID Values The values in the Attribute ID field are assigned according to the source of changes or updates as follows.
These are native capacities in MB, assuming no data compression. Load Count The number of times this tape has been fully loaded. This parameter should not be reset by any action of the device server. MAM Space Remaining The space currently free in the MAM. The total MAM capacity is reported in the MAM Capacity attribute defined in “Medium Common Attributes” on page 106. Note that it may not always be possible to use all the free space in a given MAM implementation.
Partition Usage History The Partition Usage History attribute provides the same counters as the Medium Usage History but they apply only to the current partition. Since Ultrium drives only support a single partition, the values will be the same as in Medium Usage History. Product Serial Number A vendor-assigned serial number. If the product serial number is not available, the device server will return ASCII spaces (20h).
The Medium Type and Medium Type Information attributes give information about non-data media and other types of media. The Medium Type Information attribute is interpreted according to the type of medium indicated by the Medium Type. Defined values are shown in Table 17.
attributes. In the absence of a formal registration procedure, T10 maintains a list of Vendor Identification codes in use. Vendors are requested to voluntarily submit their identification codes to T10 to prevent duplication of codes (see Annex D). The Application Name identifies the name of the application client. The Application Version identifies the version of the application client. The User Medium Text Label is the user level identifier for the medium.
The Partition User Text Label is a user level identifier for the partition specified in the CDB Partition Number field Commands 109 Commands The Load/Unload at Partition attribute indicates whether the media can be loaded or unloaded at the Partition specified in the CDB Partition Number field. If loads/unloads are enabled for the specified partition, the value of this parameter shall be 1h. If loads/unloads are not enabled for the specified partition, the value of this parameter shall be 0h.
READ BLOCK LIMITS 05h READ BLOCK LIMITS tells the drive to return data defining the maximum block size that it can support. Note that this is the maximum supportable, not the fixed block size.
READ BUFFER 3Ch Pre-Execution Checks: Illegal Field Reservation Deferred Error Unit Attention If any of the following rules are broken then CHECK CONDITION status is reported. Sense data will be as described in Illegal Field Checks.
00011b The drive returns a 4-byte descriptor for the buffer identified by the Buffer ID field. Invalid buffer IDs will return a buffer descriptor of all zeros. The Buffer Offset field must be zero. 01010b The drive returns data from the Echo Buffer. The Buffer ID and Offset are ignored. 01011b The drive returns the Echo Buffer descriptor. The Buffer ID and Offset are ignored. Buffer ID The Buffer ID indicates which buffer is to be read.
23h 03000000h + Buffer Offset (in other words, +48 MB) Segment Start Address Segment End Address Segment Size Segment Description 000000h 13FFFFh 1 MB + 256 KB Controller ASIC flash 180000h 1BFFFFh 512 KB.
7 1 6 5 4 3 2 1 0 (MSB) 2 Buffer Capacity 3 (LSB) The format of the 4-byte Echo buffer descriptor for Mode 01011b is as follows: 7 0 1 2 3 114 Commands 6 5 4 3 Reserved (0) 2 1 0 EBOS (1) (MSB) Echo Buffer Size (1000h) (LSB)
READ POSITION 34h Two forms of the command are supported, the ’traditional’ short form with BT=0 and a new (SCSI-2) long form where a distinction between partitions, marks and blocks is drawn. The Read Position command is complimented by the LOCATE command.
Block address Type BT 0 This bit is not supported and must be set to zero. The offset into the current partition represents the count of all blocks and filemarks between the beginning of the media and the current logical position. The Long bit and the TCLP bit must be equal. If they are not, the command will terminate with CHECK CONDITION status. The sense key will be set to ILLEGAL REQUEST with additional sense of 2400h (invalid field in CDB).
BPU Block Position Unknown The First and Last Block Location fields are valid. 1 Block position is unknown. First and Last Block Location fields are undefined. This will only occur after a “hard” read error that has caused a sense key of MEDIUM ERROR with additional sense of 3B00h (sequential positioning error). Partition Number This will always be zero. First Block Location The First Block Location specifies the number of blocks and filemarks to the current position.
MPU Mark Position Unknown 0 The File Number and Set Number fields are valid. 1 Mark position is unknown. If set, then the File Number and Set Number fields are undefined. This would be set only after a “hard” read error which resulted in the setting of positioning error sense such as 3B00h (sequential positioning error). Partition Number This will always be zero because Ultrium drives do not support multiple partitions.
RECEIVE DIAGNOSTICS RESULTS 1Ch Pre-Execution Checks: Illegal Field Reservation Deferred Error Unit Attention Command Descriptor Block: 7 6 5 4 3 0 Operation Code (1Ch) 1 Reserved(0) 2 3 2 1 0 PCV (1) Page Code (MSB) 4 Allocation Length 5 (LSB) Control CDB Fields: PCV 1 The page code is valid. This flag must be set. Page Code 0 Identifier for the diagnostic information page to be returned. Allocation Length 0 No data will be returned. This is not considered an error.
If other invalid pages are requested, CHECK CONDITION will result with status of ILLEGAL REQUEST and additional sense of 2601h, “parameter not supported”. Data Returned Page Code 70h — Self-Test (Read/Write) Page Format for Write: 7 6 5 4 3 0 Page Code (70h) 1 Reserved (0) 2 (MSB) 2 1 Parameter List Length (0) 3 0 (LSB) No parameters are needed. Sending this page is equivalent to a Send Diagnostic command with both the SelfTest and UnitOfl bits set.
RELEASE UNIT 17h/57h The 10-byte RELEASE UNIT command is supported by all drives. Its functionality is the same as for the 6-byte command, but it also supports thirdparty reservation. Pre-Execution Checks: Illegal Field Deferred Error Unit Attention Command Descriptor Block: 6-Byte 7 6 5 0 4 3 2 1 0 Operation Code (17h) 1 Reserved (0) 3rd Pty 2 Third-Party Device ID Rsvd(0) Reserved (0) 4 5 Control This bit is always zero because third-party reservation is not supported.
7 6 5 4 3 2 Reserved (0) 3 Third-Party Device ID 4 1 0 Reserved (0) 6 7 2 (MSB) Parameter List Length 8 9 (LSB) Control 10-Byte Only 3rd Pty 0 Third-party release is not requested. 1 The initiator requests third-party release. The value in the Third-Party Device ID field is valid. LongID This is always zero because device IDs greater than 255 are not supported. Third-Party Device ID This is required and used only when the 3rd Pty bit is set.
REPORT DENSITY SUPPORT 44h The data is returned as a header and a series of descriptor blocks. Pre-Execution Checks Illegal Field Deferred Error Unit Attention Command Descriptor Block 7 6 5 4 3 0 Operation Code (44h) 1 Reserved (0) 2 1 0 Media Reserved (0) 6 7 2 (MSB) 8 9 Allocation Length (LSB) Control CDB Fields Media Allocation Length 0 One descriptor block is returned for each format supported by the drive.
Header 7 0 6 5 (MSB) 4 3 2 1 Available Density Descriptor Length 1 2 Reserved (0) 3 Reserved (0) 0 (LSB) The available length gives the total amount of data that is available to be returned.
7 24 6 (MSB) 4 3 2 1 (MSB) (LSB) Description 51 0 (LSB) The values reported for the Ultrium 2 format tapes are as follows: Primary Density Code 42h This is reported via the MODE SENSE command. Secondary Density Code 42h Not used WRTOK The Write OK flag indicates whether the drive can write at the density indicated by the Density Code. 0 The drive does not support writing to a tape with this density.
REPORT LUNS A0h Description: The Report LUNS command allows the host to retrieve information about what logical units the drive supports. The standard drive only has a single LUN. Pre-Execution Checks: Illegal Field Command Descriptor Block: 7 6 5 0 3 2 1 0 Operation Code (A0h) 1 Reserved (0) 5 6 4 (MSB) Allocation Length 9 10 Reserved (0) 12 Control (LSB) CDB Fields: Allocation Length Must be at least 16 bytes.
7 6 5 4 3 2 1 0 List of LUNs 15 (MSB) LUN 0 (0) (LSB) Commands 127 Commands 8
REQUEST SENSE 03h The REQUEST SENSE command transfers sense data held within the drive to the host during a data-in phase. The data is valid in the following circumstances: ■ After reporting CHECK CONDITION status to the host. ■ After a command has terminated with an unexpected BUS FREE.
CDB Fields: Allocation Length This field is ignored. 0 No data is transferred to the host. >0 The maximum amount of sense data in bytes that should be transferred to the host. The drive returns up to Allocation Length bytes of data; any extra sense data is lost.
Returned Sense Data Fields: Valid Error Code 1 Indicates that the information bytes contain valid information as defined in the SCSI specification. 70h Indicates that the error is current, that is, it is associated with the command for which CHECK CONDITION status has been reported. 71h Indicates that the error is deferred.
1 Command Data. Only valid if the SKSV flag is set. C/D 0 The Field Pointer information applies to the parameter list for the command. 1 The Field Pointer information applies to the command descriptor block. Bit Pointer Valid BPV 0 The Bit Pointer field is invalid. 1 The Bit Pointer field is valid. If the SKSV bit is set then the BPV bit must be set as well. Bit Pointer Identifies the bit position of the field in error, whether it is a command descriptor or a command parameter list field.
■ DEFERRED ERROR sense Unless otherwise stated, all the following descriptions apply to the sense data for a single host whose command is being executed. Current Sense Current sense is the data that is returned in response to a REQUEST SENSE command. It is modified or updated in the following circumstances: ■ It is cleared in response to the arrival of any command other than REQUEST SENSE or INQUIRY. ■ It is cleared following execution of a REQUEST SENSE command.
■ Power On, SCSI Reset, Bus Device Reset ■ Media inserted Commands ■ A load command executed by a third party ■ Mode Sense parameters changed by another initiator ■ Drive firmware has been updated UNIT ATTENTION sense will persist for a host until the host sends a command that has Unit Attention as part of its pre-execution checks. When the Unit Attention pre-execution check fails, the UNIT ATTENTION sense is copied to the Current sense and CHECK CONDITION status is reported to the host.
■ The operation was abandoned without status (that is, a bus release occurred) after what the drive perceived was a catastrophic error or when an error occurred following the drive’s honoring of an ABORT message. Following the bus release, the drive performed “cleanup” activity that failed. The Deferred Error refers to the reason for this failure. When any one of the above occurs, the sense generated will be DEFERRED ERROR sense.
Sense Keys The following table lists the sense keys that may be returned by HP Ultrium drives. SCSI sense keys are 4-bit codes returned in the sense data. They indicate in what general area the problem that has just been experienced falls. For a clearer indication of the nature of the problem, refer to the additional sense code. Code 0h 1h 2h 3h 4h 5h 6h 7h Name Description ASC/Qs NO SENSE There is no real problem.
Code Name Description ASC/Qs 8h BLANK CHECK The drive tried to read unwritten tape. 9h VENDOR SPECIFIC Never returned by HP tape drives Ah COPY ABORTED Never returned by HP tape drives Bh ABORTED COMMAND Ch EQUAL The drive has stopped trying to act on a command, usually 3D00h, 4300h, 4500h, through some problem on the SCSI bus.
Code Description Explanation 04 00h LUN not ready, cause not reportable 04 02h 04 03h 04 07h 04 10h 0C 00h 0C 0Bh 11 00h 11 12h 14 00h 14 03h 1A 00h 20 00h 24 00h 25 00h 26 00h 26 01h 27 00h 28 00h 29 01h Commands 137 Commands 04 01h A tape is present in the drive but is in the process of being unloaded.
Code Description SCSI bus reset 29 02h 29 03h 29 04h 29 05h 29 06h 2A 01h 30 00h 30 01h 30 02h 30 03h 30 04h 30 07h 31 00h 35 01h 35 02h 37 00h 3A 00h 3A 04h Explanation SCSI drives: The drive has received a SCSI reset signal since the host last accessed it. FC drives: The drive has received its first process login. The drive will be implicitly logged out after a Target Reset so this ASCQ will be posted after the host has performed port/process login.
Code Description 3B 00h Sequential positioning error Invalid bits in Identify message 3E 00h Logical unit has not self-configured yet 3F 01h Microcode download Echo buffer overrun 3F 0Fh 3F 11h Media Auxiliary Memory accessible 40 XXh 43 00h Diagnostic failure on component XX Message error 44 00h Internal target failure 45 00h Select or reselect failure 47 00h SCSI parity error 48 00h Initiator detected error message received 49 00h Invalid message error 4A 00h Command phase error 4B 00h Data p
Code Description 53 02h Medium removal prevented 55 03h Insufficient resources 55 06h Media Auxiliary Memory full 5D 00h Failure prediction threshold exceeded 5D FFh Failure prediction threshold exceeded (false) 82 82h 82 83h Drive requires cleaning Bad microcode detected Explanation An UNLOAD command has failed to eject the tape because medium removal has been prevented. There is insufficient space in the Host Attribute area in MAM to fit the attribute that need to be written.
RESERVE UNIT 16h/56h Once reserved, the drive will execute commands received from the reserving initiator or from the third-party initiator if the 3rd-Pty option has been selected. Commands from other initiators will have RESERVATION CONFLICT status reported for them, apart from INQUIRY, REQUEST SENSE, LOG SENSE, REPORT LUNS, REPORT DENSITY SUPPORT, READ BLOCK LIMITS and RELEASE UNIT.
7 1 6 5 Reserved (0) 4 3 3rd Pty(0) 2 2 1 Third-Party Device ID (0) 0 Rsvd(0) Reserved (0) 4 5 Control 3rdPty This is always zero because third-party reservation is not supported. Third-Party Device ID This is always zero because third-party reservation is not supported.
Third-Party Device ID This is required and used only when the 3rd Pty bit is set, in which case this field specifies the SCSI ID of the initiator to be granted the reservation of the logical unit. The drive preserves the reservation until one of the following occurs: ■ It is released by the same initiator with a third-party RELEASE UNIT command with the same value in the Third-Party Device ID field. ■ It is released by a hard reset or a power-cycle.
REWIND 01h REWIND tells the drive to position the tape at BOM (beginning of media). Before rewinding, the drive writes any write-behind data in the buffer to tape. Once a rewind is started, it will complete even if the SCSI operation is aborted (for example, if the host selects and sends an abort message).
SEND DIAGNOSTIC 1Dh The test results can be retrieved with the RECEIVE DIAGNOSTIC RESULTS command. Pre-Execution Checks: Illegal Field Reservation Deferred Error Unit Attention ■ If Self-Test = 0, the UntOffl bit must be set, otherwise CHECK CONDITION is reported. Sense data will be as described in Illegal Field Checks. ■ If Self-Test = 1, the Parameter List Length field must be zero. Otherwise CHECK CONDITION is reported. Sense data will be as described in Illegal Field Checks.
Self-Test 0 Perform the diagnostics specified in the parameter list. The UnitOffL bit must be set, otherwise CHECK CONDITION is reported. The drive reports status when the command has been completed. 1 Perform the standard self-test depending on the value of UnitOffL (see above). The Parameter List Length must be 0 otherwise CHECK CONDITION is reported. The drive will report GOOD status following the pre-execution checks and before executing the command. Device Offline bit. Must be cleared to zero.
Standard Self-Test If Self-Test = 1 and UntOffl = 0, a test is performed that does not affect the contents of the tape. This test is a more extensive set of the tests carried out at power-on. If UntOffl = 1, the tape contents can be overwritten and will be undefined after the test. A user can re-use the tape after the test. With no tape in the drive: The same self-test will be executed regardless of the setting of UntOffl.
SPACE 11h SPACE provides a variety of positioning functions that are determined by Code and Count fields in the Command Descriptor Block. Both forward (towards EOM) and reverse (towards BOM) positioning are provided. Any unwritten data in the buffer is flushed to tape before the space is started. The logical media position is then modified according to the Code and Count fields.
Count ■ When spacing over blocks or filemarks this field indicates how many blocks or marks Space Specific Status: If the drive fails to space either from a medium error or from some sort of nonfatal drive error, CHECK CONDITION status is reported. The sense key will be set to MEDIUM ERROR. Additional sense depends on the nature of the error. The two most common additional sense code and qualifiers in this case will be: 1100h (unrecovered read error) and 3B00h (sequential positioning error).
■ Early warning end of medium information is not reported. ■ If a space records or space filemarks command fails then the sense data information bytes will be set to the absolute value of the difference between the requested number of marks/records and the actual number of marks/ records spaced over and the Valid bit set. The residue for a prematurely terminated Space towards BOM will always be a positive value. Note: This value will only be accurate if the sense key is NO SENSE.
TEST UNIT READY 00h Pre-Execution Checks: Illegal Field Unit Attention Reservation Media Access Deferred Error Media Information Command Descriptor Block: 7 0 1 4 5 6 5 4 3 2 1 0 Operation Code (00h) Reserved (0) Control Test Unit Ready Specific Status: If all the pre-execution checks pass, GOOD status is reported. Commands 151 Commands TEST UNIT READY checks if the drive is ready for commands that access the tape.
VERIFY 13h VERIFY verifies one or more blocks beginning with the next block on the tape. The verification is media verification only. It reads data from the tape as it would for a read but then immediately discards it. No data is transferred between the host and drive. The command is identical to the READ command in most respects. The preexecution checks are identical. Sense data reporting on errors/exceptions is identical. The only differences are: ■ No data phases occur during verification.
0 The Byte compare option is not supported, so this bit must be 0. Fixed 0 The Verification Length field specifies the length of the data to be verified in bytes. 1 The Verification field specifies the length of the data to be verified in blocks. The size of each block (in bytes) is specified by the current block length specified in the Mode Parameter block descriptor. 0 No data is verified. This is not considered an error and the current logical position will be unchanged.
WRITE 0Ah Zero or more blocks of data are transferred from the host to tape starting at the current logical position. It is recommended that the Buffered Mode field of the MODE SELECT Parameter is set to either 1 or 2 so that Immediate reporting is enabled; upon a write command the drive will report GOOD status once the data is successfully transferred to the data buffer (but not necessarily to tape).
CDB Fields: Fixed The Transfer Length field specifies the length of the transfer in bytes. 1 The Transfer Length field specifies the length of the transfer in blocks. The size of each block (in bytes) is determined by the current Block Length given in the Mode Select Parameter block descriptor. 0 No data is transferred. The current logical position will be unchanged. >0 The amount of data to be transferred, in bytes or blocks as determined by the Fixed field.
■ Immediate or Non-Immediate Report (Buffered mode). Block Mode Buffered Mode Variable 0 Number of unwritten bytes Fixed 0 Number of unwritten blocks Variable not 0 specifically 1 Fixed not 0 specifically 1 Residue Total number of unwritten bytes and marks (including those buffered before the command was received). The size can be greater than the command operation size. Contains residues of all initiators with data in the buffer.
WRITE ATTRIBUTE 8Dh Pre-Execution Checks: Illegal Field Reservation Deferred Error Unit Attention Media Access If the combination of Volume Number and Partition Number is not valid, CHECK CONDITION is reported with a sense key of ILLEGAL REQUEST and additional sense of 2400h (invalid field in CDB). If any of the following conditions occur, CHECK CONDITION is reported with a sense key of ILLEGAL REQUEST and additional sense of 2600h (invalid field in parameter list).
■ If the MAM is not accessible even though there is a tape in the drive. CHECK CONDITION is reported with a sense key of MEDIUM ERROR and additional sense of 0410h (Media Auxiliary Memory not accessible). None of the attributes are changed. ■ If the MAM has failed (for example from a bad checksum). CHECK CONDITION is reported with a sense key of MEDIUM ERROR and additional sense of 0C0Bh (Media Auxiliary Memory write error). ■ If the Parameter List Length results in the truncation of any attribute.
CDB Fields: The number of the volume within the MAM. The number of volumes of the MAM must be equal to that of the tape. In the case of Ultrium, the only has a single volume, so this field is be set to 0. Partition Number The number of the partition within the MAM. The number of partitions of the MAM must be equal to that of the tape. In the case of Ultrium, the only has a single partition, so this field is be set to 0.
WRITE BUFFER 3Bh Write Buffer is used to transfer data into memory on the drive for the purposes of diagnostics, tests or firmware upgrade. The data is placed into one of the drive buffers depending on the Mode and Buffer ID fields of the command. Do not attempt to use the buffer modifying functions of this command unless you really know what you are doing. The buffer modifying functions are intended as a diagnostic aid to be used in conjunction with the Read Buffer command.
CDB Fields: Mode This field can be set to one of the following values: 00010b The drive transfers allocation length bytes of data from the host, bytes of data which is placed in the buffer indicated by Buffer ID, starting from Buffer Offset from the start of the buffer. No header is sent. The Buffer Offset and Allocation Length must be kept within the buffer size, and the Buffer ID must to set to one of the valid values. 00100b This mode is used to transfer new firmware to the drive.
Specifies which buffer to read.
Main Processor Memory: Not all the Processor Memory space is accessible. The following table shows valid address segments: SCSI Burst Buffer: PCA EEPROM: Size Description 180000h 1BFFFFh 256 KB max. External SRAM (if fitted) 200000h 23FFFFh 256 KB Formatter ASIC 240000h 27FFFFh 256 KB Servo Controller ASIC 280000h 29FFFFh 128 KB Whitewater ASIC (minus buffer) FF80000h FFEFFFh 28 KB Main memory internal SRAM The buffer is 192 Kb, that is, addresses from 00000h through 30000h.
WRITE FILEMARKS 10h WRITE FILEMARKS causes the specified number of filemarks to be written beginning at the current logical position on tape. If the Immed bit is set, GOOD status may be reported and the marks left in the data buffer. Otherwise, all buffered data and marks are written before status is reported. If zero filemarks are to be written, the Immed bit must be zero. The drive writes any buffered data and marks to tape before reporting. This is the recommended way for a host to flush the buffer.
glossary Glossary algorithm ANSI asynchronous BOM checksum compression compression ratio data set data transfer phase A rigorous set of rules for a procedure. In the context of data compression, the rules are for transforming the way data is represented. American National Standards Institute, which sets standards for, amongst other things, SCSI and the safety of electrical devices. see data transfer phase Beginning Of Media. The first point on the tape that can be accessed by the drive.
(16-bit) data transfer, two bytes are transferred at the same time instead of a single byte. HP Ultrium drives support asynchronous, synchronous and wide transfers. decompression DSIT ECMA enhanced commands A procedure in which the original data is generated from compressed data. Data Set Information Table. Part of the data set that describes its contents. European Computer Manufacturers Association. The European equivalent of ANSI. SCSI commands that are vendor-unique and not part of the common SCSI set.
RAW read-after-write see read-after-write RAW improves data integrity by reading data immediately after it is written and writing the data again if an error is found. reserved Not generally available for use with the drive. A reserved field should contain all zero bits. SCSI Small Computer System Interface—a standard command specification and command set that enables computers and peripherals to communicate with each other.
Ultra2 SCSI can transfer data at up to 80 MB/s wide, using a cable of up to 25 meters total length for a single device, or up to 12 meters for two or more devices (it is also known as “Fast40”). Ultra3 or Ultra160 can transfer data at up to 160 MB/s wide. Cable lengths are as for Ultra2. Ultra4 or Ultra320 will transfer at up to 320 MB/s. Ultra SCSI supports both SE and LVD interfaces.
index Index A abort handling 16 Aborted Command 136 ACK signal 24 additional sense codes 130, 136 addressing, fibre channel 20 algorithms 165 compression 83 decompression 83 ANSI 3, 165 append error 139 asynchronous 165 asynchronous data transfer 13 ATN signal 24 B Bad LUN check 32 bit pointer 131 BLANK CHECK 136 blank media, met during read 98 blocks, spacing over 148 BOM 130, 165 detected 136 met during space 149 BOP, met during space 149 BPV bit 131 brackets, round, square 74 BSY signal 23 buffer echo
READ ATTRIBUTE 99 READ BLOCK LIMITS 110 READ BUFFER 111 READ POSITION 115 RECEIVE DIAGNOSTIC RESULTS 119 RELEASE UNIT 121 REPORT DENSITY SUPPORT 123 REPORT LUNS 126 REQUEST SENSE 128 RESERVE UNIT 141 REWIND 144 SEND DIAGNOSTIC 145 SPACE 148 supported 14 VERIFY 152 WRITE 154 WRITE ATTRIBUTE 157 WRITE BUFFER 160 WRITE FILEMARKS 164 compatibility 138 compression 165 algorithm 83 ratio 165 control byte 38 control field 39 Control Mode page 81 current sense 132 clearing 132 D Data Compression Capable bit 82 C
command phase 139 counters 65, 66 data phase 139 deferred 130 invalid message 139 message 139 parity 139 read, unrecovered 137 sequential positioning 139 write 137 write append 139 write-behind deferred 134 EVPD bit 44 EW-EOM 166 met during locate 59 F failed cartridge memory 56, 155 faults, predicting 67 fibre channel addressing 20 names 20 Fibre Channel Logical Unit Control Mode page 86 fibre channel operation 20 Fibre Channel Port Control Mode page GOOD status 29 group code 38 H hard resets 16 HARDWAR
Performance Data Log page 70 Read Error Counters Log page 66 Sequential Access Device Log page 66 Supported Log Pages page 64 Tape Capacity Log page 69 Tape Usage Log page 69 TapeAlert Log page 67 Write Error Counters Log pages 65 logs clearing 60 Data Compression 70 parameter pages 63 Performance Data 70 reading 62 supported 64 Tape Capacity 69 Tape Usage 69 TapeAlert 67, 168 LUN 166 becoming ready 137 not ready 137 not self-configured 139 not supported 137 LVD 166 M MAM accessible 139 full 140 inaccess
Bad LUN 32 Deferred Error 33 Diagnostic Status 33 Fixed Bit 34 Flag Link 34 Illegal Command 34 Illegal Field 34 Media Access 35 Media Information 36 Media Write 37 Parameter List 37 Reservation 37 Unit Attention 38 prevent media removal 140 problems, predicting 67 R 123 REPORT LUNS command 126 REQ signal 24 REQUEST SENSE command 128 data 129 reselect failure 139 Reservation check 37 RESERVATION CONFLICT status 30 reservations, releasing 121 RESERVE UNIT command 141 S SCSI 3, 13, 167 commands 41 interfac
CHECK CONDITION 29 GOOD 29 RESERVATION CONFLICT 30 Summary 31 supported commands 14 Supported Log Pages page 64 synchronous 168 synchronous data transfer 13 synchronous data transfer request 28 T tape faulty 139 incompatible 138 loaded 133 loading 56 removal prevented 140 unloading 57 Tape Capacity log 69 Tape Usage log 69 TapeAlert log 168 TapeAlert Log page 67 third-party, reserving for 121 U Unit Attention check 38 UNIT ATTENTION sense 132, 135 UNLOAD command 55 unloading tape 57 V Vendor-Unique 168 V