1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 22 /* 23 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27 #pragma ident "%Z%%M% %I% %E% SMI" 28 29 #include <sys/scsi/scsi.h> 30 #include <sys/mtio.h> 31 #include <sys/condvar.h> 32 #include <sys/kstat.h> 33 #include <sys/scsi/targets/stdef.h> 34 35 /* 36 * General 37 * ------- 38 * o MT_DENSITYx counts from 1..4, rather than 0..3. 39 * o Some entries specify a value for the 'length' member that is 40 * less than the actual length of the 'vid' member. This is done 41 * intentionally to allow the comparison to succeed for different 42 * drives. 43 */ 44 45 /* 46 * Drive Tables. 47 * 48 * The structure and option definitions can be 49 * found in <sys/scsi/targets/stdef.h>. 50 * 51 * Note: that blocksize should be a power of two 52 * for fixed-length recording devices. 53 * 54 * Note: the speed codes are unused at present. 55 * The driver turns around whatever is reported 56 * from the drive via the mode sense. 57 * 58 * Note: the read retry and write retry counts 59 * are there to provide a limit until warning 60 * messages are printed. 61 * 62 * 63 * Note: For drives that are not in this table.... 64 * 65 * The first open of the device will cause a MODE SENSE command 66 * to be sent. From that we can determine block size. If block 67 * size is zero, than this drive is in variable-record length 68 * mode. The driver uses the SCSI-2 specification density codes in 69 * order to attempt to determine what kind of sequential access 70 * device this is. This will allow determination of 1/4" cartridge, 71 * 1/2" cartridge, some helical scan (3.81 && 8 mm cartridge) and 72 * 1/2" reel tape devices. The driver will print what it finds and is 73 * assuming to the console. If the device you have hooked up returns 74 * the default density code (0) after power up, the drive cannot 75 * determine what kind of drive it might be, so it will assume that 76 * it is an unknown 1/4" cartridge tape (QIC). 77 * 78 * If the drive is determined in this way to be a 1/2" 9-track reel 79 * type device, an attempt will be mode to put it in Variable 80 * record length mode. 81 * 82 * Generic drives are assumed to support only the long erase option 83 * and will not to be run in buffered mode. 84 */ 85 86 /* 87 * Format for Tape Drive Entry 88 * 89 * Please maintain the format currently in use for defining the properties 90 * associated with each tape drive. This format is intended to make the 91 * entries more readable and help increase the accuracy of the entries. 92 * See the actual entries for examples of what they should look like. 93 * 94 * Important points to note about the format: 95 * 96 * 1. The opening and closing braces are indented 2 spaces. 97 * 2. Each line in the entry is indented 4 spaces. 98 * 3. The numerical values and text in the .options comments are indented two 99 * spaces in the comment block. 100 * 4. The maximum line width is 80 columns; do not exceed this. 101 * 5. The comment delimiters should line up, per the example. 102 * 6. The OR symbol (|) should line up for multiple options. 103 * 7. Hexadecimal values should be capitalized, for consistency. 104 * 8. The leading / in the comment block header is indented 2 spaces and the 105 * susequent *'s should all line up. 106 * 9. Order of the entries is very important. There are several groups of 107 * entries where the last entry in the grouping acts as a catch-all. If you 108 * place an entry after the catch-all, it will never be used by the driver. 109 * 10. TABs should not be used anywhere between the BEGIN CSTYLED and 110 * END CSTYLED lines. 111 */ 112 113 /* 114 * Supported Drive Options 115 * 116 * The descriptions for the supported drive options are taken from stdef.h. 117 * 118 * ST_VARIABLE Device supports variable length record 119 * sizes. 120 * ST_QIC QIC tape device. 121 * ST_REEL 1/2-inch reel tape device. 122 * ST_BSF Device supports backspace file as in 123 * mt(1) bsf backspace over EOF marks. 124 * Devices not supporting bsf will fail 125 * with ENOTTY upon use of bsf. 126 * ST_BSR Device supports backspace record as in 127 * mt(1) bsr : backspace over records. If 128 * the device does not support bsr, the st 129 * driver emulates the action by rewinding 130 * the tape and using forward space file 131 * (fsf) to the correct file and then uses 132 * forward space record (fsr) to the 133 * correct record. 134 * ST_LONG_ERASE Device needs a longer time than normal 135 * to erase. 136 * ST_AUTODEN_OVERRIDE Autodensity override flag Device can 137 * figure out the tape density 138 * automatically,without issuing a mode- 139 * select/mode-sense. 140 * ST_NOBUF Don't use buffered mode. This disables 141 * the device's ability for buffered writes 142 * i.e. The device acknowledges write 143 * completion after the data is written to 144 * the device's buffer, but before all the 145 * data is actually written to tape. 146 * ST_RESERVED_BIT1 Reserved bit parity while talking to it. 147 * ST_KNOWS_EOD Device knows when EOD (End of Data) has 148 * been reached. If the device knows EOD, 149 * st uses fast file skipping. If it does 150 * not know EOD, file skipping happens one 151 * file at a time. 152 * ST_UNLOADABLE Device will not complain if the st 153 * driver is unloaded & loaded again; 154 * e.g. will return the correct inquiry 155 * string. 156 * ST_SOFT_ERROR_REPORTING Do request or log sense on close to 157 * report soft errors.Currently only 158 * Exabyte and DAT drives support this 159 * feature. 160 * ST_LONG_TIMEOUTS Device needs 5 times longer timeouts 161 * for normal operation. 162 * ST_BUFFERED_WRITES The data is buffered in the driver and 163 * pre-acked to the application. 164 * ST_NO_RECSIZE_LIMIT For variable record size devices only. 165 * If flag is set,then don't limit record 166 * size to 64k as in pre-Solaris 2.4 167 * releases. The only limit on the record 168 * size will be the max record size the 169 * device can handle or the max DMA 170 * transfer size of the machine, which ever 171 * is smaller. Beware of incompatabilities 172 * with tapes of pre-Solaris 2.4 OS's 173 * written with large (>64k) block sizes, 174 * as their true block size is a max of 175 * approx 64k. 176 * ST_MODE_SEL_COMP Use mode select of device configuration 177 * page (0x10) to enable/disable 178 * compression instead of density codes 179 * for the "c" and "u" devices. 180 * ST_NO_RESERVE_RELEASE For devices which do not support 181 * RESERVE/RELEASE SCSI command. If this 182 * is enabled then RESERVE/RELEASE would 183 * not be used during open/close for High 184 * Availability. 185 * ST_READ_IGNORE_ILI This flag is only applicable to 186 * variable block devices which support 187 * the SILI bit option. It indicates that 188 * the SILI bit will be ignored during 189 * reads. 190 * ST_READ_IGNORE_EOFS When this flag is set two EOF marks do 191 * not indicate an EOM. This option is 192 * only supported on 1/2" reel tapes. 193 * ST_SHORT_FILEMARKS This option applies only to EXABYTE 8mm 194 * tape drives which support short 195 * filemarks. When this flag is set, short 196 * filemarks will be used for writing 197 * filemarks. 198 * ST_EJECT_ON_CHANGER_FAILURE When this flag is set and the tape is 199 * trapped in the medium changer, the 200 * tape is automatically ejected. 201 * ST_RETRY_ON_RECOVERED_DEFERRED_ERROR This option applies only to IBM MAGSTAR 202 * 3590. If this flag is set, the st 203 * driver will retry the last cmd if the 204 * last error cause a check condition with 205 * error code 0x71 and sense code 0x01. 206 */ 207 208 /* 209 * Values Corresponding To The Supported Drive Options Flags 210 * 211 * ST_VARIABLE 0x000001 212 * ST_QIC 0x000002 213 * ST_REEL 0x000004 214 * ST_BSF 0x000008 215 * ST_BSR 0x000010 216 * ST_LONG_ERASE 0x000020 217 * ST_AUTODEN_OVERRIDE 0x000040 218 * ST_NOBUF 0x000080 219 * ST_RESERVED_BIT1 0x000100 220 * ST_KNOWS_EOD 0x000200 221 * ST_UNLOADABLE 0x000400 222 * ST_SOFT_ERROR_REPORTING 0x000800 223 * ST_LONG_TIMEOUT 0x001000 224 * ST_BUFFERED_WRITES 0x004000 225 * ST_NO_RECSIZE_LIMIT 0x008000 226 * ST_MODE_SEL_COMP 0x010000 227 * ST_NO_RESERVE_RELEASE 0x020000 228 * ST_READ_IGNORE_ILI 0x040000 229 * ST_READ_IGNORE_EOFS 0x080000 230 * ST_SHORT_FILEMARKS 0x100000 231 * ST_EJECT_ON_CHANGER_FAILURE 0x200000 232 * ST_RETRY_ON_RECOVERED_DEFERRED_ERROR 0x400000 233 */ 234 235 const struct st_drivetype st_drivetypes[] = 236 { 237 /* BEGIN CSTYLED */ 238 /* 239 * Anritsu 1/2" reel 240 * 241 * NOTES 242 * ----- 243 * o This is an unsupported drive. 244 * 245 * [1] The Anritsu 1/2" reel has two density codes (or 0 for "default"). 246 * [2] The Anritsu 1/2" reel has only one speed (if the driver ever cares). 247 * [3] max_rretries and max_wretries are driver anachronisms. 248 */ 249 { /* Structure member Description */ 250 /* ---------------- ----------- */ 251 "Unisys 1/2\" Reel", /* .name Display ("pretty") name */ 252 15, /* .length Length of next item... */ 253 "ANRITSU DMT2120", /* .vid Vendor-product ID string */ 254 ST_TYPE_ANRITSU, /* .type Numeric type (cf. mtio.h) */ 255 0, /* .bsize Block size (0 = variable) */ 256 /* .options Drive option flags: */ 257 ST_VARIABLE | /* 00001 Supports variable length */ 258 ST_REEL | /* 00004 1/2-inch reel tape device */ 259 ST_BSF | /* 00008 Supports SPACE block fwd */ 260 ST_BSR | /* 00010 Supports SPACE block rev */ 261 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 262 /* ----- */ 263 /* 0041D */ 264 400, /* .max_rretries [Note 3] */ 265 400, /* .max_wretries [Note 3] */ 266 {0x00, 0x02, 0x03, 0x03}, /* .densities Density codes [Note 1] */ 267 MT_DENSITY2, /* .default_density (.densities[x]) */ 268 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 269 }, 270 271 /* 272 * Archive QIC-150 1/4" cartridge 273 * 274 * NOTES 275 * ----- 276 * o The manual for the Archive drive claims that this drive 277 * can backspace filemarks. In practice this doens't always 278 * seem to be the case. 279 * [1] The QIC-150 uses 0 or "default" density. 280 * [2] The QIC-150 has only one speed (if the driver ever cares). 281 * [3] max_rretries and max_wretries are driver anachronisms. 282 */ 283 { /* Structure member Description */ 284 /* ---------------- ----------- */ 285 "Archive QIC-150", /* .name Display ("pretty") name */ 286 13, /* .length Length of next item... */ 287 "ARCHIVE VIPER", /* .vid Vendor-product ID string */ 288 ST_TYPE_ARCHIVE, /* .type Numeric type (cf. mtio.h) */ 289 512, /* .bsize Block size (0 = variable) */ 290 /* .options Drive option flags: */ 291 ST_QIC | /* 00002 QIC tape device */ 292 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 293 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 294 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 295 /* ----- */ 296 /* 00642 */ 297 400, /* .max_rretries [Note 3] */ 298 400, /* .max_wretries [Note 3] */ 299 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 300 MT_DENSITY2, /* .default_density (.densities[x]) */ 301 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 302 }, 303 304 /* 305 * Archive Python 04106 4mm 2GB drive 306 * 307 * NOTES 308 * ----- 309 * o This is an unsupported drive. 310 * 311 * [1] The Python 04106 has only one density, 0x42 (or 0 for "default"). 312 * [2] The Python 04106 has only one speed (if the driver ever cares). 313 * [3] max_rretries and max_wretries are driver anachronisms. 314 * [4] The manufacturer recommends 0x2c ("MT_ISPYTHON") here, 315 * even though ST_TYPE_PYTHON is recommended. For con- 316 * sistency, let's not fight it. 317 */ 318 { /* Structure member Description */ 319 /* ---------------- ----------- */ 320 "Seagate Scorpion 24 DDS3 DAT", 321 /* .name Display ("pretty") name */ 322 20, /* .length Length of next item... */ 323 "ARCHIVE Python 04106", /* .vid Vendor-product ID string */ 324 MT_ISPYTHON, /* .type Numeric type [Note 4] */ 325 0, /* .bsize Block size (0 = variable) */ 326 /* .options Drive option flags: */ 327 ST_VARIABLE | /* 00001 Supports variable length */ 328 ST_BSF | /* 00008 Supports SPACE block fwd */ 329 ST_BSR | /* 00010 Supports SPACE block rev */ 330 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 331 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 332 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 333 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 334 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 335 /* ----- */ 336 /* 09639 */ 337 400, /* .max_rretries [Note 3] */ 338 400, /* .max_wretries [Note 3] */ 339 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 340 MT_DENSITY3, /* .default_density (.densities[x]) */ 341 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 342 }, 343 344 /* 345 * Archive/Conner CTDX004 4mm DAT 346 * 347 * NOTES 348 * ----- 349 * [1] The CTDX004 uses 0 or the "default" density code. 350 * [2] The CTDX004 has only one speed (if the driver ever cares). 351 * [3] max_rretries and max_wretries are driver anachronisms. 352 * [4] Data is buffered in the driver and pre-acked to the application. This 353 * is only supported in 2.5.1. 354 */ 355 { /* Structure member Description */ 356 /* ---------------- ----------- */ 357 "Archive/Conner CTDX004 4mm DAT", 358 /* .name Display ("pretty") name */ 359 20, /* .length Length of next item... */ 360 "ARCHIVE Python 28388", /* .vid Vendor-product ID string */ 361 ST_TYPE_PYTHON, /* .type Numeric type (cf. mtio.h) */ 362 0, /* .bsize Block size (0 = variable) */ 363 /* .options Drive option flags: */ 364 ST_VARIABLE | /* 00001 Supports variable length */ 365 ST_BSF | /* 00008 Supports SPACE block fwd */ 366 ST_BSR | /* 00010 Supports SPACE block rev */ 367 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 368 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 369 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 370 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 371 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 372 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 373 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 374 /* ----- */ 375 /* 0DE39 */ 376 400, /* .max_rretries [Note 3] */ 377 400, /* .max_wretries [Note 3] */ 378 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 379 MT_DENSITY1, /* .default_density (.densities[x]) */ 380 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 381 }, 382 383 /* 384 * Archive Python 4mm 2GB drive 385 * 386 * NOTES 387 * ----- 388 * o This must be the last entry in the list of Python drives, since it 389 * acts as a catch-all for any Python drive not listed above. 390 * 391 * [1] The Archive Python 4mm has only one density, 0x8c (or 0 for "default"). 392 * [2] The Archive Python 4mm has only one speed (if the driver ever cares). 393 * [3] max_rretries and max_wretries are driver anachronisms. 394 * [4] Do a request or log sense on close to report soft errors. 395 */ 396 { /* Structure member Description */ 397 /* ---------------- ----------- */ 398 "Archive Python 4mm Helical Scan", 399 /* .name Display ("pretty") name */ 400 14, /* .length Length of next item... */ 401 "ARCHIVE Python", /* .vid Vendor-product ID string */ 402 ST_TYPE_PYTHON, /* .type Numeric type (cf. mtio.h) */ 403 0, /* .bsize Block size (0 = variable) */ 404 /* .options Drive option flags: */ 405 ST_VARIABLE | /* 00001 Supports variable length */ 406 ST_BSF | /* 00008 Supports SPACE block fwd */ 407 ST_BSR | /* 00010 Supports SPACE block rev */ 408 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 409 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 410 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 411 ST_SOFT_ERROR_REPORTING | /* 00800 Error reporting [Note 4] */ 412 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 413 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 414 /* ----- */ 415 /* 09E39 */ 416 5000, /* .max_rretries [Note 3] */ 417 5000, /* .max_wretries [Note 3] */ 418 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 419 MT_DENSITY4, /* .default_density (.densities[x]) */ 420 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 421 }, 422 423 /* 424 * Benchmark DLT1 425 * 426 * NOTES 427 * ----- 428 * [1] The DLT1 reads several tape formats, but the st driver supports 429 * only DLT1 native. 430 * [2] The DLT1 has only one speed (if the driver ever cares). 431 * [3] max_rretries and max_wretries are driver anachronisms. 432 * [4] The DLT1 has Density codes that turn on and off compression however 433 * the data compression enable overrides them. 434 */ 435 { /* Structure member Description */ 436 /* ---------------- ----------- */ 437 "Benchmark DLT1", /* .name Display ("pretty") name */ 438 12, /* .length Length of next item... */ 439 "BNCHMARKDLT1", /* .vid Vendor-product ID string */ 440 ST_TYPE_BMDLT1, /* .type Numeric type (cf. mtio.h) */ 441 0, /* .bsize Block size (0 = variable) */ 442 /* .options Drive option flags: */ 443 ST_VARIABLE | /* 00001 Supports variable length */ 444 ST_BSF | /* 00008 Supports SPACE block fwd */ 445 ST_BSR | /* 00010 Supports SPACE block rev */ 446 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 447 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 448 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 449 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 450 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 451 ST_MODE_SEL_COMP, /* 10000 [Note 4] */ 452 /* ----- */ 453 /* 19639 */ 454 -1, /* .max_rretries [Note 3] */ 455 -1, /* .max_wretries [Note 3] */ 456 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 457 MT_DENSITY4, /* .default_density (.densities[x]) */ 458 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 459 }, 460 461 462 463 /* 464 * CDC 1/2" cartridge 465 * 466 * NOTES 467 * ----- 468 * o This is an unsupported drive. 469 * 470 * [1] The CDC 1/2" cartridge uses 0 or the "default" density code. 471 * [2] The CDC 1/2" cartridge has only one speed (if the driver ever cares). 472 * [3] max_rretries and max_wretries are driver anachronisms. 473 */ 474 { /* Structure member Description */ 475 /* ---------------- ----------- */ 476 "CDC 1/2\" Cartridge", /* .name Display ("pretty") name */ 477 3, /* .length Length of next item... */ 478 "LMS", /* .vid Vendor-product ID string */ 479 ST_TYPE_CDC, /* .type Numeric type (cf. mtio.h) */ 480 0, /* .bsize Block size (0 = variable) */ 481 /* .options Drive option flags: */ 482 ST_VARIABLE | /* 00001 Supports variable length */ 483 ST_QIC | /* 0x002 QIC tape device */ 484 ST_BSF | /* 00008 Supports SPACE block fwd */ 485 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 486 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 487 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 488 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 489 /* ----- */ 490 /* 0066B */ 491 300, /* .max_rretries [Note 3] */ 492 300, /* .max_wretries [Note 3] */ 493 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 494 MT_DENSITY2, /* .default_density (.densities[x]) */ 495 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 496 }, 497 498 /* 499 * Emulex MT-02 controller for 1/4" cartridge 500 * 501 * NOTES 502 * ----- 503 * o The EMULEX MT-02 adheres to CCS level 0, and thus 504 * returns nothing of interest for the INQUIRY command 505 * past the 'response data format' field (which will be 506 * zero). The driver will recognize this and assume that 507 * a drive that so responds is actually an MT-02 (there 508 * is no other way to really do this, awkward as it 509 * may seem). 510 * 511 * o This is an unsupported drive. 512 * 513 * [1] Low density is a vendor unique density code. 514 * This gives us 9 Track QIC-11. Supposedly the MT02 can 515 * read 4 Track QIC-11 while in this mode. If that doesn't 516 * work, change one of the duplicated QIC-24 fields to 0x4. 517 * [2] The MT-02 has only one speed (if the driver ever cares). 518 * [3] max_rretries and max_wretries are driver anachronisms. 519 */ 520 { /* Structure member Description */ 521 /* ---------------- ----------- */ 522 "Emulex MT02 QIC-11/QIC-24", 523 /* .name Display ("pretty") name */ 524 12, /* .length Length of next item... */ 525 "Emulex MT02", /* .vid Vendor-product ID string */ 526 ST_TYPE_EMULEX, /* .type Numeric type (cf. mtio.h) */ 527 512, /* .bsize Block size (0 = variable) */ 528 /* .options Drive option flags: */ 529 ST_QIC | /* 00002 QIC tape device */ 530 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 531 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 532 /* ----- */ 533 /* 00602 */ 534 130, /* .max_rretries [Note 3] */ 535 130, /* .max_wretries [Note 3] */ 536 {0x84, 0x05, 0x05, 0x05}, /* .densities Density codes [Note 1] */ 537 MT_DENSITY2, /* .default_density (.densities[x]) */ 538 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 539 }, 540 541 /* 542 * Exabyte 8900 8mm helical scan drive (also called Mammoth) 543 * 544 * NOTES 545 * ----- 546 * [1] Compression on the 8900 is controlled via the Device Configuration mode 547 * page or the Data Compression page (either one). Even when enabled, the 548 * 8900 automatically disables compression on-the-fly if it determines 549 * that it cannot achieve a reasonable compression ratio on the data. 550 * [2] The 8900 can write in only one format, which is selected overtly by 551 * setting Density Code in the block descriptor to 27h; in addition to 552 * this native format, the 8900 can read tapes written in 8200, 8500 and 553 * 8500-compressed formats. We set the density to 27h at all times: we 554 * _can_ do this because the format is changed automatically to match the 555 * data on any previously-written tape; we _must_ do this to ensure that 556 * never-before-written 8900 AME tapes are written in "8900 format" (all 557 * writes to them in any other format will fail). By establishing 558 * MT_DENSITY4 (corresponding to the "c" and "u" minor devices) as the 559 * default, applications which open '/dev/rmt/x' write compressed data 560 * automatically (but see Note [1]). 561 * [3] The 8900 has only one speed (if the driver ever cares). 562 * [4] max_rretries and max_wretries are driver anachronisms. 563 */ 564 { /* Structure member Description */ 565 /* ---------------- ----------- */ 566 "Mammoth EXB-8900 8mm Helical Scan", 567 /* .name Display ("pretty") name */ 568 16, /* .length Length of next item... */ 569 "EXABYTE EXB-8900", /* .vid Vendor-product ID string */ 570 ST_TYPE_EXB8500, /* .type Numeric type (cf. mtio.h) */ 571 0, /* .bsize Block size (0 = variable) */ 572 /* .options Drive option flags: */ 573 ST_VARIABLE | /* 00001 Supports variable length */ 574 ST_BSF | /* 00008 Supports SPACE block fwd */ 575 ST_BSR | /* 00010 Supports SPACE block rev */ 576 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 577 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 578 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 579 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 580 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 581 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 582 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 583 /* ----- */ 584 /* 19E39 */ 585 5000, /* .max_rretries [Note 4] */ 586 5000, /* .max_wretries [Note 4] */ 587 {0x27, 0x27, 0x27, 0x27}, /* .densities Density codes [Note 2] */ 588 MT_DENSITY4, /* .default_density (.densities[x]) */ 589 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 590 }, 591 592 /* 593 * Exabyte 8mm 5GB cartridge 594 * 595 * NOTES 596 * ----- 597 * o ST_KNOWS_EOD here will cause medium error messages 598 * 599 * o The string length (16) has been reduced to 15 to allow for other 600 * compatible models (eg the 8505 half-height) (BugTraq #1091196) 601 * 602 * [1] The density code entry requires four values, even if there are less 603 * than four values for the drive. 604 * [2] The Exabyte EXB-8500 has only one speed (if the driver ever cares). 605 * [3] max_rretries and max_wretries are driver anachronisms. 606 */ 607 { /* Structure member Description */ 608 /* ---------------- ----------- */ 609 "Exabyte EXB-8500 8mm Helical Scan", 610 /* .name Display ("pretty") name */ 611 15, /* .length Length of next item... */ 612 "EXABYTE EXB-850*", /* .vid Vendor-product ID string */ 613 ST_TYPE_EXB8500, /* .type Numeric type (cf. mtio.h) */ 614 0, /* .bsize Block size (0 = variable) */ 615 /* .options Drive option flags: */ 616 ST_VARIABLE | /* 00001 Supports variable length */ 617 ST_BSF | /* 00008 Supports SPACE block fwd */ 618 ST_BSR | /* 00010 Supports SPACE block rev */ 619 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 620 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 621 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 622 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 623 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 624 /* ----- */ 625 /* 08E39 */ 626 5000, /* .max_rretries [Note 3] */ 627 5000, /* .max_wretries [Note 3] */ 628 {0x14, 0x15, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 629 MT_DENSITY2, /* .default_density (.densities[x]) */ 630 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 631 }, 632 633 /* 634 * Exabyte 8mm 2GB cartridge 635 * 636 * NOTES 637 * ----- 638 * [1] The Exabyte EXB-8200 uses 0 or the "default" density code. 639 * [2] The Exabyte EXB-8200 has only one speed (if the driver ever cares). 640 * [3] max_rretries and max_wretries are driver anachronisms. 641 * [4] Do a request or log sense on close to report soft errors. 642 */ 643 { /* Structure member Description */ 644 /* ---------------- ----------- */ 645 "Exabyte EXB-8200 8mm Helical Scan", 646 /* .name Display ("pretty") name */ 647 16, /* .length Length of next item... */ 648 "EXABYTE EXB-8200", /* .vid Vendor-product ID string */ 649 ST_TYPE_EXABYTE, /* .type Numeric type (cf. mtio.h) */ 650 0, /* .bsize Block size (0 = variable) */ 651 /* .options Drive option flags: */ 652 ST_VARIABLE | /* 00001 Supports variable length */ 653 ST_BSF | /* 00008 Supports SPACE block fwd */ 654 ST_BSR | /* 00010 Supports SPACE block rev */ 655 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 656 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 657 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 658 ST_SOFT_ERROR_REPORTING | /* 00800 Error reporting [Note 4] */ 659 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 660 /* ----- */ 661 /* 08C79 */ 662 5000, /* .max_rretries [Note 3] */ 663 5000, /* .max_wretries [Note 3] */ 664 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 665 MT_DENSITY2, /* .default_density (.densities[x]) */ 666 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 667 }, 668 669 /* 670 * Exabyte DC-2000 cartridge 671 * 672 * NOTES 673 * ----- 674 * o This is an unsupported drive. 675 * 676 * o This entry uses a shortened Vendor-product ID string for the 677 * INQUIRY match. 678 * 679 * [1] The Exabyte DC-2000 uses 0 or the "default" density. 680 * [2] The Exabyte DC-2000 has only one speed (if the driver ever cares). 681 * [3] max_rretries and max_wretries are driver anachronisms. 682 */ 683 { /* Structure member Description */ 684 /* ---------------- ----------- */ 685 "Exabyte EXB-2501 QIC", /* .name Display ("pretty") name */ 686 14, /* .length Length of next item... */ 687 "EXABYTE EXB-25**", /* .vid Vendor-product ID string */ 688 ST_TYPE_EXABYTE, /* .type Numeric type (cf. mtio.h) */ 689 1024, /* .bsize Block size (0 = variable) */ 690 /* .options Drive option flags: */ 691 ST_QIC | /* 00002 QIC tape device */ 692 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 693 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 694 /* ----- */ 695 /* 00442 */ 696 400, /* .max_rretries [Note 3] */ 697 400, /* .max_wretries [Note 3] */ 698 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 699 MT_DENSITY2, /* .default_density (.densities[x]) */ 700 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 701 }, 702 703 /* 704 * EXABYTE 4mm Helical Scan 705 * 706 * NOTES 707 * ----- 708 * 709 * o This entry uses a shortened Vendor-product ID string for the 710 * INQUIRY match. 711 * 712 * [1] The EXABYTE 4mm uses 0 or the "default" density code. 713 * [2] The EXABYTE 4mm has only one speed (if the driver ever cares). 714 * [3] max_rretries and max_wretries are driver anachronisms. 715 */ 716 { /* Structure member Description */ 717 /* ---------------- ----------- */ 718 "Exabyte 4mm Helical Scan", 719 /* .name Display ("pretty") name */ 720 15, /* .length Length of next item... */ 721 "EXABYTE EXB-420*", /* .vid Vendor-product ID string */ 722 ST_TYPE_EXABYTE, /* .type Numeric type (cf. mtio.h) */ 723 0, /* .bsize Block size (0 = variable) */ 724 /* .options Drive option flags: */ 725 ST_VARIABLE | /* 00001 Supports variable length */ 726 ST_BSF | /* 00008 Supports SPACE block fwd */ 727 ST_BSR | /* 00010 Supports SPACE block rev */ 728 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 729 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 730 /* ----- */ 731 /* 00439 */ 732 400, /* .max_rretries [Note 3] */ 733 400, /* .max_wretries [Note 3] */ 734 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 735 MT_DENSITY2, /* .default_density (.densities[x]) */ 736 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 737 }, 738 739 /* 740 * Fujitsu 1/2" cartridge 741 * 742 * NOTES 743 * ----- 744 * o This is an unsupported drive. 745 * 746 * [1] The Fujitsu 1/2" drive uses 0 or the "default" density code. 747 * [2] The Fujitsu 1/2" drive has only one speed (if the driver ever cares). 748 * [3] max_rretries and max_wretries are driver anachronisms. 749 */ 750 { /* Structure member Description */ 751 /* ---------------- ----------- */ 752 "Fujitsu 1/2\" Cartridge",/* .name Display ("pretty") name */ 753 2, /* .length Length of next item... */ 754 "\076\000", /* .vid Vendor-product ID string */ 755 ST_TYPE_FUJI, /* .type Numeric type (cf. mtio.h) */ 756 0, /* .bsize Block size (0 = variable) */ 757 /* .options Drive option flags: */ 758 ST_VARIABLE | /* 00001 Supports variable length */ 759 ST_QIC | /* 00002 QIC tape device */ 760 ST_BSF | /* 00008 Supports SPACE block fwd */ 761 ST_BSR | /* 00010 Supports SPACE block rev */ 762 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 763 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 764 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 765 /* ----- */ 766 /* 0063B */ 767 300, /* .max_rretries [Note 3] */ 768 300, /* .max_wretries [Note 3] */ 769 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 770 MT_DENSITY2, /* .default_density (.densities[x]) */ 771 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 772 }, 773 774 /* 775 * HP 1/2" reel 776 * 777 * NOTES 778 * ----- 779 * [1] The HP 1/2" reel uses the vendor unique density '0xC3': 780 * this is compressed 6250 mode. Beware that using large 781 * data sets consisting of repeated data compresses *too* 782 * well and one can run into the unix 2 gb file offset limit 783 * this way. 784 * [2] The HP 1/2" reel has only one speed (if the driver ever cares). 785 * [3] max_rretries and max_wretries are driver anachronisms. 786 */ 787 { /* Structure member Description */ 788 /* ---------------- ----------- */ 789 "HP-88780 1/2\" Reel", /* .name Display ("pretty") name */ 790 13, /* .length Length of next item... */ 791 "HP 88780", /* .vid Vendor-product ID string */ 792 ST_TYPE_HP, /* .type Numeric type (cf. mtio.h) */ 793 0, /* .bsize Block size (0 = variable) */ 794 /* .options Drive option flags: */ 795 ST_VARIABLE | /* 00001 Supports variable length */ 796 ST_REEL | /* 00004 1/2-inch reel tape device */ 797 ST_BSF | /* 00008 Supports SPACE block fwd */ 798 ST_BSR | /* 00010 Supports SPACE block rev */ 799 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 800 /* ----- */ 801 /* 0041D */ 802 400, /* .max_rretries [Note 3] */ 803 400, /* .max_wretries [Note 3] */ 804 {0x01, 0x02, 0x03, 0xC3}, /* .densities Density codes [Note 1] */ 805 MT_DENSITY2, /* .default_density (.densities[x]) */ 806 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 807 }, 808 809 /* 810 * HP 35470A 4mm DAT 811 * 812 * NOTES 813 * ----- 814 * o This is an unsupported drive. 815 * 816 * [1] The HP 35470A uses 0 or the "default" density code. 817 * [2] The HP 35470A has only one speed (if the driver ever cares). 818 * [3] max_rretries and max_wretries are driver anachronisms. 819 */ 820 { /* Structure member Description */ 821 /* ---------------- ----------- */ 822 "HP 35470A 4mm DAT", /* .name Display ("pretty") name */ 823 16, /* .length Length of next item... */ 824 "HP HP35470A", /* .vid Vendor-product ID string */ 825 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 826 0, /* .bsize Block size (0 = variable) */ 827 /* .options Drive option flags: */ 828 ST_VARIABLE | /* 00001 Supports variable length */ 829 ST_BSF | /* 00008 Supports SPACE block fwd */ 830 ST_BSR | /* 00010 Supports SPACE block rev */ 831 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 832 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 833 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 834 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 835 ST_LONG_TIMEOUTS, /* 01000 More time for some ops */ 836 /* ----- */ 837 /* 01679 */ 838 400, /* .max_rretries [Note 3] */ 839 400, /* .max_wretries [Note 3] */ 840 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 841 MT_DENSITY2, /* .default_density (.densities[x]) */ 842 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 843 }, 844 845 /* 846 * HP 35480A 4mm DAT 847 * 848 * NOTES 849 * ----- 850 * o This is an unsupported drive. 851 * 852 * [1] The HP 35480A uses 0 or the "default" density code. 853 * [2] The HP 35480A has only one speed (if the driver ever cares). 854 * [3] max_rretries and max_wretries are driver anachronisms. 855 */ 856 { /* Structure member Description */ 857 /* ---------------- ----------- */ 858 "HP 35480A 4mm DAT", /* .name Display ("pretty") name */ 859 16, /* .length Length of next item... */ 860 "HP HP35480A", /* .vid Vendor-product ID string */ 861 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 862 0, /* .bsize Block size (0 = variable) */ 863 /* .options Drive option flags: */ 864 ST_VARIABLE | /* 00001 Supports variable length */ 865 ST_BSF | /* 00008 Supports SPACE block fwd */ 866 ST_BSR | /* 00010 Supports SPACE block rev */ 867 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 868 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 869 /* ----- */ 870 /* 00439 */ 871 400, /* .max_rretries [Note 1] */ 872 400, /* .max_wretries [Note 1] */ 873 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 2] */ 874 MT_DENSITY2, /* .default_density (.densities[x]) */ 875 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 876 }, 877 878 /* 879 * HP JetStore 6000 C1533 880 * 881 * NOTES 882 * ----- 883 * o This is only supported for x86. 884 * 885 * [1] The HP JetStore 6000 uses 0 or the "default" density code. 886 * [2] The HP JetStore 6000 has only one speed (if the driver ever cares). 887 * [3] max_rretries and max_wretries are driver anachronisms. 888 */ 889 { /* Structure member Description */ 890 /* ---------------- ----------- */ 891 "HP JetStore 6000 C1533", /* .name Display ("pretty") name */ 892 14, /* .length Length of next item... */ 893 "HP C1533A", /* .vid Vendor-product ID string */ 894 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 895 0, /* .bsize Block size (0 = variable) */ 896 /* .options Drive option flags: */ 897 ST_VARIABLE | /* 00001 Supports variable length */ 898 ST_BSF | /* 00008 Supports SPACE block fwd */ 899 ST_BSR | /* 00010 Supports SPACE block rev */ 900 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 901 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 902 /* ----- */ 903 /* 00639 */ 904 400, /* .max_rretries [Note 3] */ 905 400, /* .max_wretries [Note 3] */ 906 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 907 MT_DENSITY2, /* .default_density (.densities[x]) */ 908 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 909 }, 910 911 /* 912 * HP DDS-3 4mm DAT 913 * 914 * NOTES 915 * ----- 916 * o This is an unsupported drive. 917 * 918 * [1] Compression on the HP DDS-3 is controlled 919 * via the Device Configuration mode page. 920 * [2] The HP DDS-3 has only one density, 0x8c (or 0 for "default"). 921 * [3] The HP DDS-3 has only one speed (if the driver ever cares). 922 * [4] max_rretries and max_wretries are driver anachronisms. 923 */ 924 { /* Structure member Description */ 925 /* ---------------- ----------- */ 926 "HP DDS-3 4MM DAT", /* .name Display ("pretty") name */ 927 14, /* .length Length of next item... */ 928 "HP C1537A", /* .vid Vendor-product ID string */ 929 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 930 0, /* .bsize Block size (0 = variable) */ 931 /* .options Drive option flags: */ 932 ST_VARIABLE | /* 00001 Supports variable length */ 933 ST_BSF | /* 00008 Supports SPACE block fwd */ 934 ST_BSR | /* 00010 Supports SPACE block rev */ 935 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 936 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 937 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 938 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 939 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 940 /* ----- */ 941 /* 09639 */ 942 400, /* .max_rretries [Note 4] */ 943 400, /* .max_wretries [Note 4] */ 944 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 2] */ 945 MT_DENSITY2, /* .default_density (.densities[x]) */ 946 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 947 }, 948 949 /* 950 * HP DDS-3 4mm DAT loader 951 * 952 * NOTES 953 * ----- 954 * o This is an unsupported drive. 955 * 956 * [1] Compression on the DDS-3 Loader is controlled 957 * via the Device Configuration mode page. 958 * [2] The DDS-3 Loader has only one density, 0x8c (or 0 for "default"). 959 * [3] The DDS-3 Loader has only one speed (if the driver ever cares). 960 * [4] max_rretries and max_wretries are driver anachronisms. 961 */ 962 { /* Structure member Description */ 963 /* ---------------- ----------- */ 964 "HP DDS-3 4MM DAT loader",/* .name Display ("pretty") name */ 965 14, /* .length Length of next item... */ 966 "HP C1557A", /* .vid Vendor-product ID string */ 967 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 968 0, /* .bsize Block size (0 = variable) */ 969 /* .options Drive option flags: */ 970 ST_VARIABLE | /* 00001 Supports variable length */ 971 ST_BSF | /* 00008 Supports SPACE block fwd */ 972 ST_BSR | /* 00010 Supports SPACE block rev */ 973 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 974 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 975 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 976 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 977 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 978 /* ----- */ 979 /* 09639 */ 980 400, /* .max_rretries [Note 4] */ 981 400, /* .max_wretries [Note 4] */ 982 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 2] */ 983 MT_DENSITY2, /* .default_density (.densities[x]) */ 984 {0, 0, 0, 0} /* .speeds Speed codes [Note 3] */ 985 }, 986 987 /* 988 * HP C5683A DDS-4 DAT drives with Sun-specific behavior 989 * 990 * When the configuration switches on the drive are set appropriately, the 991 * HP C5683A: interprets a density code of 8Ch to mean "enable compression", 992 * 00h to mean "disable compression"; senses the tape type automatically; 993 * adjusts to match the tape type. (That is, compression is controlled via 994 * the Sun-unique 8Ch density code, rather than using the Data Compression 995 * mode page). 996 * 997 * NOTES 998 * ----- 999 * [1] 00h = compression disabled, 8Ch = compression enabled, and all DDS-x 1000 * format-related adjustments are performed automatically by the drive. 1001 * [2] The 5683 has only one speed (if the driver ever cares). 1002 * [3] max_rretries and max_wretries are driver anachronisms. 1003 */ 1004 { /* Structure member Description */ 1005 /* ---------------- ----------- */ 1006 "HP DDS-4 DAT (Sun)", /* .name Display ("pretty") name */ 1007 14, /* .length Length of next item... */ 1008 "HP C5683A", /* .vid Vendor-product ID string */ 1009 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1010 0, /* .bsize Block size (0 = variable) */ 1011 /* .options Drive option flags: */ 1012 ST_VARIABLE | /* 00001 Supports variable length */ 1013 ST_BSF | /* 00008 Supports SPACE block fwd */ 1014 ST_BSR | /* 00010 Supports SPACE block rev */ 1015 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 1016 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1017 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1018 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1019 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1020 /* ----- */ 1021 /* 09639 */ 1022 -1, /* .max_rretries [Note 3] */ 1023 -1, /* .max_wretries [Note 3] */ 1024 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 1025 MT_DENSITY2, /* .default_density (.densities[x]) */ 1026 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1027 }, 1028 1029 /* 1030 * HP C5713A DDS-4 DAT autochangers with Sun-specific behavior 1031 * 1032 * When the configuration switches on the drive are set appropriately, the 1033 * HP C5713A: interprets a density code of 8Ch to mean "enable compression", 1034 * 00h to mean "disable compression"; senses the tape type automatically; 1035 * adjusts to match the tape type. (That is, compression is controlled via 1036 * the Sun-unique 8Ch density code, rather than using the Data Compression 1037 * mode page). 1038 * 1039 * NOTES 1040 * ----- 1041 * [1] 00h = compression disabled, 8Ch = compression enabled, and all DDS-x 1042 * format-related adjustments are performed automatically by the drive. 1043 * [2] The 5713 has only one speed (if the driver ever cares). 1044 * [3] max_rretries and max_wretries are driver anachronisms. 1045 */ 1046 { /* Structure member Description */ 1047 /* ---------------- ----------- */ 1048 "HP DDS-4 DAT (Sun)", /* .name Display ("pretty") name */ 1049 14, /* .length Length of next item... */ 1050 "HP C5713A", /* .vid Vendor-product ID string */ 1051 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1052 0, /* .bsize Block size (0 = variable) */ 1053 /* .options Drive option flags: */ 1054 ST_VARIABLE | /* 00001 Supports variable length */ 1055 ST_BSF | /* 00008 Supports SPACE block fwd */ 1056 ST_BSR | /* 00010 Supports SPACE block rev */ 1057 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 1058 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1059 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1060 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1061 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1062 /* ----- */ 1063 /* 09639 */ 1064 -1, /* .max_rretries [Note 3] */ 1065 -1, /* .max_wretries [Note 3] */ 1066 {0x00, 0x8C, 0x8C, 0x8C}, /* .densities Density codes [Note 1] */ 1067 MT_DENSITY2, /* .default_density (.densities[x]) */ 1068 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1069 }, 1070 1071 /* 1072 * HP C7438A 1073 */ 1074 { /* Structure member Description */ 1075 /* ---------------- ----------- */ 1076 "HP DAT-72", /* .name Display ("pretty") name */ 1077 14, /* .length Length of next item... */ 1078 "HP C7438A", /* .vid Vendor-product ID string */ 1079 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1080 0, /* .bsize Block size (0 = variable) */ 1081 /* .options Drive option flags: */ 1082 ST_VARIABLE | /* 00001 Supports variable length */ 1083 ST_BSF | /* 00008 Supports SPACE block fwd */ 1084 ST_BSR | /* 00010 Supports SPACE block rev */ 1085 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1086 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1087 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1088 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1089 /* ----- */ 1090 /* 18619 */ 1091 -1, /* .max_rretries Not Used */ 1092 -1, /* .max_wretries Not Used */ 1093 {0x47, 0x47, 0x47, 0x47}, /* .densities Density codes */ 1094 MT_DENSITY4, /* .default_density (.densities[x]) */ 1095 {0, 0, 0, 0}, /* .speeds Speed codes Not Used */ 1096 0, /* .non_motion_timeout Nothing Special */ 1097 MINUTES(7), /* .io_timeout 7 minutes (recover read) */ 1098 0, /* .rewind_timeout Nothing Special */ 1099 MINUTES(600), /* .space_timeout 10 Hours (space seq file)*/ 1100 0, /* .load_timeout Nothing Special */ 1101 0, /* .unload_timeout Nothing Special */ 1102 MINUTES(290) /* .erase_timeout 4 hours 50 minutes */ 1103 }, 1104 1105 /* 1106 * HP Ultrium LTO Gen 4 1107 * [1] This drive supports two densites at this time. 1108 * In reality the type of media GEN 3 or GEN 4 selects the density. 1109 * ST_MODE_SEL_COMP controls compression. 1110 * [2] The Ultrium LTO has one speed. 1111 * [3] max_rretries and max_wretries are not used but kept for 1112 * backward compatibility. 1113 */ 1114 { /* Structure member Description */ 1115 /* ---------------- ----------- */ 1116 "HP Ultrium LTO 4", /* .name Display ("pretty") name */ 1117 17, /* .length Length of next item... */ 1118 "HP Ultrium 4*", /* .vid handles SCSI or FC */ 1119 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1120 0, /* .bsize Block size (0 = variable) */ 1121 /* .options Drive option flags: */ 1122 ST_VARIABLE | /* 0000001 Supports variable length */ 1123 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1124 ST_BSR | /* 0000010 Supports SPACE block rev */ 1125 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1126 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1127 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1128 ST_MODE_SEL_COMP | /* 0010000 Mode select compression */ 1129 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 1130 /* ------- */ 1131 /* 1018619 */ 1132 -1, /* .max_rretries [Note 3] */ 1133 -1, /* .max_wretries [Note 3] */ 1134 {0x44, 0x44, 0x46, 0x46}, /* .densities Density codes [Note 1] */ 1135 MT_DENSITY4, /* .default_density (.densities[x]) */ 1136 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1137 MINUTES(1), /* .non_motion_timeout */ 1138 MINUTES(20), /* .io_timeout */ 1139 MINUTES(10), /* .rewind_timeout */ 1140 MINUTES(20), /* .space_timeout */ 1141 MINUTES(10), /* .load_timeout */ 1142 MINUTES(10), /* .unload_timeout */ 1143 MINUTES(300) /* .erase_timeout Five Hours */ 1144 }, 1145 1146 /* 1147 * HP Ultrium LTO Gen 3 1148 * [1] This drive supports two densites at this time. 1149 * In reality the type of media GEN 2 or GEN 3 selects the density. 1150 * ST_MODE_SEL_COMP controls compression. 1151 * [2] The Ultrium LTO has one speed. 1152 * [3] max_rretries and max_wretries are not used but kept for 1153 * backward compatibility. 1154 */ 1155 { /* Structure member Description */ 1156 /* ---------------- ----------- */ 1157 "HP Ultrium LTO 3", /* .name Display ("pretty") name */ 1158 17, /* .length Length of next item... */ 1159 "HP Ultrium 3*", /* .vid handles SCSI or FC */ 1160 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1161 0, /* .bsize Block size (0 = variable) */ 1162 /* .options Drive option flags: */ 1163 ST_VARIABLE | /* 0000001 Supports variable length */ 1164 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1165 ST_BSR | /* 0000010 Supports SPACE block rev */ 1166 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1167 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1168 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1169 ST_MODE_SEL_COMP | /* 0010000 Mode select compression */ 1170 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 1171 /* ------- */ 1172 /* 1018619 */ 1173 -1, /* .max_rretries [Note 3] */ 1174 -1, /* .max_wretries [Note 3] */ 1175 {0x42, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 1176 MT_DENSITY4, /* .default_density (.densities[x]) */ 1177 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1178 MINUTES(1), /* .non_motion_timeout */ 1179 MINUTES(20), /* .io_timeout */ 1180 MINUTES(10), /* .rewind_timeout */ 1181 MINUTES(20), /* .space_timeout */ 1182 MINUTES(10), /* .load_timeout */ 1183 MINUTES(10), /* .unload_timeout */ 1184 MINUTES(300) /* .erase_timeout Five Hours */ 1185 }, 1186 1187 /* 1188 * HP Ultrium LTO Gen 2 1189 * [1] This drive supports two densites at this time. 1190 * In reality the type of media GEN 1 or GEN 2 selects the density. 1191 * ST_MODE_SEL_COMP controls compression. 1192 * [2] The Ultrium LTO has one speed. 1193 * [3] max_rretries and max_wretries are not used but kept for 1194 * backward compatibility. 1195 */ 1196 { /* Structure member Description */ 1197 /* ---------------- ----------- */ 1198 "HP Ultrium LTO 2", /* .name Display ("pretty") name */ 1199 17, /* .length Length of next item... */ 1200 "HP Ultrium 2*", /* .vid handles SCSI or FC */ 1201 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1202 0, /* .bsize Block size (0 = variable) */ 1203 /* .options Drive option flags: */ 1204 ST_VARIABLE | /* 00001 Supports variable length */ 1205 ST_BSF | /* 00008 Supports SPACE block fwd */ 1206 ST_BSR | /* 00010 Supports SPACE block rev */ 1207 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1208 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1209 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1210 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1211 /* ----- */ 1212 /* 18619 */ 1213 -1, /* .max_rretries [Note 3] */ 1214 -1, /* .max_wretries [Note 3] */ 1215 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 1216 MT_DENSITY4, /* .default_density (.densities[x]) */ 1217 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1218 MINUTES(1), /* .non_motion_timeout */ 1219 MINUTES(5), /* .io_timeout Four */ 1220 MINUTES(10), /* .rewind_timeout */ 1221 MINUTES(20), /* .space_timeout */ 1222 MINUTES(10), /* .load_timeout */ 1223 MINUTES(10), /* .unload_timeout */ 1224 MINUTES(300) /* .erase_timeout Five Hours */ 1225 }, 1226 1227 /* 1228 * HP Ultrium LTO 1229 * [1] This drive supports only one density at this time. 1230 ST_MODE_SEL_COMP controls compression. 1231 * [2] The Ultrium LTO has one speed. 1232 * [3] max_rretries and max_wretries are not used but kept for 1233 * backward compatibility. 1234 */ 1235 { /* Structure member Description */ 1236 /* ---------------- ----------- */ 1237 "HP Ultrium LTO", /* .name Display ("pretty") name */ 1238 17, /* .length Length of next item... */ 1239 "HP Ultrium 1*", /* .vid handles SCSI and FC */ 1240 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1241 0, /* .bsize Block size (0 = variable) */ 1242 /* .options Drive option flags: */ 1243 ST_VARIABLE | /* 00001 Supports variable length */ 1244 ST_BSF | /* 00008 Supports SPACE block fwd */ 1245 ST_BSR | /* 00010 Supports SPACE block rev */ 1246 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1247 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1248 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1249 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1250 /* ----- */ 1251 /* 18619 */ 1252 -1, /* .max_rretries [Note 3] */ 1253 -1, /* .max_wretries [Note 3] */ 1254 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 1255 MT_DENSITY4, /* .default_density (.densities[x]) */ 1256 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1257 MINUTES(1), /* .non_motion_timeout */ 1258 MINUTES(5), /* .io_timeout Four */ 1259 MINUTES(10), /* .rewind_timeout */ 1260 MINUTES(20), /* .space_timeout */ 1261 MINUTES(10), /* .load_timeout */ 1262 MINUTES(10), /* .unload_timeout */ 1263 MINUTES(300) /* .erase_timeout Five Hours */ 1264 }, 1265 1266 /* 1267 * Kennedy 1/2" reel 1268 * 1269 * NOTES 1270 * ----- 1271 * o This is an unsupported drive. 1272 * 1273 * o This entry uses a shortened Vendor-product ID string for the 1274 * INQUIRY match. 1275 * 1276 * [1] The density code entry requires four values, even if there are less 1277 * than four values for the drive. 1278 * [2] The Kennedy 1/2" reel has only one speed (if the driver ever cares). 1279 * [3] max_rretries and max_wretries are driver anachronisms. 1280 */ 1281 { /* Structure member Description */ 1282 /* ---------------- ----------- */ 1283 "Kennedy 1/2\" Reel", /* .name Display ("pretty") name */ 1284 4, /* .length Length of next item... */ 1285 "KENN***", /* .vid Vendor-product ID string */ 1286 ST_TYPE_KENNEDY, /* .type Numeric type (cf. mtio.h) */ 1287 0, /* .bsize Block size (0 = variable) */ 1288 /* .options Drive option flags: */ 1289 ST_VARIABLE | /* 00001 Supports variable length */ 1290 ST_REEL | /* 00004 1/2-inch reel tape device */ 1291 ST_BSF | /* 00008 Supports SPACE block fwd */ 1292 ST_BSR | /* 00010 Supports SPACE block rev */ 1293 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 1294 /* ----- */ 1295 /* 0041D */ 1296 400, /* .max_rretries [Note 3] */ 1297 400, /* .max_wretries [Note 3] */ 1298 {0x01, 0x02, 0x03, 0x03}, /* .densities Density codes [Note 1] */ 1299 MT_DENSITY2, /* .default_density (.densities[x]) */ 1300 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1301 }, 1302 1303 /* 1304 * M4 Data Systems 9303 transport with 9700 512k i/f 1305 * 1306 * NOTES 1307 * ----- 1308 * o The M4 Data 9303 is in non-buffered mode because it doesn't 1309 * flush the buffer at end of tape writes. If you don't care 1310 * about end of tape conditions (e.g., you use dump(8) which 1311 * cannot handle end-of-tape anyhow), take out the ST_NOBUF. 1312 * 1313 * o This is an unsupported drive. 1314 * 1315 * [1] The density code entry requires four values, even if there are less 1316 * than four values for the drive. 1317 * [2] The M4 Data has only one speed (if the driver ever cares). 1318 * [3] max_rretries and max_wretries are driver anachronisms. 1319 */ 1320 { /* Structure member Description */ 1321 /* ---------------- ----------- */ 1322 "M4-Data 1/2\" Reel", /* .name Display ("pretty") name */ 1323 19, /* .length Length of next item... */ 1324 "M4 DATA 123107 SCSI", /* .vid Vendor-product ID string */ 1325 ST_TYPE_REEL, /* .type Numeric type (cf. mtio.h) */ 1326 0, /* .bsize Block size (0 = variable) */ 1327 /* .options Drive option flags: */ 1328 ST_VARIABLE | /* 00001 Supports variable length */ 1329 ST_REEL | /* 00004 1/2-inch reel tape device */ 1330 ST_BSF | /* 00008 Supports SPACE block fwd */ 1331 ST_BSR | /* 00010 Supports SPACE block rev */ 1332 ST_NOBUF | /* 00080 Don't use buffered mode. */ 1333 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 1334 /* ----- */ 1335 /* 0049D */ 1336 500, /* .max_rretries [Note 3] */ 1337 500, /* .max_wretries [Note 3] */ 1338 {0x01, 0x02, 0x06, 0x06}, /* .densities Density codes [Note 1] */ 1339 MT_DENSITY2, /* .default_density (.densities[x]) */ 1340 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1341 }, 1342 1343 /* 1344 * Quantum VS 160 1345 * 1346 * Notes 1347 * [1] The VS160 reads several formats which the drive autodetects. 1348 * It can write only in VS160 format so all densities set ro 0x50. 1349 * [2] The speed field is not used and the VS160's speed is not setable. 1350 * [3] Retry counts are not used any more and set to -1. 1351 */ 1352 { /* Structure member Description */ 1353 /* ---------------- ----------- */ 1354 "Quantum VS160", /* .name Display ("pretty") name */ 1355 17, /* .length Length of next item... */ 1356 "QUANTUM DLT VS160", /* .vid Vendor-product ID string */ 1357 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1358 0, /* .bsize Block size (0 = variable) */ 1359 /* .options Drive option flags: */ 1360 ST_VARIABLE | /* 00001 Supports variable length */ 1361 ST_BSF | /* 00008 Supports SPACE block fwd */ 1362 ST_BSR | /* 00010 Supports SPACE block rev */ 1363 ST_AUTODEN_OVERRIDE | /* 00040 Has only one density */ 1364 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1365 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1366 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1367 ST_MODE_SEL_COMP, /* 10000 Uses Mode select Compress */ 1368 /* -------- */ 1369 /* 00018659 */ 1370 -1, /* .max_rretries [Note 3] */ 1371 -1, /* .max_wretries [Note 3] */ 1372 {0x50, 0x50, 0x50, 0x50}, /* .densities [Note 1] */ 1373 MT_DENSITY4, /* .default_density (.densities[x]) */ 1374 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1375 MINUTES(2), /* .non_motion_timeout Nothing special */ 1376 MINUTES(15), /* .io_timeout First write to new tape */ 1377 MINUTES(15), /* .rewind_timeout 15 minutes */ 1378 MINUTES(15), /* .space_timeout 15 minutes */ 1379 MINUTES(15), /* .load_timeout read catalog */ 1380 MINUTES(15), /* .unload_timeout write catalog + unthread */ 1381 MINUTES(180) /* .erase_timeout 3 hours */ 1382 }, 1383 /* 1384 * Quantum Super DLT600 1385 * 1386 * NOTES 1387 * ----- 1388 * 1389 * [1] The Super DLT 600 supports many tape formats, Most are media selected. 1390 * Previous DLT drives had density codes for compress and non-compress, 1391 This drive uses mode select to control compression. 1392 * [2] The Super DLT has only one speed (if the driver ever cares). 1393 * [3] max_rretries and max_wretries are driver anachronisms. 1394 */ 1395 { /* Structure member Description */ 1396 /* ---------------- ----------- */ 1397 "Quantum Super DLT 600", /* .name Display ("pretty") name */ 1398 15, /* .length Length of next item... */ 1399 "QUANTUM SDLT600", /* .vid Vendor-product ID string */ 1400 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1401 0, /* .bsize Block size (0 = variable) */ 1402 /* .options Drive option flags: */ 1403 ST_VARIABLE | /* 0000001 Supports variable length */ 1404 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1405 ST_BSR | /* 0000010 Supports SPACE block rev */ 1406 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1407 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1408 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1409 ST_MODE_SEL_COMP | /* 0010000 Uses Mode select Compress */ 1410 ST_WORMABLE, /* 1000000 Is capable of WORM */ 1411 /* ------- */ 1412 /* 1018619 */ 1413 -1, /* .max_rretries [Note 3] */ 1414 -1, /* .max_wretries [Note 3] */ 1415 {0x4a, 0x4a, 0x4a, 0x4a}, /* .densities [Note 1] */ 1416 MT_DENSITY4, /* .default_density (.densities[x]) */ 1417 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1418 0, /* .non_motion_timeout Nothing special */ 1419 MINUTES(60), /* .io_timeout Four One Hour */ 1420 MINUTES(4), /* .rewind_timeout Four Minutes */ 1421 MINUTES(360), /* .space_timeout 6 Hour if Directory bad */ 1422 MINUTES(16), /* .load_timeout Nothing Special */ 1423 MINUTES(16), /* .unload_timeout Nothing Special */ 1424 MINUTES(360) /* .erase_timeout Six hours */ 1425 }, 1426 1427 /* 1428 * Quantum Super DLT320 1429 * 1430 * NOTES 1431 * ----- 1432 * o There is not going to be a SUN version of this drive. It will 1433 * be released as QUANTUM only. 1434 * 1435 * [1] The Super DLT implements many tape formats, but the st driver supports 1436 * only the four highest densities. 1437 * [2] The Super DLT has only one speed (if the driver ever cares). 1438 * [3] max_rretries and max_wretries are driver anachronisms. 1439 */ 1440 { /* Structure member Description */ 1441 /* ---------------- ----------- */ 1442 "Quantum Super DLT 320", /* .name Display ("pretty") name */ 1443 15, /* .length Length of next item... */ 1444 "QUANTUM SDLT320", /* .vid Vendor-product ID string */ 1445 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1446 0, /* .bsize Block size (0 = variable) */ 1447 /* .options Drive option flags: */ 1448 ST_VARIABLE | /* 00001 Supports variable length */ 1449 ST_BSF | /* 00008 Supports SPACE block fwd */ 1450 ST_BSR | /* 00010 Supports SPACE block rev */ 1451 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1452 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1453 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1454 /* -------- */ 1455 /* 00008619 */ 1456 -1, /* .max_rretries [Note 3] */ 1457 -1, /* .max_wretries [Note 3] */ 1458 {0x90, 0x91, 0x92, 0x93}, /* .densities [Note 1] */ 1459 MT_DENSITY4, /* .default_density (.densities[x]) */ 1460 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1461 0, /* .non_motion_timeout Default 2 minutes */ 1462 MINUTES(60), /* .io_timeout Four Now 1 hour */ 1463 MINUTES(4), /* .rewind_timeout Four Minutes */ 1464 MINUTES(360), /* .space_timeout Six Hours */ 1465 MINUTES(16), /* .load_timeout Sixteen Minutes */ 1466 MINUTES(16), /* .unload_timeout Sixteen Minutes */ 1467 MINUTES(360) /* .erase_timeout Six hours */ 1468 }, 1469 1470 /* 1471 * Quantum Super DLT 1472 * 1473 * NOTES 1474 * ----- 1475 * o There is not going to be a SUN version of this drive. It will 1476 * be released as QUANTUM only. 1477 * 1478 * [1] The Super DLT implements many tape formats, but the st driver supports 1479 * only the four highest densities. 1480 * [2] The Super DLT has only one speed (if the driver ever cares). 1481 * [3] max_rretries and max_wretries are driver anachronisms. 1482 */ 1483 { /* Structure member Description */ 1484 /* ---------------- ----------- */ 1485 "Quantum Super DLT 220", /* .name Display ("pretty") name */ 1486 17, /* .length Length of next item... */ 1487 "QUANTUM SuperDLT1", /* .vid Vendor-product ID string */ 1488 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1489 0, /* .bsize Block size (0 = variable) */ 1490 /* .options Drive option flags: */ 1491 ST_VARIABLE | /* 00001 Supports variable length */ 1492 ST_BSF | /* 00008 Supports SPACE block fwd */ 1493 ST_BSR | /* 00010 Supports SPACE block rev */ 1494 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1495 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1496 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1497 /* -------- */ 1498 /* 00008619 */ 1499 -1, /* .max_rretries [Note 3] */ 1500 -1, /* .max_wretries [Note 3] */ 1501 {0x88, 0x89, 0x90, 0x91}, /* .densities [Note 1] */ 1502 MT_DENSITY4, /* .default_density (.densities[x]) */ 1503 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1504 0, /* .non_motion_timeout Default 2 minutes */ 1505 MINUTES(60), /* .io_timeout Four Now 1 hour */ 1506 MINUTES(4), /* .rewind_timeout Four Minutes */ 1507 MINUTES(360), /* .space_timeout Six Hours */ 1508 MINUTES(16), /* .load_timeout Sixteen Minutes */ 1509 MINUTES(16), /* .unload_timeout Sixteen Minutes */ 1510 MINUTES(360) /* .erase_timeout Six hours */ 1511 }, 1512 1513 /* 1514 * Quantum DLT8000 1515 * 1516 * NOTES 1517 * ----- 1518 * o There is not going to be a SUN version of this drive. It will 1519 * be released as QUANTUM only. 1520 * 1521 * [1] The DLT8000 implements many tape formats, but the st driver supports 1522 * only the four highest densities. 1523 * [2] The DLT8000 has only one speed (if the driver ever cares). 1524 * [3] max_rretries and max_wretries are driver anachronisms. 1525 */ 1526 { /* Structure member Description */ 1527 /* ---------------- ----------- */ 1528 "Quantum DLT8000", /* .name Display ("pretty") name */ 1529 15, /* .length Length of next item... */ 1530 "QUANTUM DLT8000", /* .vid Vendor-product ID string */ 1531 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1532 0, /* .bsize Block size (0 = variable) */ 1533 /* .options Drive option flags: */ 1534 ST_VARIABLE | /* 00001 Supports variable length */ 1535 ST_BSF | /* 00008 Supports SPACE block fwd */ 1536 ST_BSR | /* 00010 Supports SPACE block rev */ 1537 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1538 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1539 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1540 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1541 ST_CLN_TYPE_3, /* 40000000 */ 1542 /* ----- */ 1543 /* 40009619 */ 1544 400, /* .max_rretries [Note 3] */ 1545 400, /* .max_wretries [Note 3] */ 1546 {0x84, 0x85, 0x88, 0x89}, /* .densities [Note 1] */ 1547 MT_DENSITY4, /* .default_density (.densities[x]) */ 1548 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1549 0, /* .non_motion_timeout Nothing special */ 1550 0, /* .io_timeout Four Nothing Special */ 1551 0, /* .rewind_timeout Nothing Special */ 1552 0, /* .space_timeout Nothing Special */ 1553 0, /* .load_timeout Nothing Special */ 1554 0, /* .unload_timeout Nothing Special */ 1555 MINUTES(360) /* .erase_timeout Six hours */ 1556 }, 1557 1558 /* 1559 * Quantum DLT7000 1560 * 1561 * NOTES 1562 * ----- 1563 * [1] The DLT7000 implements many tape formats, but the st driver supports 1564 * only the four highest densities. 1565 * [2] The DLT7000 has only one speed (if the driver ever cares). 1566 * [3] max_rretries and max_wretries are driver anachronisms. 1567 * [4] Data is buffered in the driver and pre-acked to the application. This 1568 * is only supported in Solaris 2.5.1. 1569 */ 1570 { /* Structure member Description */ 1571 /* ---------------- ----------- */ 1572 "Quantum DLT7000", /* .name Display ("pretty") name */ 1573 15, /* .length Length of next item... */ 1574 "QUANTUM DLT7000", /* .vid Vendor-product ID string */ 1575 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1576 0, /* .bsize Block size (0 = variable) */ 1577 /* .options Drive option flags: */ 1578 ST_VARIABLE | /* 00001 Supports variable length */ 1579 ST_BSF | /* 00008 Supports SPACE block fwd */ 1580 ST_BSR | /* 00010 Supports SPACE block rev */ 1581 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1582 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1583 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1584 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 1585 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1586 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 1587 /* -------- */ 1588 /* 4000D619 */ 1589 400, /* .max_rretries [Note 3] */ 1590 400, /* .max_wretries [Note 3] */ 1591 {0x82, 0x83, 0x84, 0x85}, /* .densities Density codes [Note 1] */ 1592 MT_DENSITY3, /* .default_density (.densities[x]) */ 1593 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1594 0, /* .non_motion_timeout Nothing special */ 1595 0, /* .io_timeout Four Nothing Special */ 1596 0, /* .rewind_timeout Nothing Special */ 1597 0, /* .space_timeout Nothing Special */ 1598 0, /* .load_timeout Nothing Special */ 1599 0, /* .unload_timeout Nothing Special */ 1600 MINUTES(360) /* .erase_timeout Six hours */ 1601 }, 1602 1603 /* 1604 * Quantum DLT4000 1605 * 1606 * NOTES 1607 * ----- 1608 * [1] The DLT4000 implements many tape formats, but the st driver supports 1609 * only the four highest densities. 1610 * [2] The DLT4000 has only one speed (if the driver ever cares). 1611 * [3] max_rretries and max_wretries are driver anachronisms. 1612 * [4] Data is buffered in the driver and pre-acked to the application. This 1613 * is only supported in 2.5.1. 1614 */ 1615 { /* Structure member Description */ 1616 /* ---------------- ----------- */ 1617 "Quantum DLT4000", /* .name Display ("pretty") name */ 1618 15, /* .length Length of next item... */ 1619 "Quantum DLT4000", /* .vid Vendor-product ID string */ 1620 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1621 0, /* .bsize Block size (0 = variable) */ 1622 /* .options Drive option flags: */ 1623 ST_VARIABLE | /* 00001 Supports variable length */ 1624 ST_BSF | /* 00008 Supports SPACE block fwd */ 1625 ST_BSR | /* 00010 Supports SPACE block rev */ 1626 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1627 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1628 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 1629 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 1630 ST_NO_RECSIZE_LIMIT| /* 08000 Supports blocks > 64KB */ 1631 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 1632 /* -------- */ 1633 /* 4000D619 */ 1634 400, /* .max_rretries [Note 3] */ 1635 400, /* .max_wretries [Note 3] */ 1636 {0x80, 0x81, 0x82, 0x83}, /* .densities Density codes [Note 1] */ 1637 MT_DENSITY3, /* .default_density (.densities[x]) */ 1638 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 1639 0, /* .non_motion_timeout Nothing special */ 1640 0, /* .io_timeout Four Nothing Special */ 1641 0, /* .rewind_timeout Nothing Special */ 1642 0, /* .space_timeout Nothing Special */ 1643 0, /* .load_timeout Nothing Special */ 1644 0, /* .unload_timeout Nothing Special */ 1645 MINUTES(360) /* .erase_timeout Six hours */ 1646 }, 1647 1648 /* 1649 * [1] The DLT-S4 has three densites at this time, 1650 * 0x49 for SuperDLT tape I, 0x4a for SuperDLT tape II, 1651 * 0x4b for SuperDLT tape III. 1652 * This drive is configured with ST_KNOWS_MEDIA. 1653 * That means that it will look at the mediatype from the mode sense 1654 * to select the density code. The compression will be selected based 1655 * on the minor node the user opened. 1656 * [2] S4 reports a medium type that is used to select the density. 1657 */ 1658 { /* Structure member Description */ 1659 /* ---------------- ----------- */ 1660 "Quantum DLT-S4", /* .name Display ("pretty") name */ 1661 14, /* .length Length of next item... */ 1662 "QUANTUM DLT-S4", /* .vid Vendor-product ID string */ 1663 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 1664 0, /* .bsize Block size (0 = variable) */ 1665 /* .options Drive option flags: */ 1666 ST_VARIABLE | /* 0000001 Supports variable length */ 1667 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1668 ST_BSR | /* 0000010 Supports SPACE block rev */ 1669 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1670 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1671 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1672 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 1673 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 1674 ST_WORMABLE, /* 1000000 Supports WORM */ 1675 /* ----- */ 1676 /* 1818619 */ 1677 -1, /* .max_rretries Not used any more. */ 1678 -1, /* .max_wretries Not used any more. */ 1679 {0x49, 0x4a, 0x4b, 0x4b}, /* .densities Density codes [Note 1] */ 1680 MT_DENSITY4, /* .default_density (.densities[x]) */ 1681 {0x86, 0x87, 0x91, 0x91}, /* .mediatype Media type [Note 2] */ 1682 0, /* .non_motion_time */ 1683 MINUTES(60), /* .io_time */ 1684 MINUTES(4), /* .rewind_time */ 1685 MINUTES(360), /* .space_time */ 1686 MINUTES(16), /* .load_time */ 1687 MINUTES(16), /* .unload_time */ 1688 MINUTES(360) /* .erase_time */ 1689 }, 1690 1691 /* 1692 * Seagate Hornet NS20 Travan 1693 * 1694 * NOTES 1695 * ----- 1696 * o This is an unsupported drive. 1697 * 1698 * [1] The NS20 Travan uses 0 or the "default" density code. 1699 * [2] The NS20 Travan has only one speed (if the driver ever cares). 1700 * [3] max_rretries and max_wretries are driver anachronisms. 1701 */ 1702 { /* Structure member Description */ 1703 /* ---------------- ----------- */ 1704 "Seagate Hornet NS20 Travan", 1705 /* .name Display ("pretty") name */ 1706 17, /* .length Length of next item... */ 1707 "Seagate STT20000N", /* .vid Vendor-product ID string */ 1708 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 1709 512, /* .bsize Block size (0 = variable) */ 1710 /* .options Drive option flags: */ 1711 ST_QIC | /* 00002 QIC tape device */ 1712 ST_BSF | /* 00008 Supports SPACE block fwd */ 1713 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1714 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 1715 /* ----- */ 1716 /* 0840A */ 1717 400, /* .max_rretries [Note 3] */ 1718 400, /* .max_wretries [Note 3] */ 1719 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 1720 MT_DENSITY1, /* .default_density (.densities[x]) */ 1721 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1722 }, 1723 1724 /* 1725 * Seagate DAT 72 1726 * 1727 * [1] Has only one density, Uses Mode Select to enable-disable compression. 1728 * [2] Only one speed. 1729 */ 1730 1731 { /* Structure member Description */ 1732 /* ---------------- ----------- */ 1733 "Seagate DAT 72", /* .name Display ("pretty") name */ 1734 23, /* .length Length of next item... */ 1735 "SEAGATE DAT DAT72-00",/* .vid Vendor-product ID string */ 1736 MT_ISDAT, /* .type Numeric type (cf. mtio.h) */ 1737 0, /* .bsize Block size (0 = variable) */ 1738 /* .options Drive option flags: */ 1739 ST_VARIABLE | /* 00001 variable length records */ 1740 ST_BSF | /* 00008 Supports SPACE block fwd */ 1741 ST_BSR | /* 00010 Supports backspace record */ 1742 ST_KNOWS_EOD | /* 00200 Knows EOD when it sees it */ 1743 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1744 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1745 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1746 /* ----- */ 1747 /* 18619 */ 1748 -1, /* .max_rretries Not used any more. */ 1749 -1, /* .max_wretries Not Used any more. */ 1750 {0x47, 0x47, 0x47, 0x47}, /* .densities Density codes [Note 1] */ 1751 MT_DENSITY4, /* .default_density (.densities[x]) */ 1752 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1753 0, /* .non_motion_timeout */ 1754 MINUTES(15), /* .io_timeout */ 1755 MINUTES(2), /* .rewind_timeout */ 1756 MINUTES(15), /* .space_timeout */ 1757 0, /* .load_timeout */ 1758 0, /* .unload_timeout */ 1759 MINUTES(240) /* .erase_timeout */ 1760 }, 1761 1762 /* 1763 * Certance Ultrium LTO 3 1764 * [1] This drive supports 3 densites at this time. 1765 * ST_MODE_SEL_COMP controls compression. 1766 * [2] max_rretries and max_wretries are not used but kept for 1767 * backward compatibility. 1768 */ 1769 { /* Structure member Description */ 1770 /* ---------------- ----------- */ 1771 "Certance Ultrium 3", /* .name Display ("pretty") name */ 1772 17, /* .length Length of next item... */ 1773 "CERTANCEULTRIUM 3", /* .vid handles SCSI or FC */ 1774 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1775 0, /* .bsize Block size (0 = variable) */ 1776 /* .options Drive option flags: */ 1777 ST_VARIABLE | /* 00001 Supports variable length */ 1778 ST_BSF | /* 00008 Supports SPACE block fwd */ 1779 ST_BSR | /* 00010 Supports SPACE block rev */ 1780 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1781 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1782 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1783 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1784 /* ----- */ 1785 /* 18619 */ 1786 -1, /* .max_rretries [Note 2] */ 1787 -1, /* .max_wretries [Note 2] */ 1788 {0x40, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 1789 MT_DENSITY4, /* .default_density (.densities[x]) */ 1790 {0, 0, 0, 0}, /* .speeds Speed codes */ 1791 0, /* .non_motion_timeout */ 1792 MINUTES(60), /* .io_timeout */ 1793 MINUTES(35), /* .rewind_timeout */ 1794 MINUTES(60), /* .space_timeout */ 1795 MINUTES(35), /* .load_timeout */ 1796 MINUTES(35), /* .unload_timeout */ 1797 MINUTES(180) /* .erase_timeout */ 1798 }, 1799 1800 /* 1801 * Certance Ultrium LTO 2 1802 * [1] This drive supports two densites at this time. 1803 * 0x40 for Ultrium 1 and 0x42 for Ultrium 2. 1804 * ST_MODE_SEL_COMP controls compression. 1805 * [2] max_rretries and max_wretries are not used but kept for 1806 * backward compatibility. 1807 */ 1808 { /* Structure member Description */ 1809 /* ---------------- ----------- */ 1810 "Certance Ultrium 2", /* .name Display ("pretty") name */ 1811 17, /* .length Length of next item... */ 1812 "CERTANCEULTRIUM 2", /* .vid handles SCSI or FC */ 1813 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1814 0, /* .bsize Block size (0 = variable) */ 1815 /* .options Drive option flags: */ 1816 ST_VARIABLE | /* 00001 Supports variable length */ 1817 ST_BSF | /* 00008 Supports SPACE block fwd */ 1818 ST_BSR | /* 00010 Supports SPACE block rev */ 1819 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 1820 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1821 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1822 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1823 /* ----- */ 1824 /* 18619 */ 1825 -1, /* .max_rretries [Note 2] */ 1826 -1, /* .max_wretries [Note 2] */ 1827 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 1828 MT_DENSITY4, /* .default_density (.densities[x]) */ 1829 {0, 0, 0, 0}, /* .speeds Speed codes */ 1830 0, /* .non_motion_timeout */ 1831 MINUTES(60), /* .io_timeout */ 1832 MINUTES(35), /* .rewind_timeout */ 1833 MINUTES(60), /* .space_timeout */ 1834 MINUTES(35), /* .load_timeout */ 1835 MINUTES(35), /* .unload_timeout */ 1836 MINUTES(180) /* .erase_timeout */ 1837 }, 1838 1839 /* 1840 * Seagate Ultrium LTO 1841 * 1842 * [1] Has only one density, Uses Mode Select to enable-disable compression. 1843 * [2] Only one speed. 1844 */ 1845 1846 { /* Structure member Description */ 1847 /* ---------------- ----------- */ 1848 "Seagate Ultrium LTO", /* .name Display ("pretty") name */ 1849 23, /* .length Length of next item... */ 1850 "SEAGATE ULTRIUM06242-XX",/* .vid Vendor-product ID string */ 1851 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 1852 0, /* .bsize Block size (0 = variable) */ 1853 /* .options Drive option flags: */ 1854 ST_VARIABLE | /* 00001 variable length records */ 1855 ST_BSF | /* 00008 Supports SPACE block fwd */ 1856 ST_BSR | /* 00010 Supports backspace record */ 1857 ST_KNOWS_EOD | /* 00200 Knows EOD when it sees it */ 1858 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 1859 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 1860 ST_MODE_SEL_COMP, /* 10000 Mode select compression */ 1861 /* ----- */ 1862 /* 18619 */ 1863 -1, /* .max_rretries Not used any more. */ 1864 -1, /* .max_wretries Not Used any more. */ 1865 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 1866 MT_DENSITY4, /* .default_density (.densities[x]) */ 1867 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 1868 0, /* .non_motion_timeout */ 1869 MINUTES(10), /* .io_timeout */ 1870 MINUTES(15), /* .rewind_timeout */ 1871 MINUTES(120), /* .space_timeout */ 1872 MINUTES(5), /* .load_timeout */ 1873 MINUTES(2), /* .unload_timeout */ 1874 MINUTES(120) /* .erase_timeout */ 1875 }, 1876 1877 /* 1878 * SONY 4mm DAT 1879 * 1880 * NOTES 1881 * ----- 1882 * o This is an unsupported drive. 1883 * 1884 * o This entry uses a shortened Vendor-product ID string for the 1885 * INQUIRY match. 1886 * 1887 * [1] The SDT-5000 uses 0 or the "default" density code. 1888 * [2] The SDT-5000 has only one speed (if the driver ever cares). 1889 * [3] max_rretries and max_wretries are driver anachronisms. 1890 */ 1891 { /* Structure member Description */ 1892 /* ---------------- ----------- */ 1893 "SONY 4mm DAT", /* .name Display ("pretty") name */ 1894 12, /* .length Length of next item... */ 1895 "SONY SDT-****", /* .vid Vendor-product ID string */ 1896 ST_TYPE_DAT, /* .type Numeric type (cf. mtio.h) */ 1897 0, /* .bsize Block size (0 = variable) */ 1898 /* .options Drive option flags: */ 1899 ST_VARIABLE | /* 00001 Supports variable length */ 1900 ST_BSF | /* 00008 Supports SPACE block fwd */ 1901 ST_BSR | /* 00010 Supports SPACE block rev */ 1902 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 1903 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 1904 /* ----- */ 1905 /* 00439 */ 1906 400, /* .max_rretries [Note 3] */ 1907 400, /* .max_wretries [Note 3] */ 1908 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 1909 MT_DENSITY2, /* .default_density (.densities[x]) */ 1910 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 1911 }, 1912 1913 /* 1914 * Sun StorageTek T10000A tape drive. 1915 * 1916 * NOTES 1917 * ----- 1918 * o The T10000A has special needs - support for SCSI LOCATE and 1919 * READ POSITION commands - so we must be sure to place this 1920 * entry before the one for ST_TYPE_STC3490 (generic STK 1921 * half-inch cartridge drives). 1922 * [1] Compression on the T10000A is controlled 1923 * via the Device Configuration mode page. 1924 * [2] The T10000A has only one writable density, 0x4A. 1925 * [3] The T10000A has only one speed (if the driver ever cares). 1926 * [4] max_rretries and max_wretries are driver anachronisms. 1927 */ 1928 { /* Structure member Description */ 1929 /* ---------------- ----------- */ 1930 "Sun StorageTek T10000A", /* .name Display ("pretty") name */ 1931 15, /* .length Length of next item... */ 1932 "STK T10000A", /* .vid Vendor-product ID string */ 1933 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 1934 0, /* .bsize Block size (0 = variable)*/ 1935 /* .options Drive option flags: */ 1936 ST_VARIABLE | /* 0000001 Supports variable length */ 1937 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1938 ST_BSR | /* 0000010 Supports SPACE block rev */ 1939 ST_AUTODEN_OVERRIDE | /* 0000040 Autodensity override flag*/ 1940 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1941 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1942 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1943 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 1944 ST_WORMABLE, /* 1000000 Supports WORM */ 1945 /* ------- */ 1946 /* 1018659 */ 1947 -1, /* .max_rretries [Note 4] */ 1948 -1, /* .max_wretries [Note 4] */ 1949 {0x4A,0x4A,0x4A,0x4A}, /* .densities Density codes [Note 2] */ 1950 MT_DENSITY4, /* .default_density (.densities[x]) */ 1951 {0,0,0,0}, /* .speeds Speed codes [Note 3] */ 1952 0, /* .non_motion_timeout Nothing Special */ 1953 MINUTES(5), /* .io_timeout Five Five Minutes */ 1954 0, /* .rewind_timeout Nothing Special */ 1955 0, /* .space_timeout Nothing Special */ 1956 0, /* .load_timeout Nothing Special */ 1957 0, /* .unload_timeout Nothing Special */ 1958 MINUTES(180) /* .erase_timeout Three Hours */ 1959 }, 1960 1961 /* 1962 * STK 9840C cartridge drive. 1963 * 1964 * NOTES 1965 * ----- 1966 * o The 9840C has special needs - support for SCSI LOCATE and 1967 * READ POSITION commands - so we must be sure to place this 1968 * entry before the one for ST_TYPE_STC3490 (generic STK 1969 * half-inch cartridge drives). 1970 * [1] Compression on the 9840C is controlled 1971 * via the Device Configuration mode page. 1972 * [2] The 9840C has only one writable density, 0x45. I can read tapes writen 1973 * with 9840 and 9840B writen with there density code 0x42. 1974 * [3] The 9840C has only one speed (if the driver ever cares). 1975 * [4] max_rretries and max_wretries are driver anachronisms. 1976 */ 1977 { /* Structure member Description */ 1978 /* ---------------- ----------- */ 1979 "StorageTek 9840C", /* .name Display ("pretty") name */ 1980 14, /* .length Length of next item... */ 1981 "STK T9840C", /* .vid Vendor-product ID string */ 1982 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 1983 0, /* .bsize Block size (0 = variable)*/ 1984 /* .options Drive option flags: */ 1985 ST_VARIABLE | /* 0000001 Supports variable length */ 1986 ST_BSF | /* 0000008 Supports SPACE block fwd */ 1987 ST_BSR | /* 0000010 Supports SPACE block rev */ 1988 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 1989 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 1990 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 1991 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 1992 ST_WORMABLE, /* 1000000 Supports WORM */ 1993 /* ------- */ 1994 /* 1018619 */ 1995 -1, /* .max_rretries [Note 4] */ 1996 -1, /* .max_wretries [Note 4] */ 1997 {0x45,0x45,0x45,0x45}, /* .densities Density codes [Note 2] */ 1998 MT_DENSITY1, /* .default_density (.densities[x]) */ 1999 {0,0,0,0}, /* .speeds Speed codes [Note 3] */ 2000 0, /* .non_motion_timeout Nothing Special */ 2001 MINUTES(5), /* .io_timeout Five Five Minutes */ 2002 0, /* .rewind_timeout Nothing Special */ 2003 0, /* .space_timeout Nothing Special */ 2004 0, /* .load_timeout Nothing Special */ 2005 0, /* .unload_timeout Nothing Special */ 2006 MINUTES(70) /* .erase_timeout One Hour and ten Minutes */ 2007 }, 2008 2009 /* 2010 * STK 9840B cartridge drive. 2011 * 2012 * NOTES 2013 * ----- 2014 * o The 9840B has special needs - support for SCSI LOCATE and 2015 * READ POSITION commands - so we must be sure to place this 2016 * entry before the one for ST_TYPE_STC3490 (generic STK 2017 * half-inch cartridge drives). 2018 * [1] Compression on the 9840B is controlled 2019 * via the Device Configuration mode page. 2020 * [2] The 9840B has only one density, 0x42 (or 0 for "default"). 2021 * [3] The 9840B has only one speed (if the driver ever cares). 2022 * [4] max_rretries and max_wretries are driver anachronisms. 2023 */ 2024 { /* Structure member Description */ 2025 /* ---------------- ----------- */ 2026 "StorageTek 9840B", /* .name Display ("pretty") name */ 2027 14, /* .length Length of next item... */ 2028 "STK T9840B", /* .vid Vendor-product ID string */ 2029 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 2030 0, /* .bsize Block size (0 = variable)*/ 2031 /* .options Drive option flags: */ 2032 ST_VARIABLE | /* 0000001 Supports variable length */ 2033 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2034 ST_BSR | /* 0000010 Supports SPACE block rev */ 2035 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2036 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2037 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2038 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2039 ST_WORMABLE, /* 1000000 Supports WORM */ 2040 /* ------- */ 2041 /* 1018619 */ 2042 -1, /* .max_rretries [Note 4] */ 2043 -1, /* .max_wretries [Note 4] */ 2044 {0x42,0x42,0x42,0x42}, /* .densities Density codes [Note 2] */ 2045 MT_DENSITY1, /* .default_density (.densities[x]) */ 2046 {0,0,0,0}, /* .speeds Speed codes [Note 3] */ 2047 0, /* .non_motion_timeout Nothing Special */ 2048 MINUTES(5), /* .io_timeout Five Five Minutes */ 2049 0, /* .rewind_timeout Nothing Special */ 2050 0, /* .space_timeout Nothing Special */ 2051 0, /* .load_timeout Nothing Special */ 2052 0, /* .unload_timeout Nothing Special */ 2053 MINUTES(70) /* .erase_timeout One Hour and ten Minutes */ 2054 }, 2055 2056 /* 2057 * STK 9940B cartridge drive. 2058 * 2059 * NOTES 2060 * ----- 2061 * [1] Compression on the 9940 is controlled 2062 * via the Device Configuration mode page. 2063 * [2] The 9940 has only one density, 0x44. 2064 * [3] The 9940 has only one speed (if the driver ever cares). 2065 * [4] max_rretries and max_wretries are driver not used. 2066 */ 2067 { /* Structure member Description */ 2068 /* ---------------- ----------- */ 2069 "StorageTek 9940B", /* .name Display ("pretty") name */ 2070 14, /* .length Length of next item... */ 2071 "STK T9940B", /* .vid Vendor-product ID string */ 2072 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h) */ 2073 0, /* .bsize Block size (0 = variable) */ 2074 /* .options Drive option flags: */ 2075 ST_VARIABLE | /* 0000001 Supports variable length */ 2076 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2077 ST_BSR | /* 0000010 Supports SPACE block rev */ 2078 ST_AUTODEN_OVERRIDE | /* 0000040 Autodensity override flag */ 2079 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2080 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2081 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2082 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2083 ST_WORMABLE, /* 1000000 Supports WORM */ 2084 /* ------- */ 2085 /* 1018659 */ 2086 -1, /* .max_rretries [Note 4] */ 2087 -1, /* .max_wretries [Note 4] */ 2088 {0x44,0x44,0x44,0x44}, /* .densities Density codes [Note 2] */ 2089 MT_DENSITY1, /* .default_density (.densities[x]) */ 2090 {0, 0, 0, 0}, /* .speeds Speed codes [Note 3] */ 2091 0, /* .non_motion_timeout Nothing Special */ 2092 MINUTES(5), /* .io_timeout Five minutes */ 2093 0, /* .rewind_timeout Nothing Special */ 2094 MINUTES(180), /* .space_timeout Three Hours 3 x 9840 */ 2095 0, /* .load_timeout Nothing Special */ 2096 0, /* .unload_timeout Nothing Special */ 2097 MINUTES(210) /* .erase_timeout Three and a half hours */ 2098 }, 2099 2100 /* 2101 * STK 9940 cartridge drive. 2102 * 2103 * NOTES 2104 * ----- 2105 * [1] Compression on the 9940 is controlled 2106 * via the Device Configuration mode page. 2107 * [2] The 9940 has only one density, 0x43. 2108 * [3] The 9940 has only one speed (if the driver ever cares). 2109 * [4] max_rretries and max_wretries are driver not used. 2110 */ 2111 { /* Structure member Description */ 2112 /* ---------------- ----------- */ 2113 "StorageTek 9940", /* .name Display ("pretty") name */ 2114 14, /* .length Length of next item... */ 2115 "STK T9940A", /* .vid Vendor-product ID string */ 2116 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 2117 0, /* .bsize Block size (0 = variable)*/ 2118 /* .options Drive option flags: */ 2119 ST_VARIABLE | /* 0000001 Supports variable length */ 2120 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2121 ST_BSR | /* 0000010 Supports SPACE block rev */ 2122 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2123 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2124 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2125 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2126 ST_WORMABLE, /* 1000000 Supports WORM */ 2127 /* ------- */ 2128 /* 1018619 */ 2129 -1, /* .max_rretries [Note 4] */ 2130 -1, /* .max_wretries [Note 4] */ 2131 {0x43,0x43,0x43,0x43}, /* .densities Density codes [Note 2] */ 2132 MT_DENSITY1, /* .default_density (.densities[x]) */ 2133 {0, 0, 0, 0}, /* .speeds Speed codes [Note 3] */ 2134 0, /* .non_motion_timeout Nothing Special */ 2135 MINUTES(5), /* .io_timeout Five Minutes */ 2136 0, /* .rewind_timeout Nothing Special */ 2137 MINUTES(180), /* .space_timeout Three Hours 3 x 9840 */ 2138 0, /* .load_timeout Nothing Special */ 2139 0, /* .unload_timeout Nothing Special */ 2140 MINUTES(210) /* .erase_timeout Three and a half hours */ 2141 }, 2142 2143 /* 2144 * STK 9840 cartridge drive (Sun codename: Ironsides) 2145 * 2146 * NOTES 2147 * ----- 2148 * o The 9840 has special needs - support for SCSI LOCATE and 2149 * READ POSITION commands - so we must be sure to place this 2150 * entry before the one for ST_TYPE_STC3490 (generic STK 2151 * half-inch cartridge drives). 2152 * [1] Compression on the 9840 is controlled 2153 * via the Device Configuration mode page. 2154 * [2] The 9840 has only one density, 0x42 (or 0 for "default"). 2155 * [3] The 9840 has only one speed (if the driver ever cares). 2156 * [4] max_rretries and max_wretries are driver anachronisms. 2157 * [5] ST_LONG_ERASE is not needed or used when .erase_timeout 2158 * is non-zero. 2159 */ 2160 { /* Structure member Description */ 2161 /* ---------------- ----------- */ 2162 "StorageTek 9840", /* .name Display ("pretty") name */ 2163 12, /* .length Length of next item... */ 2164 "STK 9840", /* .vid Vendor-product ID string */ 2165 ST_TYPE_STK9840, /* .type Numeric type (cf. mtio.h)*/ 2166 0, /* .bsize Block size (0 = variable)*/ 2167 /* .options Drive option flags: */ 2168 ST_VARIABLE | /* 0000001 Supports variable length */ 2169 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2170 ST_BSR | /* 0000010 Supports SPACE block rev */ 2171 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2172 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2173 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2174 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2175 ST_WORMABLE, /* 1000000 Supports WORM */ 2176 /* ------- */ 2177 /* 1018619 */ 2178 10, /* .max_rretries [Note 4] */ 2179 10, /* .max_wretries [Note 4] */ 2180 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 2] */ 2181 MT_DENSITY1, /* .default_density (.densities[x]) */ 2182 {0, 0, 0, 0}, /* .speeds Speed codes [Note 3] */ 2183 0, /* .non_motion_timeout Nothing Special */ 2184 MINUTES(5), /* .io_timeout Five Minutes */ 2185 0, /* .rewind_timeout Nothing Special */ 2186 0, /* .space_timeout Nothing Special */ 2187 0, /* .load_timeout Nothing Special */ 2188 0, /* .unload_timeout Nothing Special */ 2189 MINUTES(70) /* .erase_timeout One Hour and ten Minutes */ 2190 }, 2191 2192 /* 2193 * STC 3490 1/2" cartridge 2194 * 2195 * NOTES 2196 * ----- 2197 * o This is an unsupported drive. 2198 * 2199 * o This is the generic StorageTek (STK) entry. Any special or drive 2200 * specific entries must be placed ahead of this entry in the file, to 2201 * ensure that the driver will "see" and use them; otherwise this entry 2202 * will be used as the default. 2203 * 2204 * [1] The STC 3490 uses 0 or "default" for the desnity code. 2205 * [2] The STC 3490 has only one speed (if the driver ever cares). 2206 * [3] max_rretries and max_wretries are driver anachronisms. 2207 */ 2208 { /* Structure member Description */ 2209 /* ---------------- ----------- */ 2210 "STK 1/2\" Cartridge", /* .name Display ("pretty") name */ 2211 3, /* .length Length of next item... */ 2212 "STK", /* .vid Vendor-product ID string */ 2213 ST_TYPE_STC3490, /* .type Numeric type (cf. mtio.h) */ 2214 0, /* .bsize Block size (0 = variable) */ 2215 ST_VARIABLE | /* 00001 Supports variable length */ 2216 ST_REEL | /* 00004 1/2-inch reel tape device */ 2217 ST_BSF | /* 00008 Supports SPACE block fwd */ 2218 ST_BSR | /* 00010 Supports SPACE block rev */ 2219 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2220 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2221 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2222 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 2223 /* ----- */ 2224 /* 1843D */ 2225 400, /* .max_rretries [Note 3] */ 2226 400, /* .max_wretries [Note 3] */ 2227 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2228 MT_DENSITY1, /* .default_density (.densities[x]) */ 2229 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2230 }, 2231 2232 /* 2233 * Sony SAIT 2234 * 2235 * Only looking at part of the product ID so it will match SDZ-100 and 2236 * SDZ-130. One is SCSI other is Fibre but same configuration otherwise. 2237 * 2238 */ 2239 { /* Structure member Description */ 2240 /* ---------------- ----------- */ 2241 "Sony Super AIT", /* .name Display ("pretty") name */ 2242 13, /* .length Length of next item... */ 2243 "SONY SDZ-1*", /* .vid Vendor-product ID string */ 2244 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2245 0, 2246 ST_VARIABLE | /* 0000001 Supports variable length */ 2247 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2248 ST_BSR | /* 0000010 Supports SPACE block rev */ 2249 ST_AUTODEN_OVERRIDE | /* 0000040 Suports only one density */ 2250 ST_KNOWS_EOD | /* 0000200 Knows End Of Data */ 2251 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2252 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2253 ST_MODE_SEL_COMP | /* 0010000 mode select compression */ 2254 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 2255 /* ------- */ 2256 /* 1018659 */ 2257 -1, /* .max_rretries Not used */ 2258 -1, /* .max_wretries Not used */ 2259 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 2260 MT_DENSITY4, /* .default_density (.densities[x]) */ 2261 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2262 0, /* .non_motion_timeout Nothing special */ 2263 0, /* .io_timeout Four Nothing Special */ 2264 0, /* .rewind_timeout Nothing Special */ 2265 0, /* .space_timeout Nothing Special */ 2266 0, /* .load_timeout Nothing Special */ 2267 0, /* .unload_timeout Nothing Special */ 2268 0, /* .erase_timeout Six hours */ 2269 }, 2270 2271 /* 2272 * Sony SDX-420 2273 * This drive is listed before the more generic AIT drives becouse it runs 2274 * only in fixed block mode. It also responds to READ BLOCK LIMITS which 2275 * leads st to beleive its a variable block capable but it will fail any 2276 * i/o that doesn't have the fix bit set in the CDB. 2277 */ 2278 { /* Structure member Description */ 2279 /* ---------------- ----------- */ 2280 "Sony AIT II", /* .name Display ("pretty") name */ 2281 15, /* .length Length of next item... */ 2282 "SONY SDX-420*", /* .vid Vendor-product ID string */ 2283 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2284 512, 2285 ST_BSF | /* 00008 Supports SPACE block fwd */ 2286 ST_BSR | /* 00010 Supports SPACE block rev */ 2287 ST_AUTODEN_OVERRIDE | /* 00040 One density code */ 2288 ST_KNOWS_EOD | /* 00200 Knows End Of Data */ 2289 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2290 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2291 ST_MODE_SEL_COMP, /* 10000 mode select compression */ 2292 /* ----- */ 2293 /* 18658 */ 2294 -1, /* .max_rretries Not used */ 2295 -1, /* .max_wretries Not used */ 2296 {0x30, 0x30, 0x30, 0x30}, /* .densities Density codes [Note 1] */ 2297 MT_DENSITY4, /* .default_density (.densities[x]) */ 2298 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2299 0, /* .non_motion_timeout Nothing special */ 2300 0, /* .io_timeout Four Nothing Special */ 2301 0, /* .rewind_timeout Nothing Special */ 2302 0, /* .space_timeout Nothing Special */ 2303 0, /* .load_timeout Nothing Special */ 2304 0, /* .unload_timeout Nothing Special */ 2305 0, /* .erase_timeout Six hours */ 2306 }, 2307 2308 /* 2309 * Sony SDX-520 2310 * This drive is listed before the more generic AIT drives becouse it runs 2311 * only in fixed block mode. It also responds to READ BLOCK LIMITS which 2312 * leads st to beleive its a variable block capable but it will fail any 2313 * i/o that doesn't have the fix bit set in the CDB. 2314 */ 2315 { /* Structure member Description */ 2316 /* ---------------- ----------- */ 2317 "Sony AIT II", /* .name Display ("pretty") name */ 2318 15, /* .length Length of next item... */ 2319 "SONY SDX-520*", /* .vid Vendor-product ID string */ 2320 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2321 512, 2322 ST_BSF | /* 00008 Supports SPACE block fwd */ 2323 ST_BSR | /* 00010 Supports SPACE block rev */ 2324 ST_AUTODEN_OVERRIDE | /* 00040 One density code */ 2325 ST_KNOWS_EOD | /* 00200 Knows End Of Data */ 2326 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2327 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2328 ST_MODE_SEL_COMP, /* 10000 mode select compression */ 2329 /* ----- */ 2330 /* 18658 */ 2331 -1, /* .max_rretries Not used */ 2332 -1, /* .max_wretries Not used */ 2333 {0x30, 0x30, 0x30, 0x30}, /* .densities Density codes [Note 1] */ 2334 MT_DENSITY4, /* .default_density (.densities[x]) */ 2335 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2336 0, /* .non_motion_timeout Nothing special */ 2337 0, /* .io_timeout Four Nothing Special */ 2338 0, /* .rewind_timeout Nothing Special */ 2339 0, /* .space_timeout Nothing Special */ 2340 0, /* .load_timeout Nothing Special */ 2341 0, /* .unload_timeout Nothing Special */ 2342 0, /* .erase_timeout Six hours */ 2343 }, 2344 2345 /* Sony generic AIT 2346 * 2347 * 2348 */ 2349 { /* Structure member Description */ 2350 /* ---------------- ----------- */ 2351 "Sony AIT", /* .name Display ("pretty") name */ 2352 12, /* .length Length of next item... */ 2353 "SONY SDX-*", /* .vid Vendor-product ID string */ 2354 ST_TYPE_AIT, /* .type Numeric type (cf. mtio.h) */ 2355 0, 2356 ST_VARIABLE | /* 0000001 Supports variable length */ 2357 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2358 ST_BSR | /* 0000010 Supports SPACE block rev */ 2359 ST_AUTODEN_OVERRIDE | /* 0000040 One density code */ 2360 ST_KNOWS_EOD | /* 0000200 Knows End Of Data */ 2361 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2362 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2363 ST_MODE_SEL_COMP | /* 0010000 mode select compression */ 2364 ST_WORMABLE, /* 1000000 Drive is WORM capable */ 2365 /* ------- */ 2366 /* 1018659 */ 2367 -1, /* .max_rretries Not used */ 2368 -1, /* .max_wretries Not used */ 2369 {0x30, 0x30, 0x30, 0x30}, /* .densities Density codes [Note 1] */ 2370 MT_DENSITY4, /* .default_density (.densities[x]) */ 2371 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 2372 0, /* .non_motion_timeout Nothing special */ 2373 0, /* .io_timeout Four Nothing Special */ 2374 0, /* .rewind_timeout Nothing Special */ 2375 0, /* .space_timeout Nothing Special */ 2376 0, /* .load_timeout Nothing Special */ 2377 0, /* .unload_timeout Nothing Special */ 2378 0, /* .erase_timeout Six hours */ 2379 }, 2380 2381 /* 2382 * Sun DLT7000 2383 * 2384 * NOTES 2385 * ----- 2386 * [1] The DLT7000 implements many tape formats, but the st driver supports 2387 * only the four highest densities. 2388 * [2] The DLT7000 has only one speed (if the driver ever cares). 2389 * [3] max_rretries and max_wretries are driver anachronisms. 2390 * [4] Data is buffered in the driver and pre-acked to the application. This 2391 * is only supported in 2.5.1. 2392 */ 2393 { /* Structure member Description */ 2394 /* ---------------- ----------- */ 2395 "Sun DLT7000", /* .name Display ("pretty") name */ 2396 15, /* .length Length of next item... */ 2397 "SUN DLT7000", /* .vid Vendor-product ID string */ 2398 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 2399 0, /* .bsize Block size (0 = variable) */ 2400 /* .options Drive option flags: */ 2401 ST_VARIABLE | /* 00001 Supports variable length */ 2402 ST_BSF | /* 00008 Supports SPACE block fwd */ 2403 ST_BSR | /* 00010 Supports SPACE block rev */ 2404 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2405 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2406 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2407 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 2408 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2409 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 2410 /* -------- */ 2411 /* 4000D619 */ 2412 400, /* .max_rretries [Note 3] */ 2413 400, /* .max_wretries [Note 3] */ 2414 {0x82, 0x83, 0x84, 0x85}, /* .densities Density codes [Note 1] */ 2415 MT_DENSITY3, /* .default_density (.densities[x]) */ 2416 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 2417 0, /* .non_motion_timeout Nothing special */ 2418 0, /* .io_timeout Four Nothing Special */ 2419 0, /* .rewind_timeout Nothing Special */ 2420 0, /* .space_timeout Nothing Special */ 2421 0, /* .load_timeout Nothing Special */ 2422 0, /* .unload_timeout Nothing Special */ 2423 MINUTES(360) /* .erase_timeout Six hours */ 2424 }, 2425 2426 /* 2427 * Sun DLT4000 2428 * 2429 * NOTES 2430 * ----- 2431 * [1] The DLT4000 implements many tape formats, but the st driver supports 2432 * only the four highest densities. 2433 * [2] The DLT4000 has only one speed (if the driver ever cares). 2434 * [3] max_rretries and max_wretries are driver anachronisms. 2435 * [4] Data is buffered in the driver and pre-acked to the application. This 2436 * is only supported in 2.5.1. 2437 */ 2438 { /* Structure member Description */ 2439 /* ---------------- ----------- */ 2440 "DLT4000", /* .name Display ("pretty") name */ 2441 15, /* .length Length of next item... */ 2442 "SUN DLT4000", /* .vid Vendor-product ID string */ 2443 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 2444 0, /* .bsize Block size (0 = variable) */ 2445 /* .options Drive option flags: */ 2446 ST_VARIABLE | /* 00001 Supports variable length */ 2447 ST_BSF | /* 00008 Supports SPACE block fwd */ 2448 ST_BSR | /* 00010 Supports SPACE block rev */ 2449 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2450 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2451 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2452 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 2453 ST_NO_RECSIZE_LIMIT| /* 08000 Supports blocks > 64KB */ 2454 ST_CLN_TYPE_3, /* 40000000 Asks to be cleaned this way */ 2455 /* -------- */ 2456 /* 4000D619 */ 2457 400, /* .max_rretries [Note 3] */ 2458 400, /* .max_wretries [Note 3] */ 2459 {0x80, 0x81, 0x82, 0x83}, /* .densities Density codes [Note 1] */ 2460 MT_DENSITY3, /* .default_density (.densities[x]) */ 2461 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 2462 0, /* .non_motion_timeout Nothing special */ 2463 0, /* .io_timeout Four Nothing Special */ 2464 0, /* .rewind_timeout Nothing Special */ 2465 0, /* .space_timeout Nothing Special */ 2466 0, /* .load_timeout Nothing Special */ 2467 0, /* .unload_timeout Nothing Special */ 2468 MINUTES(360) /* .erase_timeout Six hours */ 2469 }, 2470 2471 /* 2472 * Sun DLT4700 2473 * 2474 * NOTES 2475 * ----- 2476 * [1] Compression on the DLT4700 is controlled via the Device Configuration 2477 * mode page or the Data Compression page (either one). 2478 * [2] The DLT4700 implements many tape formats, but the st driver supports 2479 * only the four highest densities. 2480 * [3] The DLT4700 has only one speed (if the driver ever cares). 2481 * [4] max_rretries and max_wretries are driver anachronisms. 2482 * [5] Data is buffered in the driver and pre-acked to the application. This 2483 * is only supported in 2.5.1. 2484 */ 2485 { /* Structure member Description */ 2486 /* ---------------- ----------- */ 2487 "DLT4700 Library", /* .name Display ("pretty") name */ 2488 15, /* .length Length of next item... */ 2489 "SUN DLT4700", /* .vid Vendor-product ID string */ 2490 ST_TYPE_DLT, /* .type Numeric type (cf. mtio.h) */ 2491 0, /* .bsize Block size (0 = variable) */ 2492 /* .options Drive option flags: */ 2493 ST_VARIABLE | /* 00001 Supports variable length */ 2494 ST_BSF | /* 00008 Supports SPACE block fwd */ 2495 ST_BSR | /* 00010 Supports SPACE block rev */ 2496 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2497 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2498 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2499 ST_BUFFERED_WRITES | /* 04000 [Note 5] */ 2500 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2501 /* ----- */ 2502 /* 0D619 */ 2503 400, /* .max_rretries [Note 4] */ 2504 400, /* .max_wretries [Note 4] */ 2505 {0x80, 0x81, 0x82, 0x83}, /* .densities Density codes [Note 2] */ 2506 MT_DENSITY3, /* .default_density (.densities[x]) */ 2507 { 0, 0, 0, 0 }, /* .speeds Speed codes [Note 2] */ 2508 0, /* .non_motion_timeout Nothing special */ 2509 0, /* .io_timeout Four Nothing Special */ 2510 0, /* .rewind_timeout Nothing Special */ 2511 0, /* .space_timeout Nothing Special */ 2512 0, /* .load_timeout Nothing Special */ 2513 0, /* .unload_timeout Nothing Special */ 2514 MINUTES(360) /* .erase_timeout Six hours */ 2515 }, 2516 2517 /* 2518 * Tandberg SLR5 4/8G (standard firmware) 2519 * 2520 * NOTES 2521 * ----- 2522 * [1] The density code entry requires four values, even if there are less 2523 * than four values for the drive. 2524 * [2] The Tandberg SLR5 4/8G has only one speed (if the driver ever cares). 2525 * [3] max_rretries and max_wretries are driver anachronisms. 2526 */ 2527 { /* Structure member Description */ 2528 /* ---------------- ----------- */ 2529 "Tandberg 4/8 Gig QIC", /* .name Display ("pretty") name */ 2530 19, /* .length Length of next item... */ 2531 "TANDBERG SLR5 4/8GB", /* .vid Vendor-product ID string */ 2532 ST_TYPE_TAND25G, /* .type Numeric type (cf. mtio.h) */ 2533 0, /* .bsize Block size (0 = variable) */ 2534 /* .options Drive option flags: */ 2535 ST_VARIABLE | /* 00001 Supports variable length */ 2536 ST_QIC | /* 00002 QIC tape device */ 2537 ST_BSF | /* 00008 Supports SPACE block fwd */ 2538 ST_BSR | /* 00010 Supports SPACE block rev */ 2539 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2540 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2541 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2542 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2543 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2544 /* ----- */ 2545 /* 0963B */ 2546 400, /* .max_rretries [Note 3] */ 2547 400, /* .max_wretries [Note 3] */ 2548 {0x22, 0x22, 0x26, 0x26}, /* .densities Density codes [Note 1] */ 2549 MT_DENSITY4, /* .default_density (.densities[x]) */ 2550 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2551 }, 2552 2553 /* 2554 * Tandberg SLR5 (SMI firmware). 2555 * 2556 * NOTES 2557 * ----- 2558 * o The inquiry string for this drive is actually padded with blanks, but 2559 * we only check the first 13 characters so that this will act as a default 2560 * to cover other revisions of firmware on SLR5s which may show up. 2561 * 2562 * [1] The density code entry requires four values, even if there are less 2563 * than four values for the drive. 2564 * [2] The Tandberg SLR5 has only one speed (if the driver ever cares). 2565 * [3] max_rretries and max_wretries are driver anachronisms. 2566 */ 2567 { /* Structure member Description */ 2568 /* ---------------- ----------- */ 2569 "Tandberg 8 Gig QIC", /* .name Display ("pretty") name */ 2570 13, /* .length Length of next item... */ 2571 "TANDBERG SLR5", /* .vid Vendor-product ID string */ 2572 ST_TYPE_TAND25G, /* .type Numeric type (cf. mtio.h) */ 2573 0, /* .bsize Block size (0 = variable) */ 2574 /* .options Drive option flags: */ 2575 ST_VARIABLE | /* 00001 Supports variable length */ 2576 ST_QIC | /* 00002 QIC tape device */ 2577 ST_BSF | /* 00008 Supports SPACE block fwd */ 2578 ST_BSR | /* 00010 Supports SPACE block rev */ 2579 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2580 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2581 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2582 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2583 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2584 /* ----- */ 2585 /* 0963B */ 2586 400, /* .max_rretries [Note 3] */ 2587 400, /* .max_wretries [Note 3] */ 2588 {0xA0, 0xD0, 0xD0, 0xD0}, /* .densities Density codes [Note 1] */ 2589 MT_DENSITY4, /* .default_density (.densities[x]) */ 2590 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2591 }, 2592 2593 /* 2594 * Tandberg 4100 QIC 2595 * 2596 * NOTES 2597 * ----- 2598 * o This is an unsupported drive. 2599 * 2600 * [1] The Tandberg 4100 uses 0 or the "default" density code. 2601 * [2] The Tandberg 4100 has only one speed (if the driver ever cares). 2602 * [3] max_rretries and max_wretries are driver anachronisms. 2603 */ 2604 { /* Structure member Description */ 2605 /* ---------------- ----------- */ 2606 "Tandberg 4100 QIC", /* .name Display ("pretty") name */ 2607 13, /* .length Length of next item... */ 2608 "TANDBERG 4100", /* .vid Vendor-product ID string */ 2609 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2610 512, /* .bsize Block size (0 = variable) */ 2611 /* .options Drive option flags: */ 2612 ST_QIC | /* 00002 QIC tape device */ 2613 ST_BSF | /* 00008 Supports SPACE block fwd */ 2614 ST_BSR | /* 00010 Supports SPACE block rev */ 2615 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2616 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2617 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2618 /* ----- */ 2619 /* 0063A */ 2620 400, /* .max_rretries [Note 3] */ 2621 400, /* .max_wretries [Note 3] */ 2622 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2623 MT_DENSITY2, /* .default_density (.densities[x]) */ 2624 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2625 }, 2626 2627 /* 2628 * Tandberg 4200 QIC 2629 * 2630 * NOTES 2631 * ----- 2632 * o This is an unsupported drive. 2633 * 2634 * [1] The Tandberg 4200 uses 0 or the "default" density code. 2635 * [2] The Tandberg 4200 has only one speed (if the driver ever cares). 2636 * [3] max_rretries and max_wretries are driver anachronisms. 2637 */ 2638 { /* Structure member Description */ 2639 /* ---------------- ----------- */ 2640 "Tandberg 4200 QIC", /* .name Display ("pretty") name */ 2641 13, /* .length Length of next item... */ 2642 "TANDBERG 4200", /* .vid Vendor-product ID string */ 2643 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2644 512, /* .bsize Block size (0 = variable) */ 2645 /* .options Drive option flags: */ 2646 ST_QIC | /* 00002 QIC tape device */ 2647 ST_BSF | /* 00008 Supports SPACE block fwd */ 2648 ST_BSR | /* 00010 Supports SPACE block rev */ 2649 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2650 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2651 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2652 /* ----- */ 2653 /* 0063A */ 2654 400, /* .max_rretries [Note 3] */ 2655 400, /* .max_wretries [Note 3] */ 2656 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2657 MT_DENSITY2, /* .default_density (.densities[x]) */ 2658 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2659 }, 2660 2661 /* 2662 * Tandberg QIC 2.5 Gig Tape Drive 2663 * 2664 * NOTES 2665 * ----- 2666 * [1] The TDC 4200 uses 0 or the "default" density code. 2667 * [2] The TDC 4200 has only one speed (if the driver ever cares). 2668 * [3] max_rretries and max_wretries are driver anachronisms. 2669 * [4] Data is buffered in the driver and pre-acked to the application. This 2670 * is only supported in 2.5.1. 2671 */ 2672 { /* Structure member Description */ 2673 /* ---------------- ----------- */ 2674 "Tandberg QIC 2.5 Gig Tape Drive", 2675 /* .name Display ("pretty") name */ 2676 16, /* .length Length of next item... */ 2677 "TANDBERG TDC 420*", /* .vid Vendor-product ID string */ 2678 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2679 0, /* .bsize Block size (0 = variable) */ 2680 /* .options Drive option flags: */ 2681 ST_VARIABLE | /* 00001 Supports variable length */ 2682 ST_QIC | /* 00002 QIC tape device */ 2683 ST_BSF | /* 00008 Supports SPACE block fwd */ 2684 ST_BSR | /* 00010 Supports SPACE block rev */ 2685 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2686 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2687 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2688 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2689 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2690 ST_BUFFERED_WRITES | /* 04000 [Note 4] */ 2691 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2692 /* ----- */ 2693 /* 0D67B */ 2694 400, /* .max_rretries [Note 3] */ 2695 400, /* .max_wretries [Note 3] */ 2696 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2697 MT_DENSITY1, /* .default_density (.densities[x]) */ 2698 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2699 }, 2700 2701 /* 2702 * Tandberg MLR1 QIC 2703 * 2704 * NOTES 2705 * ----- 2706 * [1] The MLR1 uses 0 or the "default" density code. 2707 * [2] The MLR1 has only one speed (if the driver ever cares). 2708 * [3] max_rretries and max_wretries are driver anachronisms. 2709 * [4] Data is buffered in the driver and pre-acked to the application. This 2710 * is only supported in 2.5.1. 2711 */ 2712 { /* Structure member Description */ 2713 /* ---------------- ----------- */ 2714 "Tandberg MLR1 QIC", /* .name Display ("pretty") name */ 2715 12, /* .length Length of next item... */ 2716 "TANDBERGMLR1", /* .vid Vendor-product ID string */ 2717 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 2718 512, /* .bsize Block size (0 = variable) */ 2719 /* .options Drive option flags: */ 2720 ST_QIC | /* 00002 QIC tape device */ 2721 ST_BSF | /* 00008 Supports SPACE block fwd */ 2722 ST_BSR | /* 00010 Supports SPACE block rev */ 2723 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2724 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2725 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2726 ST_BUFFERED_WRITES, /* 04000 [Note 4] */ 2727 /* ----- */ 2728 /* 0463A */ 2729 400, /* .max_rretries [Note 3] */ 2730 400, /* .max_wretries [Note 3] */ 2731 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2732 MT_DENSITY1, /* .default_density (.densities[x]) */ 2733 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2734 }, 2735 2736 /* 2737 * Tandberg MLR3 QIC 2738 * 2739 * NOTES 2740 * ----- 2741 * [1] The density code entry requires four values, even if there are less 2742 * than four values for the drive. 2743 * [2] The MLR3 has only one speed (if the driver ever cares). 2744 * [3] max_rretries and max_wretries are driver anachronisms. 2745 */ 2746 { /* Structure member Description */ 2747 /* ---------------- ----------- */ 2748 "Tandberg 50 Gig QIC", /* .name Display ("pretty") name */ 2749 12, /* .length Length of next item... */ 2750 "TANDBERGMLR3", /* .vid Vendor-product ID string */ 2751 MT_ISTAND25G, /* .type Numeric type (cf. mtio.h) */ 2752 0, /* .bsize Block size (0 = variable) */ 2753 /* .options Drive option flags: */ 2754 ST_VARIABLE | /* 00001 Supports variable length */ 2755 ST_QIC | /* 00002 QIC tape device */ 2756 ST_BSF | /* 00008 Supports SPACE block fwd */ 2757 ST_BSR | /* 00010 Supports SPACE block rev */ 2758 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2759 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2760 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2761 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2762 ST_NO_RECSIZE_LIMIT, /* 08000 Supports blocks > 64KB */ 2763 /* ----- */ 2764 /* 0963B */ 2765 400, /* .max_rretries [Note 3] */ 2766 400, /* .max_wretries [Note 3] */ 2767 {0xA0, 0xD0, 0xD0, 0xD0}, /* .densities Density codes [Note 1] */ 2768 MT_DENSITY3, /* .default_density (.densities[x]) */ 2769 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2770 }, 2771 2772 /* 2773 * WangDAT 3.81mm cartridge 2774 * 2775 * NOTES 2776 * ----- 2777 * o This is an unsupported drive. 2778 * 2779 * [1] The WangDAT 3.81mm uses 0 or the "default" density code. 2780 * [2] The WangDAT 3.81mm has only one speed (if the driver ever cares). 2781 * [3] max_rretries and max_wretries are driver anachronisms. 2782 */ 2783 { /* Structure member Description */ 2784 /* ---------------- ----------- */ 2785 "Wang DAT 3.81 Helical Scan", 2786 /* .name Display ("pretty") name */ 2787 7, /* .length Length of next item... */ 2788 "WangDAT", /* .vid Vendor-product ID string */ 2789 ST_TYPE_WANGDAT, /* .type Numeric type (cf. mtio.h) */ 2790 0, /* .bsize Block size (0 = variable) */ 2791 /* .options Drive option flags: */ 2792 ST_VARIABLE | /* 00001 Supports variable length */ 2793 ST_BSF | /* 00008 Supports SPACE block fwd */ 2794 ST_BSR | /* 00010 Supports SPACE block rev */ 2795 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2796 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2797 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2798 /* ----- */ 2799 /* 00659 */ 2800 5000, /* .max_rretries [Note 3] */ 2801 5000, /* .max_wretries [Note 3] */ 2802 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2803 MT_DENSITY2, /* .default_density (.densities[x]) */ 2804 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2805 }, 2806 2807 /* 2808 * Wangtek QIC-150 1/4" cartridge 2809 * 2810 * NOTES 2811 * ----- 2812 * o This is an unsupported drive. 2813 * 2814 * [1] The Wangtek QIC-150 uses 0 or the "default" density code. 2815 * [2] The Wangtek QIC-150 has only one speed (if the driver ever cares). 2816 * [3] max_rretries and max_wretries are driver anachronisms. 2817 */ 2818 { /* Structure member Description */ 2819 /* ---------------- ----------- */ 2820 "Wangtek QIC-150", /* .name Display ("pretty") name */ 2821 14, /* .length Length of next item... */ 2822 "WANGTEK 5150ES", /* .vid Vendor-product ID string */ 2823 ST_TYPE_WANGTEK, /* .type Numeric type (cf. mtio.h) */ 2824 512, /* .bsize Block size (0 = variable) */ 2825 /* .options Drive option flags: */ 2826 ST_QIC | /* 00002 QIC tape device */ 2827 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2828 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2829 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2830 /* ----- */ 2831 /* 00642 */ 2832 400, /* .max_rretries [Note 3] */ 2833 400, /* .max_wretries [Note 3] */ 2834 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2835 MT_DENSITY2, /* .default_density (.densities[x]) */ 2836 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2837 }, 2838 2839 /* 2840 * Wangtek 4mm RDAT drive 2841 * 2842 * NOTES 2843 * ----- 2844 * o This is an unsupported drive. 2845 * 2846 * o This entry uses a shortened Vendor-product ID string for the 2847 * INQUIRY match. 2848 * 2849 * [1] The Wangtek 4mm RDAT uses 0 or the "default" density code. 2850 * [2] The Wangtek 4mm RDAT has only one speed (if the driver ever cares). 2851 * [3] max_rretries and max_wretries are driver anachronisms. 2852 */ 2853 { /* Structure member Description */ 2854 /* ---------------- ----------- */ 2855 "Wangtek 4mm Helical Scan", 2856 /* .name Display ("pretty") name */ 2857 14, /* .length Length of next item... */ 2858 "WANGTEK 6130-H*", /* .vid Vendor-product ID string */ 2859 ST_TYPE_WANGTHS, /* .type Numeric type (cf. mtio.h) */ 2860 0, /* .bsize Block size (0 = variable) */ 2861 /* .options Drive option flags: */ 2862 ST_VARIABLE | /* 00001 Supports variable length */ 2863 ST_BSF | /* 00008 Supports SPACE block fwd */ 2864 ST_BSR | /* 00010 Supports SPACE block rev */ 2865 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 2866 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2867 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2868 /* ----- */ 2869 /* 00659 */ 2870 400, /* .max_rretries [Note 3] */ 2871 400, /* .max_wretries [Note 3] */ 2872 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2873 MT_DENSITY2, /* .default_density (.densities[x]) */ 2874 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2875 }, 2876 2877 /* 2878 * Wangtek QIC-150 1/4" cartridge 2879 * 2880 * NOTES 2881 * ----- 2882 * o This is an unsupported drive. 2883 * 2884 * [1] The Wangtek QIC-150 uses 0 or the "default" density code. 2885 * [2] The Wangtek QIC-150 has only one speed (if the driver ever cares). 2886 * [3] max_rretries and max_wretries are driver anachronisms. 2887 */ 2888 { /* Structure member Description */ 2889 /* ---------------- ----------- */ 2890 "Wangtek 5525ES SCSI", /* .name Display ("pretty") name */ 2891 19, /* .length Length of next item... */ 2892 "WANGTEK 5525ES SCSI", /* .vid Vendor-product ID string */ 2893 ST_TYPE_WANGTEK, /* .type Numeric type (cf. mtio.h) */ 2894 512, /* .bsize Block size (0 = variable) */ 2895 /* .options Drive option flags: */ 2896 ST_QIC | /* 00002 QIC tape device */ 2897 ST_BSF | /* 00008 Supports SPACE block fwd */ 2898 ST_BSR | /* 00010 Supports SPACE block rev */ 2899 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2900 ST_AUTODEN_OVERRIDE | /* 00040 Autdensity override flag */ 2901 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2902 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 2903 /* ----- */ 2904 /* 0067A */ 2905 400, /* .max_rretries [Note 3] */ 2906 400, /* .max_wretries [Note 3] */ 2907 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 2908 MT_DENSITY2, /* .default_density (.densities[x]) */ 2909 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2910 }, 2911 2912 /* 2913 * [1] The Ecrix VXA-1 has only one density at this time, 2914 * Compression is controlled via the Device Configuration 2915 * mode page. 2916 * [2] The Ecrix VXA-1 is a veriable speed device. The drive determines 2917 * the optimum speed. (if the driver ever cares). 2918 */ 2919 { /* Structure member Description */ 2920 /* ---------------- ----------- */ 2921 "Ecrix VXA-1", /* .name Display ("pretty") name */ 2922 13, /* .length Length of next item... */ 2923 "ECRIX VXA-1", /* .vid Vendor-product ID string */ 2924 MT_ISOTHER, /* .type Numeric type (cf. mtio.h) */ 2925 0, /* .bsize Block size (0 = variable) */ 2926 /* .options Drive option flags: */ 2927 ST_VARIABLE | /* 00001 Supports variable length */ 2928 ST_BSF | /* 00008 Supports SPACE block fwd */ 2929 ST_BSR | /* 00010 Supports SPACE block rev */ 2930 ST_LONG_ERASE | /* 00020 Needs extra time to erase */ 2931 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 2932 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 2933 ST_SOFT_ERROR_REPORTING | /* 00800 Reports errors on close */ 2934 ST_LONG_TIMEOUTS | /* 01000 More time for some ops */ 2935 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 2936 ST_MODE_SEL_COMP | /* 10000 Mode Select to enable comp */ 2937 ST_CLN_TYPE_1, /* 10000000 Asks to be cleaned this way */ 2938 /* -------- */ 2939 /* 10019E39 */ 2940 -1, /* .max_rretries */ 2941 -1, /* .max_wretries */ 2942 {0x80, 0x80, 0x80, 0x80}, /* .densities Density codes [Note 1] */ 2943 MT_DENSITY4, /* .default_density (.densities[x]) */ 2944 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 2945 }, 2946 2947 /* 2948 * [1] The IBM Ultrium Gen 4 "OEM" version has two densites at this time, 2949 * One for Gen 3 0x44, One for Gen 4 0x46. 2950 * This drive is configured with ST_KNOWS_MEDIA. 2951 * That means that it will look at the mediatype from the mode sense 2952 * to select the density code. The compression will be selected based 2953 * on the minor node the user opened. 2954 * [2] The IBM LTO reports a medium type that is used to select the density. 2955 */ 2956 { /* Structure member Description */ 2957 /* ---------------- ----------- */ 2958 "IBM Ultrium Gen 4 LTO", /* .name Display ("pretty") name */ 2959 19, /* .length Length of next item... */ 2960 "IBM ULTRIUM-TD4", /* .vid Vendor-product ID string */ 2961 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 2962 0, /* .bsize Block size (0 = variable) */ 2963 /* .options Drive option flags: */ 2964 ST_VARIABLE | /* 0000001 Supports variable length */ 2965 ST_BSF | /* 0000008 Supports SPACE block fwd */ 2966 ST_BSR | /* 0000010 Supports SPACE block rev */ 2967 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 2968 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 2969 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 2970 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 2971 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 2972 ST_WORMABLE, /* 1000000 Is WORM capable */ 2973 /* ------- */ 2974 /* 1818619 */ 2975 -1, /* .max_rretries Not used any more. */ 2976 -1, /* .max_wretries Not used any more. */ 2977 {0x44, 0x44, 0x46, 0x46}, /* .densities Density codes [Note 1] */ 2978 MT_DENSITY4, /* .default_density (.densities[x]) */ 2979 {0x38, 0x38, 0x48, 0x48}, /* .mediatype Media type [Note 2] */ 2980 MINUTES(1), /* .non_motion_time */ 2981 MINUTES(23), /* .io_time */ 2982 MINUTES(9), /* .rewind_time */ 2983 MINUTES(183), /* .space_time worst case directory invalid*/ 2984 MINUTES(9), /* .load_time */ 2985 MINUTES(13), /* .unload_time */ 2986 MINUTES(180) /* .erase_time */ 2987 }, 2988 2989 /* 2990 * [1] The IBM Ultrium Gen 4 "IBM" version has two densites at this time, 2991 * One for Gen 3 0x44, one for Gen 4 0x46. 2992 * This drive is configured with ST_KNOWS_MEDIA. 2993 * That means that it will look at the mediatype from the mode sense 2994 * to select the density code. The compression will be selected based 2995 * on the minor node the user opened. 2996 * [2] The IBM LTO reports a medium type that is used to select the density. 2997 */ 2998 { /* Structure member Description */ 2999 /* ---------------- ----------- */ 3000 "IBM Ultrium Gen 4 LTO", /* .name Display ("pretty") name */ 3001 19, /* .length Length of next item... */ 3002 "IBM ULT3580-TD4", /* .vid Vendor-product ID string */ 3003 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3004 0, /* .bsize Block size (0 = variable) */ 3005 /* .options Drive option flags: */ 3006 ST_VARIABLE | /* 0000001 Supports variable length */ 3007 ST_BSF | /* 0000008 Supports SPACE block fwd */ 3008 ST_BSR | /* 0000010 Supports SPACE block rev */ 3009 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 3010 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 3011 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 3012 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 3013 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 3014 ST_WORMABLE, /* 1000000 Is WORM capable */ 3015 /* ------- */ 3016 /* 1818619 */ 3017 -1, /* .max_rretries Not used any more. */ 3018 -1, /* .max_wretries Not used any more. */ 3019 {0x44, 0x44, 0x46, 0x46}, /* .densities Density codes [Note 1] */ 3020 MT_DENSITY4, /* .default_density (.densities[x]) */ 3021 {0x38, 0x38, 0x48, 0x48}, /* .mediatype Media type [Note 2] */ 3022 MINUTES(1), /* .non_motion_time */ 3023 MINUTES(23), /* .io_time */ 3024 MINUTES(9), /* .rewind_time */ 3025 MINUTES(183), /* .space_time worst case directory invalid*/ 3026 MINUTES(9), /* .load_time */ 3027 MINUTES(13), /* .unload_time */ 3028 MINUTES(180) /* .erase_time */ 3029 }, 3030 3031 /* 3032 * [1] The IBM Ultrium Gen 3 "OEM" version has three densites at this time, 3033 * One for Gen 1 0x40, One for Gen 2 0x42 and for Gen 3 0x44. 3034 * This drive is configured with ST_KNOWS_MEDIA. 3035 * That means that it will look at the mediatype from the mode sense 3036 * to select the density code. The compression will be selected based 3037 * on the minor node the user opened. 3038 * [2] The IBM LTO reports a medium type that is used to select the density. 3039 */ 3040 { /* Structure member Description */ 3041 /* ---------------- ----------- */ 3042 "IBM Ultrium Gen 3 LTO", /* .name Display ("pretty") name */ 3043 19, /* .length Length of next item... */ 3044 "IBM ULTRIUM-TD3", /* .vid Vendor-product ID string */ 3045 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3046 0, /* .bsize Block size (0 = variable) */ 3047 /* .options Drive option flags: */ 3048 ST_VARIABLE | /* 0000001 Supports variable length */ 3049 ST_BSF | /* 0000008 Supports SPACE block fwd */ 3050 ST_BSR | /* 0000010 Supports SPACE block rev */ 3051 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 3052 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 3053 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 3054 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 3055 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 3056 ST_WORMABLE, /* 1000000 Is WORM capable */ 3057 /* ------- */ 3058 /* 1818619 */ 3059 -1, /* .max_rretries Not used any more. */ 3060 -1, /* .max_wretries Not used any more. */ 3061 {0x40, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 3062 MT_DENSITY4, /* .default_density (.densities[x]) */ 3063 {0x18, 0x28, 0x38, 0x38}, /* .mediatype Media type [Note 2] */ 3064 MINUTES(1), /* .non_motion_time */ 3065 MINUTES(18), /* .io_time */ 3066 MINUTES(9), /* .rewind_time */ 3067 MINUTES(165), /* .space_time worst case directory invalid*/ 3068 MINUTES(9), /* .load_time */ 3069 MINUTES(12), /* .unload_time */ 3070 MINUTES(160) /* .erase_time */ 3071 }, 3072 3073 /* 3074 * [1] The IBM Ultrium Gen 3 "IBM" version has three densites at this time, 3075 * One for Gen 1 0x40, One for Gen 2 0x42 and Gen 3 0x44. 3076 * This drive is configured with ST_KNOWS_MEDIA. 3077 * That means that it will look at the mediatype from the mode sense 3078 * to select the density code. The compression will be selected based 3079 * on the minor node the user opened. 3080 * [2] The IBM LTO reports a medium type that is used to select the density. 3081 */ 3082 { /* Structure member Description */ 3083 /* ---------------- ----------- */ 3084 "IBM Ultrium Gen 3 LTO", /* .name Display ("pretty") name */ 3085 19, /* .length Length of next item... */ 3086 "IBM ULT3580-TD3", /* .vid Vendor-product ID string */ 3087 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3088 0, /* .bsize Block size (0 = variable) */ 3089 /* .options Drive option flags: */ 3090 ST_VARIABLE | /* 0000001 Supports variable length */ 3091 ST_BSF | /* 0000008 Supports SPACE block fwd */ 3092 ST_BSR | /* 0000010 Supports SPACE block rev */ 3093 ST_KNOWS_EOD | /* 0000200 Recognizes end-of-data */ 3094 ST_UNLOADABLE | /* 0000400 Driver can be unloaded */ 3095 ST_NO_RECSIZE_LIMIT | /* 0008000 Supports blocks > 64KB */ 3096 ST_MODE_SEL_COMP | /* 0010000 [Note 1] */ 3097 ST_KNOWS_MEDIA | /* 0800000 Media detrmines density */ 3098 ST_WORMABLE, /* 1000000 Is WORM capable */ 3099 /* ------- */ 3100 /* 1818619 */ 3101 -1, /* .max_rretries Not used any more. */ 3102 -1, /* .max_wretries Not used any more. */ 3103 {0x40, 0x42, 0x44, 0x44}, /* .densities Density codes [Note 1] */ 3104 MT_DENSITY4, /* .default_density (.densities[x]) */ 3105 {0x18, 0x28, 0x38, 0x38}, /* .mediatype Media type [Note 2] */ 3106 MINUTES(1), /* .non_motion_time */ 3107 MINUTES(18), /* .io_time */ 3108 MINUTES(9), /* .rewind_time */ 3109 MINUTES(165), /* .space_time worst case directory invalid*/ 3110 MINUTES(9), /* .load_time */ 3111 MINUTES(12), /* .unload_time */ 3112 MINUTES(160) /* .erase_time */ 3113 }, 3114 3115 /* 3116 * [1] The IBM Ultrium Gen 2 "OEM" version has two densites at this time, 3117 * One for Gen 1 0x40, One for Gen 2 0x42. In reallity The media 3118 * Selects which density code is used but this documents the codes 3119 * for those who care to know. 3120 * Compression is controlled via the Compression mode page. 3121 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3122 */ 3123 { /* Structure member Description */ 3124 /* ---------------- ----------- */ 3125 "IBM Ultrium Gen 2 LTO", /* .name Display ("pretty") name */ 3126 19, /* .length Length of next item... */ 3127 "IBM ULTRIUM-TD2", /* .vid Vendor-product ID string */ 3128 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3129 0, /* .bsize Block size (0 = variable) */ 3130 /* .options Drive option flags: */ 3131 ST_VARIABLE | /* 00001 Supports variable length */ 3132 ST_BSF | /* 00008 Supports SPACE block fwd */ 3133 ST_BSR | /* 00010 Supports SPACE block rev */ 3134 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3135 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3136 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3137 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3138 /* ----- */ 3139 /* 18619 */ 3140 -1, /* .max_rretries Not used any more. */ 3141 -1, /* .max_wretries Not used any more. */ 3142 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 3143 MT_DENSITY4, /* .default_density (.densities[x]) */ 3144 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3145 MINUTES(1), /* .non_motion_time */ 3146 MINUTES(18), /* .io_time */ 3147 MINUTES(9), /* .rewind_time */ 3148 MINUTES(151), /* .space_time worst case directory invalid*/ 3149 MINUTES(12), /* .load_time */ 3150 MINUTES(11), /* .unload_time */ 3151 MINUTES(151) /* .erase_time */ 3152 }, 3153 3154 /* 3155 * [1] The IBM Ultrium Gen 2 "IBM" version has two densites at this time, 3156 * One for Gen 1 0x40, One for Gen 2 0x42. In reallity The media 3157 * Selects which density code is used but this documents the codes 3158 * for those who care to know. 3159 * Compression is controlled via the Compression mode page. 3160 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3161 */ 3162 { /* Structure member Description */ 3163 /* ---------------- ----------- */ 3164 "IBM Ultrium Gen 2 LTO", /* .name Display ("pretty") name */ 3165 19, /* .length Length of next item... */ 3166 "IBM ULT3580-TD2", /* .vid Vendor-product ID string */ 3167 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3168 0, /* .bsize Block size (0 = variable) */ 3169 /* .options Drive option flags: */ 3170 ST_VARIABLE | /* 00001 Supports variable length */ 3171 ST_BSF | /* 00008 Supports SPACE block fwd */ 3172 ST_BSR | /* 00010 Supports SPACE block rev */ 3173 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3174 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3175 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3176 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3177 /* ----- */ 3178 /* 18619 */ 3179 -1, /* .max_rretries Not used any more. */ 3180 -1, /* .max_wretries Not used any more. */ 3181 {0x40, 0x40, 0x42, 0x42}, /* .densities Density codes [Note 1] */ 3182 MT_DENSITY4, /* .default_density (.densities[x]) */ 3183 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3184 MINUTES(1), /* .non_motion_time */ 3185 MINUTES(18), /* .io_time */ 3186 MINUTES(9), /* .rewind_time */ 3187 MINUTES(151), /* .space_time worst case directory invalid*/ 3188 MINUTES(12), /* .load_time */ 3189 MINUTES(11), /* .unload_time */ 3190 MINUTES(151) /* .erase_time */ 3191 }, 3192 3193 /* 3194 * [1] The IBM Ultrium has only one density at this time, 3195 * Compression is controlled via the Device Configuration mode page. 3196 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3197 */ 3198 { /* Structure member Description */ 3199 /* ---------------- ----------- */ 3200 "IBM Ultrium LTO", /* .name Display ("pretty") name */ 3201 19, /* .length Length of next item... */ 3202 "IBM ULTRIUM-TD1", /* .vid Vendor-product ID string */ 3203 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3204 0, /* .bsize Block size (0 = variable) */ 3205 /* .options Drive option flags: */ 3206 ST_VARIABLE | /* 00001 Supports variable length */ 3207 ST_BSF | /* 00008 Supports SPACE block fwd */ 3208 ST_BSR | /* 00010 Supports SPACE block rev */ 3209 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3210 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3211 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3212 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3213 /* ----- */ 3214 /* 18619 */ 3215 -1, /* .max_rretries Not used any more. */ 3216 -1, /* .max_wretries Not used any more. */ 3217 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 3218 MT_DENSITY4, /* .default_density (.densities[x]) */ 3219 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3220 MINUTES(1), /* .non_motion_time */ 3221 MINUTES(18), /* .io_time */ 3222 MINUTES(8), /* .rewind_time */ 3223 MINUTES(173), /* .space_time worst case directory invalid*/ 3224 MINUTES(11), /* .load_time */ 3225 MINUTES(11), /* .unload_time */ 3226 MINUTES(173) /* .erase_time */ 3227 }, 3228 3229 /* 3230 * This is the same drive as the above except for the inquiry string and 3231 * that it is a "End User Version". 3232 * [1] The IBM Ultrium has only one density at this time, 3233 * Compression is controlled via the Device Configuration mode page. 3234 * [2] The IBM Ultrium has only one speed (if the driver ever cares). 3235 */ 3236 { /* Structure member Description */ 3237 /* ---------------- ----------- */ 3238 "IBM Ultrium LTO", /* .name Display ("pretty") name */ 3239 19, /* .length Length of next item... */ 3240 "IBM ULT3580-TD1", /* .vid Vendor-product ID string */ 3241 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3242 0, /* .bsize Block size (0 = variable) */ 3243 /* .options Drive option flags: */ 3244 ST_VARIABLE | /* 00001 Supports variable length */ 3245 ST_BSF | /* 00008 Supports SPACE block fwd */ 3246 ST_BSR | /* 00010 Supports SPACE block rev */ 3247 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3248 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3249 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3250 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3251 /* ----- */ 3252 /* 18619 */ 3253 -1, /* .max_rretries Not used any more. */ 3254 -1, /* .max_wretries Not used any more. */ 3255 {0x40, 0x40, 0x40, 0x40}, /* .densities Density codes [Note 1] */ 3256 MT_DENSITY4, /* .default_density (.densities[x]) */ 3257 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3258 MINUTES(1), /* .non_motion_time */ 3259 MINUTES(18), /* .io_time */ 3260 MINUTES(8), /* .rewind_time */ 3261 MINUTES(173), /* .space_time worst case directory invalid*/ 3262 MINUTES(11), /* .load_time */ 3263 MINUTES(11), /* .unload_time */ 3264 MINUTES(173) /* .erase_time */ 3265 }, 3266 3267 /* 3268 * [1] The IBM 3592 Cartridge has only one density at this time, 3269 * Compression is controlled via the Device Configuration mode page. 3270 * [2] The IBM 3592 Cartridge has only one speed (if the driver ever cares). 3271 */ 3272 { /* Structure member Description */ 3273 /* ---------------- ----------- */ 3274 "IBM 3592 Cartridge", /* .name Display ("pretty") name */ 3275 13, /* .length Length of next item... */ 3276 "IBM 03592", /* .vid Vendor-product ID string */ 3277 MT_LTO, /* .type Numeric type (cf. mtio.h) */ 3278 0, /* .bsize Block size (0 = variable) */ 3279 /* .options Drive option flags: */ 3280 ST_VARIABLE | /* 00001 Supports variable length */ 3281 ST_BSF | /* 00008 Supports SPACE block fwd */ 3282 ST_BSR | /* 00010 Supports SPACE block rev */ 3283 ST_AUTODEN_OVERRIDE | /* 00040 Autodensity override flag */ 3284 ST_KNOWS_EOD | /* 00200 Recognizes end-of-data */ 3285 ST_UNLOADABLE | /* 00400 Driver can be unloaded */ 3286 ST_NO_RECSIZE_LIMIT | /* 08000 Supports blocks > 64KB */ 3287 ST_MODE_SEL_COMP, /* 10000 [Note 1] */ 3288 /* ----- */ 3289 /* 18659 */ 3290 -1, /* .max_rretries Not used any more. */ 3291 -1, /* .max_wretries Not used any more. */ 3292 {0x51, 0x51, 0x51, 0x51}, /* .densities Density codes [Note 1] */ 3293 MT_DENSITY4, /* .default_density (.densities[x]) */ 3294 {0, 0, 0, 0}, /* .speeds Speed codes [Note 2] */ 3295 MINUTES(1), /* .non_motion_time */ 3296 MINUTES(18), /* .io_time */ 3297 MINUTES(8), /* .rewind_time */ 3298 MINUTES(14), /* .space_time worst case directory invalid*/ 3299 MINUTES(12), /* .load_time */ 3300 MINUTES(12), /* .unload_time */ 3301 MINUTES(235) /* .erase_time */ 3302 }, 3303 3304 /* 3305 * Seagate Hornet NS20 USB Travan 3306 * 3307 * NOTES 3308 * ----- 3309 * o This drive is not OEM'ed or qualified by Sun. 3310 * 3311 * [1] The NS20 Travan uses 0 or the "default" density code. 3312 * [2] The NS20 Travan has only one speed (if the driver ever cares). 3313 * [3] max_rretries and max_wretries are driver anachronisms. 3314 */ 3315 { /* Structure member Description */ 3316 /* ---------------- ----------- */ 3317 "Seagate Hornet NS20 Travan", 3318 /* .name Display ("pretty") name */ 3319 17, /* .length Length of next item... */ 3320 "Seagate STT20000A", /* .vid Vendor-product ID string */ 3321 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 3322 512, /* .bsize Block size (0 = variable) */ 3323 /* .options Drive option flags: */ 3324 ST_QIC | /* 00002 QIC tape device */ 3325 ST_BSF | /* 00008 Supports back SPACE file */ 3326 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 3327 /* ----- */ 3328 /* 0040A */ 3329 400, /* .max_rretries [Note 3] */ 3330 400, /* .max_wretries [Note 3] */ 3331 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 3332 MT_DENSITY1, /* .default_density (.densities[x]) */ 3333 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 3334 }, 3335 3336 3337 /* 3338 * Seagate Hornet Travan 40 3339 * 3340 * NOTES 3341 * ----- 3342 * o This drive is not OEM'ed or qualified by Sun. 3343 * 3344 * [1] The Travan uses 0 or the "default" density code. 3345 * [2] The Travan has only one speed (if the driver ever cares). 3346 * [3] max_rretries and max_wretries are driver anachronisms. 3347 */ 3348 { /* Structure member Description */ 3349 /* ---------------- ----------- */ 3350 "Seagate Hornet Travan 40", 3351 /* .name Display ("pretty") name */ 3352 16, /* .length Length of next item... */ 3353 "Seagate STT3401A", /* .vid Vendor-product ID string */ 3354 MT_ISQIC, /* .type Numeric type (cf. mtio.h) */ 3355 512, /* .bsize Block size (0 = variable) */ 3356 /* .options Drive option flags: */ 3357 ST_QIC | /* 00002 QIC tape device */ 3358 ST_BSF | /* 00008 Supports back SPACE file */ 3359 ST_UNLOADABLE, /* 00400 Driver can be unloaded */ 3360 /* ----- */ 3361 /* 0040A */ 3362 400, /* .max_rretries [Note 3] */ 3363 400, /* .max_wretries [Note 3] */ 3364 {0x00, 0x00, 0x00, 0x00}, /* .densities Density codes [Note 1] */ 3365 MT_DENSITY1, /* .default_density (.densities[x]) */ 3366 {0, 0, 0, 0} /* .speeds Speed codes [Note 2] */ 3367 } 3368 3369 /* END CSTYLED */ 3370 3371 }; 3372 3373 3374 const int st_ndrivetypes = (sizeof (st_drivetypes)/sizeof (st_drivetypes[0])); 3375