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